Cloud Build ti consente di creare trigger per eseguire build dai repository ospitati su GitLab, in modo da poter eseguire le build in risposta a eventi come push di commit o richieste di unione associati al tuo repository GitLab.
Questa pagina spiega come attivare la funzionalità di trigger in un'istanza GitLab. Scopri di più sugli trigger di Cloud Build e sui repository Cloud Build.
Prima di iniziare
-
Enable the Cloud Build and Secret Manager APIs.
- Segui le istruzioni per collegare un host GitLab.
- Segui le istruzioni per collegare un repository GitLab.
Creazione di un trigger GitLab
Console
Per creare un attivatore GitLab utilizzando la console Google Cloud:
Apri la pagina Trigger:
Seleziona il tuo progetto Google Cloud nella parte superiore della pagina e fai clic su Apri.
Fai clic su Crea trigger.
Inserisci le seguenti impostazioni di trigger:
Nome: un nome per l'attivatore.
Regione: seleziona la regione per l'attivatore.
- Se il file di configurazione della build associato all'attivatore specifica un pool privato, Cloud Build utilizza il pool privato per eseguire la build. In questo caso, la regione specificata nell'attivatore deve corrispondere a quella in cui hai creato il pool privato.
- Se il file di configurazione della build associato all'attivatore non specifica un pool privato, Cloud Build utilizza il pool predefinito per eseguire la build nella stessa regione dell'attivatore.
(Facoltativo) Descrizione: una descrizione dell'attivatore.
Evento: seleziona l'evento del repository per richiamare l'attivatore.
Push a un ramo: imposta l'attivatore per avviare una build quando vengono eseguiti commit a un determinato ramo.
Invia nuovo tag: imposta l'attivatore in modo da avviare una build sui commit che contengono un determinato tag.
Richiesta di pull: imposta l'attivatore per avviare una build sui commit di una richiesta di unione.
Origine: seleziona 2ª gen. come origine.
Repository: dall'elenco dei repository disponibili, seleziona quello che ti interessa. Per collegare un nuovo repository, consulta Connettersi a un repository GitLab.
Ramo o Tag: specifica un'espressione regolare con il valore del ramo o del tag da soddisfare. Per informazioni sulla sintassi accettabile delle espressioni regolari, consulta la pagina sulla sintassi RE2.
Controllo dei commenti: se hai selezionato Pull request come Evento, scegli una delle seguenti opzioni per controllare se una build verrà eseguita automaticamente dall'attivatore:
Obbligatorio tranne che per proprietari e collaboratori: quando una richiesta di unione viene creata o aggiornata da un proprietario o collaboratore del repository, le build verranno eseguite automaticamente dall'attivatore. Se un collaboratore esterno avvia l'azione, le build verranno eseguite solo dopo che un proprietario o un collaboratore avrà commentato
/gcbrun
la richiesta di unione.Obbligatorio: quando una richiesta di unione viene creata o aggiornata da qualsiasi collaboratore, le build verranno eseguite solo dopo che un proprietario o un collaboratore avrà commentato
/gcbrun
la richiesta di unione. Le compilazioni vengono eseguite ogni volta che viene apportata una modifica a una richiesta di unione.Non obbligatorio: quando una richiesta di unione viene creata o aggiornata da qualsiasi collaboratore, le build vengono eseguite automaticamente dagli attivatori.
Configurazione: seleziona il file di configurazione della build nel tuo repository o configura la build in linea nell'attivatore.
Tipo: seleziona il tipo di configurazione da utilizzare per la build.
- File di configurazione di Cloud Build (yaml o json): Utilizza un file di configurazione della build per la tua configurazione.
- Dockerfile: utilizza un
Dockerfile
per la configurazione.
Posizione: specifica la posizione della configurazione.
Repository: se il file di configurazione si trova nel repository, fornisci la posizione del file di configurazione della build o della directory
Dockerfile
e un nome per l'immagine risultante. Se la configurazione èDockerfile
, puoi facoltativamente specificare un timeout per la build. Dopo aver fornitoDockerfile
e il nome dell'immagine, vedrai un'anteprima del comandodocker build
che verrà eseguito dalla compilazione.In linea: se hai selezionato File di configurazione di Cloud Build (yaml o json) come opzione di configurazione, puoi specificare la configurazione della build in linea. Fai clic su Apri editor per scrivere il file della configurazione di compilazione nella console Google Cloud utilizzando la sintassi YAML o JSON. Fai clic su Fine per salvare la configurazione della build.
Fai clic su Crea per creare l'attivatore GitLab.
gcloud
Per creare gli attivatori GitLab utilizzando i comandi gcloud
, esegui il seguente
comando:
gcloud builds triggers create gitlab \
--name=TRIGGER_NAME \
--repository=projects/PROJECT_ID/locations/REGION/connections/CONNECTION_NAME/repositories/REPO_NAME \
--branch-pattern=BRANCH_PATTERN # or --tag-pattern=TAG_PATTERN \
--build-config=BUILD_CONFIG_FILE \
--region=REGION
Dove:
- TRIGGER_NAME è il nome dell'attivatore.
- PROJECT_ID è il tuo ID progetto Google Cloud.
- REGION è la regione dell'attivatore.
- CONNECTION_NAME è il nome della connessione GitLab.
- REPO_NAME è il nome del tuo repository
- BRANCH_PATTERN è il nome del ramo nel repository su cui invocare la compilazione.
- TAG_PATTERN è il nome del tag nel repo per invocare la compilazione.
- BUILD_CONFIG_FILE è il percorso del file di configurazione della build.
Condivisione dei dati
I dati inviati a GitLab da Cloud Build ti aiutano a identificare gli trigger per nome e a visualizzare i risultati di compilazione nei tuoi repository GitLab.
I seguenti dati sono attualmente condivisi tra Cloud Build e il tuo host GitLab:
- ID progetto Google Cloud
- Nome trigger
Passaggi successivi
- Scopri come gestire gli attivatori di build.