View a markdown version of this page

Connessione GitLab - AWS DevOps Agente

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Connessione GitLab

GitLab l'integrazione consente all' AWS DevOps agente di monitorare le implementazioni da GitLab Pipelines per individuare le cause causali durante la risposta agli incidenti. Questa integrazione segue un processo in due fasi: registrazione a livello di account GitLab, seguita dal collegamento di progetti specifici ai singoli Agent Spaces.

Registrazione GitLab (a livello di account)

GitLab è registrata a livello di AWS account e condivisa tra tutti gli Agent Spaces di quell'account. Ogni registrazione è collegata a un GitLab utente o a un GitLab gruppo.

Passaggio 1: accedi ai fornitori di pipeline

  1. Accedi alla console di AWS gestione

  2. Accedere alla console AWS DevOps dell'agente

  3. Vai alla pagina Capability Providers (accessibile dalla barra di navigazione laterale)

  4. Cerca GitLab nella sezione Fornitori disponibili in Pipeline e scegli Registra

Passaggio 2: configura GitLab la connessione

Nella pagina GitLab di registrazione, configura quanto segue:

Tipo di connessione: seleziona se ti stai connettendo come persona o come gruppo:

  • Personale (impostazione predefinita): il tuo account GitLab utente individuale con nome utente e profilo

  • Gruppo: in GitLab, si utilizzano i gruppi per gestire uno o più progetti correlati contemporaneamente

GitLab tipo di istanza: scegli il tipo di GitLab istanza a cui connetterti:

  • GitLab.com(impostazione predefinita) — Il GitLab servizio pubblico

  • GitLab Self-Managed— Seleziona la casella Usa endpoint GitLab self-hosted e fornisci l'URL della tua istanza GitLab

Connettività privata per GitLab Self-Managed

Connessione all'endpoint utilizzando una connessione privata: se l' GitLab Self-Managed istanza non è raggiungibile tramite Internet pubblico, seleziona questa opzione per consentire all' AWS DevOps agente di raggiungerla tramite una connessione privata al tuo VPC. Crea la connessione privata prima di registrarti GitLab, quindi seleziona qui la connessione esistente. Per ulteriori informazioni, consulta Connessione a strumenti ospitati privatamente.

Token di accesso: fornisci un token di accesso GitLab personale:

  1. In una scheda separata del browser, accedi al tuo GitLab account

  2. Accedi alle impostazioni utente e seleziona Access Tokens

  3. Crea un nuovo token di accesso personale con le seguenti autorizzazioni:

    • read_repository— Necessario per accedere ai contenuti del repository

    • read_virtual_registry— Necessario per accedere alle informazioni del registro virtuale

    • read_registry— Necessario per accedere alle informazioni del registro

    • api— Necessario per l'accesso alle API in lettura e scrittura

    • self_rotate- Necessario per la rotazione dei token. Questa funzionalità non è attualmente supportata da AWS DevOps Agent ma verrà supportata in un secondo momento. L'aggiunta ora evita la necessità di creare un nuovo token in futuro.

  4. Imposta la scadenza del token su un massimo di 365 giorni dalla data corrente

  5. Copia il token generato

  6. Tornare alla console AWS DevOps dell'agente

  7. Incolla il token nel campo «Token di accesso»

Fase 3: Completa la registrazione

Tag (Facoltativo): aggiungi AWS tag alla GitLab registrazione per scopi organizzativi.

Scegli Avanti per rivedere la configurazione, quindi scegli Invia per completare il processo GitLab di registrazione. Il sistema convaliderà il token di accesso e stabilirà la connessione.

Connettere i progetti a un Agent Space

Dopo la registrazione GitLab a livello di account, puoi connettere progetti specifici a singoli Agent Spaces:

  1. Nella console dell' AWS DevOps agente, seleziona il tuo Agent Space

  2. Vai alla scheda Funzionalità

  3. Nella sezione Pipeline, scegli Aggiungi

  4. Seleziona GitLab dall'elenco dei fornitori disponibili

  5. Seleziona la GitLab registrazione che contiene i progetti che desideri utilizzare

  6. Seleziona i GitLab progetti pertinenti al tuo Agent Space

  7. Seleziona Salva

AWS DevOps L'agente monitora questi progetti per le implementazioni da GitLab Pipelines per fornire informazioni sulle indagini causali. Un singolo Agent Space può utilizzare progetti provenienti da più registrazioni. Per aggiungere progetti da un'altra registrazione, ripeti questi passaggi.

