Cloud Build utilizza i trigger di build per abilitare l'automazione CI/CD. Puoi configurare i trigger in modo che rilevino gli eventi in arrivo, ad esempio quando viene eseguito il push di un nuovo commit in un repository o quando viene avviata una richiesta di pull, e poi eseguire automaticamente una build quando arrivano nuovi eventi. Puoi anche configurare trigger per creare build dal codice per ogni modifica al repository di codice sorgente o solo in caso di modifiche che soddisfano determinati criteri.
Questa pagina fornisce una panoramica di ogni tipo di trigger e delle funzionalità associate ai trigger.
Trigger evento del repository
Cloud Build ti consente di eseguire automaticamente le build in base agli eventi del repository, ad esempio push o richieste pull. Puoi connettere repository esterni, come repository in GitHub o Bitbucket, a Cloud Build o utilizzare il codice in Cloud Source Repositories per le tue build. Sebbene tu possa connettere qualsiasi repository di origine a Cloud Build, Cloud Build fornisce trigger di eventi del repository specifici che puoi utilizzare per integrare sistemi di gestione del codice sorgente (SCM) specifici. Questa sezione descrive i trigger di eventi del repository disponibili.
Trigger GitHub
Puoi creare trigger GitHub per eseguire automaticamente le build in risposta a eventi del repository, come push o richieste pull. Puoi visualizzare lo stato di build del trigger su GitHub e nella console Google Cloud . Puoi anche utilizzare l'app GitHub di Cloud Build per connettere e creare codice in GitHub. Per saperne di più, vedi Creazione di repository da GitHub.
Trigger di GitHub Enterprise
Puoi creare trigger per i repository ospitati su un'istanza GitHub Enterprise, incluse le istanze ospitate in un ambiente on-premise e non raggiungibili tramite una connessione a internet pubblica. I trigger GitHub Enterprise possono essere utilizzati per eseguire build in risposta a push o richieste di pull da un'istanza GitHub Enterprise. Per saperne di più, consulta Creazione di repository da GitHub Enterprise.
Trigger GitLab Enterprise Edition
Puoi creare trigger per i repository ospitati su un'istanza GitLab Enterprise Edition, incluse le istanze ospitate in una rete privata. I trigger GitLab Enterprise Edition possono essere utilizzati per eseguire build in risposta a push di commit o richieste di pull associate al tuo repository GitLab Enterprise Edition. Per scoprire di più, consulta Creazione di repository da GitLab Enterprise Edition.
Trigger Bitbucket Server
Puoi creare trigger per i repository ospitati su un'istanza Bitbucket Server, incluse le istanze ospitate in un ambiente on-premise. Puoi connettere il tuo repository Bitbucket Server a Cloud Build più volte con più connessioni host. Per scoprire di più su come creare trigger per eseguire build in risposta agli eventi, consulta Creazione di repository da Bitbucket Server.
Trigger Bitbucket Data Center
Puoi creare trigger per i repository ospitati su un'istanza Bitbucket Data Center, incluse le istanze ospitate in un ambiente on-premise. Gli attivatori di Bitbucket Data Center possono essere utilizzati per eseguire build in risposta a eventi come push di commit o richieste di pull. Per scoprire di più, consulta la sezione Creazione di repository da Bitbucket Data Center.
Trigger di Bitbucket Cloud
Puoi creare trigger per i repository ospitati in Bitbucket Cloud. Gli attivatori Bitbucket Cloud possono essere utilizzati per eseguire build in risposta a eventi come push di commit o richieste di pull. Per saperne di più, vedi Creazione di repository da Bitbucket Cloud.
Trigger di Secure Source Manager
Puoi creare trigger per i repository ospitati in Secure Source Manager. I trigger di Secure Source Manager possono essere utilizzati per eseguire build in risposta a eventi come push di commit o richieste di pull. Per saperne di più, vedi Crea un file di trigger in Secure Source Manager.
Trigger manuali
Puoi creare trigger manuali per eseguire le build manualmente e sostituire i valori delle variabili di sostituzione definiti al momento della chiamata prima di eseguire una build. Puoi anche configurare trigger manuali per l'esecuzione in base a una pianificazione. Per saperne di più, consulta Compila manualmente il codice nei repository di origine.
Trigger Pub/Sub
Puoi creare trigger Pub/Sub per eseguire build in risposta a qualsiasi messaggio pubblicato tramite Pub/Sub. Ad esempio, puoi utilizzare
trigger Pub/Sub per la creazione in risposta ai push di immagini su
Artifact Registry. In questo caso, puoi configurare il trigger in modo che utilizzi i filtri per
eseguire una build solo se l'immagine di cui è stato eseguito il push corrisponde a un tag specifico, ad esempio prod.
Inoltre, i trigger Pub/Sub possono essere configurati per abbonarsi a
qualsiasi argomento Pub/Sub. Per saperne di più, consulta Automatizzare le build in risposta agli eventi Pub/Sub.
Trigger webhook
Puoi creare trigger webhook per eseguire build in risposta ai webhook. Gli eventi webhook inviati a un URL personalizzato consentono di connettere direttamente sistemi esterni e sistemi di gestione del codice sorgente (SCM) esterni, come Bitbucket.com, Bitbucket Server o GitLab, a Cloud Build. Quando crei trigger webhook, puoi anche definire la configurazione di compilazione inline nel trigger per controllare quali repository vengono clonati durante il tempo di compilazione anziché specificare esplicitamente un'origine. Per saperne di più, consulta Automatizzare le build in risposta agli eventi webhook. Inoltre, per imparare a utilizzare i trigger webhook per creare repository da SCM specifici, consulta Creazione di repository da Bitbucket Server, Creazione di repository da Bitbucket Cloud e Creazione di repository da GitLab.
Trigger per i repository collegati a Developer Connect
Developer Connect ti consente di collegare prodotti esterni o strumenti per sviluppatori non Google a Google Cloud utilizzando app e passaggi standardizzati. Puoi configurare trigger che eseguono la build dai repository connessi tramite Developer Connect per i seguenti SCM:
- Bitbucket Cloud
- Bitbucket Data Center
- Bitbucket Server
- GitHub
- GitHub Enterprise
- GitLab
- Gitlab Enterprise Edition
Funzionalità di trigger
I trigger di Cloud Build forniscono funzionalità che ti offrono un controllo granulare sulle modalità di esecuzione di una build. Questa sezione illustra varie funzionalità associate ai trigger.
Trigger manuali pianificati
Puoi programmare trigger manuali per eseguire automaticamente le build in base a una pianificazione predefinita. Ad esempio, potresti voler configurare un trigger pianificato per eseguire una build ogni sabato alle 6:00. Per pianificare le build, puoi creare un trigger manuale e richiamarlo utilizzando Cloud Scheduler. Per saperne di più, vedi Pianificare le build.
Filtrare gli eventi
Cloud Build utilizza il
Common Expression Language (CEL) con la
variabile build nei campi elencati nella
risorsa Build per accedere
ai campi associati all'evento di build, come l'ID trigger, l'elenco delle immagini o
i valori di sostituzione. Puoi utilizzare la stringa filter per filtrare gli eventi di build nel file di configurazione della build utilizzando qualsiasi campo elencato nella risorsa Build. Per saperne di più, consulta Utilizzare CEL per filtrare gli eventi di build.
Variabili di sostituzione
Puoi specificare le variabili di sostituzione nel file di configurazione della build per sostituire valori specifici al momento della build. Ad esempio, potresti voler utilizzare variabili di sostituzione se un valore non è noto fino al tempo di compilazione o se vuoi riutilizzare una richiesta di build esistente con variabili diverse. Cloud Build fornisce sostituzioni predefinite che puoi utilizzare per le build richiamate dai trigger, ad esempio variabili che mappano il nome del trigger o il nome del repository. Puoi anche definire le tue variabili di sostituzione. Per scoprire di più, consulta la sezione Sostituzione dei valori delle variabili.
Espansioni di parametri bash
Puoi applicare le espansioni dei parametri bash ai valori delle variabili di sostituzione. Le espansioni dei parametri Bash ti consentono di manipolare le stringhe associate alle variabili esistenti. Ad esempio, puoi utilizzare le espansioni di parametri bash per mettere le lettere in maiuscolo o sostituire una sottostringa. Per scoprire di più, consulta Espansioni dei parametri Bash.
Associazioni di payload
Puoi memorizzare parte del payload dell'evento del trigger come variabile di sostituzione utilizzando i binding del payload. Le variabili associate a un payload sono denominate binding e sono disponibili per le build richiamate da eventi push e pull. Puoi utilizzare i binding per accedere a dati aggiuntivi relativi alla tua build, ad esempio l'autore di una richiesta di pull. Per saperne di più, consulta Associazioni di payload.
Approvazioni
Puoi configurare i trigger in modo che non eseguano immediatamente una build, ma contrassegnino una build come in attesa di approvazione. Se un utente con autorizzazioni approva una build in attesa, la build viene avviata. Se l'approvazione viene negata, la build non viene avviata. Per scoprire come configurare i trigger che richiedono l'approvazione, consulta Build con gate di approvazione.
Creare notifiche di stato
Puoi configurare i notificatori Cloud Build in modo che ascoltino gli aggiornamenti degli eventi di build da Pub/Sub
nell'argomento cloud-builds predefinito o in un argomento definito dall'utente.
I notificatori possono
anche filtrare i messaggi ricevuti dall'argomento e inviarli ai servizi
connessi. Cloud Build fornisce e gestisce immagini di notifica implementabili nel repository
cloud-build-notifiers.
Puoi configurare le notifiche utilizzando un notifier Cloud Build, ad esempio BigQuery, HTTP, Slack o SMTP oppure creare un notifier personalizzato.
Passaggi successivi
- Scopri come creare e gestire i trigger di build.