Configurazione della revisione del codice e dei test automatici

Quando si selezionano i progetti nella fase di GitLab connessione, questi vengono aggiunti automaticamente alla sezione Code Review and Automated Testing. Questa sezione configura quali progetti attivano automaticamente Revisioni del codice di disponibilità al rilascio e le funzionalità di test automatizzate.

La configurazione Code Review and Automated Testing include:

  • Funzionalità: scegli le funzionalità di revisione del codice e test automatici per ogni progetto. La sezione fornisce due impostazioni per progetto:

    • Revisione automatica delle modifiche: se abilitata per un progetto, DevOps l'agente esegue automaticamente una richiesta di unione Revisioni del codice di disponibilità al rilascio ogni volta che viene aperta o aggiornata una richiesta di unione. I risultati della revisione vengono visualizzati come commenti in linea sulla richiesta di unione. Questa opzione è abilitata per impostazione predefinita per tutti i progetti connessi.

    • Test di verifica automatizzato: se abilitato per un progetto, DevOps l'agente crea, esegue e verifica le modifiche al codice in un ambiente di verifica gestito durante le revisioni del codice. Ciò fornisce una convalida funzionale che va oltre l'analisi statica. Per ulteriori informazioni, vedere Test di verifica automatizzati. Questa opzione è abilitata per impostazione predefinita per tutti i progetti connessi.

  • Elenco progetti: mostra tutti i progetti selezionati durante la fase di connessione. Usa il campo di ricerca per filtrare i progetti per nome. Ogni progetto ha caselle di controllo indipendenti per entrambe le funzionalità.

  • Ruolo di runtime (opzionale): scegli il ruolo IAM che DevOps l'agente assume per eseguire funzionalità automatizzate sui progetti selezionati. Questo ruolo viene utilizzato per accedere ai servizi interni necessari durante le build, come i registri privati dei pacchetti e i sistemi di archiviazione degli artefatti. Ti consigliamo di utilizzare un ruolo diverso da quello di agente principale.

Per configurare le revisioni automatiche:

  1. Dopo aver collegato i tuoi progetti, vai alla sezione Code Review and Automated Testing nelle impostazioni di GitLab integrazione.

  2. Per ogni progetto, abilita o disabilita la funzionalità Auto Trigger Change Review a seconda che desideri la revisione automatica delle richieste di unione.

  3. Per ogni progetto, abilita o disabilita la funzionalità di test di verifica automatizzata a seconda che tu desideri eseguire test di verifica automatizzati in un ambiente di verifica gestito.

  4. Facoltativamente, seleziona un ruolo IAM dal menu a discesa del ruolo Runtime che l' DevOps agente assumerà durante l'esecuzione delle funzionalità automatiche sui progetti selezionati.

  5. Scegli Salva per applicare la tua configurazione.

Una volta configurata, qualsiasi nuova richiesta di unione in un progetto con Auto Trigger Change Review abilitata attiverà automaticamente una revisione del codice di preparazione alla versione. Se è abilitato anche il test di verifica automatizzato, la revisione include la convalida funzionale in un ambiente di verifica. Per ulteriori informazioni sulle revisioni del codice, consultaRevisioni del codice di disponibilità al rilascio.

Impostazioni avanzate: filtri di attivazione

Per impostazione predefinita, un progetto con Auto Trigger Change Review abilitata esegue una revisione del codice di disponibilità al rilascio su ogni evento di richiesta di unione applicabile, su qualsiasi filiale di destinazione. Utilizza le impostazioni avanzate per aggiungere filtri di attivazione che controllano esattamente quando vengono eseguite le revisioni automatiche per ogni progetto.

Ogni filtro è un gruppo di filtri che combina due condizioni:

  • Rami di destinazione (obbligatorio): uno o più nomi o modelli di ramo, immessi come espressioni regolari (ad esempio, main orelease/.*). La revisione si attiva solo quando il ramo di destinazione della richiesta di unione corrisponde a uno di questi modelli.

  • Eventi di attivazione (opzionale): gli eventi della richiesta di unione che attivano una revisione: richiesta di unione pronta per la revisione o Richiesta di unione redatta. Lascia questo campo vuoto in modo che corrisponda a tutti gli eventi applicabili.

All'interno di un gruppo di filtri, tutte le condizioni devono corrispondere (AND). Puoi aggiungere più gruppi di filtri e una revisione si attiva quando un gruppo corrisponde (OR).

Per configurare i filtri di attivazione:

  1. Apri la sezione Impostazioni avanzate nel flusso di connessione. (Per modificare i filtri su una connessione esistente, seleziona la connessione nella sezione Pipeline, scegli Modifica e quindi apri Impostazioni avanzate.)

  2. Trova il progetto che desideri configurare e seleziona la scheda Modifica revisione.

  3. Scegli Aggiungi gruppo di filtri, quindi definisci le condizioni del gruppo:

    • In Target branch, inserisci il nome o lo schema di un ramo e premi Invio o scegli Aggiungi. Ripeti l'operazione per aggiungere altri motivi.

    • (Facoltativo) In Trigger events, seleziona Richiesta di unione pronta per la revisione, Richiesta di unione redatta o entrambe. Lascialo vuoto in modo che corrisponda a tutti gli eventi.

  4. (Facoltativo) Scegli nuovamente Aggiungi gruppo di filtri per esprimere condizioni alternative.

  5. Scegli Salva per applicare la configurazione.

Puoi definire fino a 5 gruppi di filtri per progetto, con un massimo di 20 modelli per gruppo. Ogni pattern deve essere un'espressione regolare valida composta da un massimo di 256 caratteri. Se non aggiungi alcun gruppo di filtri, le revisioni si attivano su tutti gli eventi applicabili per tutte le filiali target.

Risoluzione dei problemi

Per gli errori DNS, di raggiungibilità della rete, dei gruppi di sicurezza o TLS quando si utilizza GitLab Self-Managed con una connessione privata, consulta. Risoluzione dei problemi relativi alle connessioni private

Alcuni progetti non compaiono nell'elenco dei progetti

Sintomo

Puoi registrarti GitLab correttamente, ma uno o più progetti che prevedi di connettere non vengono visualizzati nell'elenco dei progetti.

Causa

Per una connessione personale, AWS DevOps l'agente elenca i progetti in cui l'utente del token di accesso è membro. Un progetto non viene visualizzato se l'utente non è un membro, anche se l'utente può visualizzare il progetto tramite un altro percorso di GitLab accesso.

Resolution (Risoluzione)

  • Conferma che l'utente del token di accesso sia membro di ogni progetto a cui desideri connettere.

  • Verifica che il token non sia scaduto e includa gli ambiti elencati nella Fase 2: Configurazione GitLab della connessione.

  • Dopo aver modificato l'appartenenza al progetto o sostituito il token, aggiorna l'elenco dei progetti.

Un GitLab progetto non può essere collegato

Sintomo

La connessione di un progetto non riesce con GitLab project '<path>' (ID: <id>) is not accessible to this GitLab token. o GitLab is currently throttling requests (HTTP 429). Please retry the association later.

Causa

Il token non è in grado di leggere il progetto selezionato o GitLab limita temporaneamente le richieste di convalida del progetto.

Resolution (Risoluzione)

  • Verifica che il token sia valido e che il relativo utente o gruppo possa accedere al progetto selezionato.

  • Verifica che il token includa gli ambiti richiesti dalla Fase 2: Configurazione della GitLab connessione.

  • Se GitLab restituisce HTTP 429, attendi e riprova l'associazione.

Gestione delle connessioni GitLab

  • Aggiornamento del token di accesso: se il token di accesso scade o deve essere aggiornato, puoi ruotarlo senza annullare la registrazione. Nella pagina Capability Providers, seleziona la tua GitLab registrazione, scegli Aggiorna dal menu Azioni e inserisci il nuovo token. Le associazioni e le connessioni al progetto di Agent Space vengono mantenute.

  • Visualizzazione dei progetti connessi: nella console dell' AWS DevOps Agent, seleziona il tuo Agent Space e vai alla scheda Capacità per visualizzare i progetti connessi nella sezione Pipeline.

  • Rimozione della GitLab connessione: per disconnettere GitLab i progetti da un Agent Space, seleziona la connessione nella sezione Pipeline e scegli Rimuovi. Per rimuovere completamente la GitLab registrazione, rimuovila prima da tutti gli Agent Spaces, quindi elimina la registrazione a livello di account.