Cloud Build ti consente di creare trigger per eseguire il build da repository ospitati su Bitbucket Cloud. Puoi eseguire le build in risposta a eventi come push di commit o richieste di unione associati al tuo repository Bitbucket Cloud.
Questa pagina spiega come attivare gli attivatori di compilazione per un'istanza Bitbucket Cloud. Per ulteriori informazioni, consulta Trigger di Cloud Build e Repository Cloud Build.
Prima di iniziare
Segui le istruzioni per connetterti a un host Bitbucket Cloud.-
Enable the Cloud Build and Secret Manager APIs.
Per creare un trigger per un repository Bitbucket Cloud, devi avere una connessione tra Google Cloud e il tuo repository. Per creare una connessione tramite l'app Bitbucket Cloud in Google Cloud, consulta Connettersi a un repository Bitbucket Cloud.
Creare un trigger di Bitbucket Cloud
Questa sezione spiega come creare un attivatore e collegarlo all'installazione di Bitbucket Cloud.
Google Cloud console
Per creare gli attivatori Bitbucket Cloud utilizzando la Google Cloud console, segui questi passaggi:
Apri la pagina Trigger nella Google Cloud console.
Seleziona il tuo Google Cloud progetto e fai clic su Apri.
Fai clic su Crea trigger.
Inserisci le seguenti impostazioni di trigger:
Nome: inserisci 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: inserisci una descrizione per l'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 compilazione su commit di una richiesta di pull.
Origine: configura le informazioni sul tuo repository Bitbucket Cloud:
Servizio di repository: seleziona i repository Cloud Build.
Generare repository: seleziona Developer Connect come origine.
Repository: dall'elenco dei repository disponibili, seleziona il repository.
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 viene eseguita automaticamente dall'attivatore:
Obbligatorio tranne che per proprietari e collaboratori: quando una richiesta di pull viene creata o aggiornata da un proprietario o collaboratore del repository, le build vengono eseguite automaticamente dall'attivatore. Se un collaboratore esterno avvia l'azione, le build vengono eseguite solo dopo che un proprietario o un collaboratore ha commentato
/gcbrun
la richiesta di pull.Obbligatorio: quando una richiesta di pull viene creata o aggiornata da un collaboratore, le build vengono eseguite solo dopo che un proprietario o un collaboratore ha commentato
/gcbrun
la richiesta di pull. Le build vengono eseguite ogni volta che viene apportata una modifica a una richiesta di pull.Non obbligatorio: quando una richiesta di pull 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
per la tua 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 consoleGoogle 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 Bitbucket Cloud.
Interfaccia a riga di comando gcloud
Per creare trigger di Bitbucket Cloud utilizzando i comandi gcloud
, esegui il seguente
comando:
gcloud alpha builds triggers create developer connect
--name=TRIGGER_NAME \
--git-repository-link=projects/PROJECT_ID/locations/REGION/connections/CONNECTION_NAME/gitRepositoryLinks/REPO_NAME \
--branch-pattern=BRANCH_PATTERN # or --tag-pattern=TAG_PATTERN \
--build-config=BUILD_CONFIG_FILE \
--region=REGION \
--service-account=SERVICE-ACCOUNT
Dove:
- TRIGGER_NAME è il nome dell'attivatore.
- PROJECT_ID è il tuo Google Cloud ID progetto.
- REGION è la regione dell'attivatore.
- CONNECTION_NAME è il nome della connessione a Bitbucket Cloud.
- GIT_REPOSITORY_LINK è il link al tuo repository Git.
- BRANCH_PATTERN è il nome del ramo nel repository su cui invocare la compilazione.
- TAG_PATTERN è il nome del tag nel repository su cui eseguire la compilazione.
- BUILD_CONFIG_FILE è il percorso del file di configurazione della compilazione.
- SERVICE-ACCOUNT è l'account di servizio da utilizzare per le operazioni di trigger e build.
API
Per creare un attivatore Bitbucket Cloud con l'API, utilizza il seguente modello JSON:
{
"filename": "cloudbuild.yaml",
"name": "curl-trigger",
"description": "curl trigger",
"bitbucket_server_trigger_config": {
"repo_slug": "REPO_SLUG",
"project_key": "PROJECT_KEY",
"push": {
"branch": "BRANCH_NAME" # "tag": "TAG_NAME"
},
"bitbucket_server_config_resource": "projects/PROJECT_NUMBER/locations/REGION/bitbucketServerConfigs/ID"
"comment_control": "COMMENT_SETTING"
}
}
Dove:
- REPO_SLUG è lo slug del repository Bitbucket Server. Per ulteriori informazioni, consulta la guida di Bitbucket sugli slug dei repository.
- PROJECT_KEY è la chiave del tuo progetto Bitbucket Server. PROJECT_KEY è sensibile alle maiuscole.
- BRANCH_NAME è l'espressione regolare del ramo se vuoi impostare l'attivatore per creare determinati rami.
- TAG_NAME è l'espressione regolare del tag se vuoi impostare l'attivatore per creare determinati tag.
- PROJECT_NUMBER è il numero del progetto Cloud.
- REGION è la regione associata alla configurazione di Bitbucket Server.
- ID è l'ID di BitbucketServerConfig.
- COMMENT_SETTING è l'impostazione che controlla se i trigger di build richiedono
/gcbrun
in un commento per l'esecuzione della build. Per ulteriori informazioni, consulta commentControl.
Inserisci il seguente comando curl
nel terminale:
curl -X POST -H "Authorization: Bearer "$(gcloud auth print-access-token) -H "Content-Type: application/json; charset=utf-8" -H "x-goog-user-project: PROJECT_NUMBER" https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/triggers -d @trigger.json
Dove:
- PROJECT_NUMBER è il numero del tuo Google Cloud progetto.
- PROJECT_ID è il tuo Google Cloud ID progetto.
Condivisione dei dati
I dati inviati a Bitbucket Cloud da Cloud Build ti aiutano a identificare gli attivatori per nome e a visualizzare i risultati di compilazione nei tuoi repository Bitbucket Cloud.
I seguenti dati vengono condivisi tra Cloud Build e l'host Bitbucket Cloud:
- Google Cloud ID progetto
- Nome trigger
Passaggi successivi
- Scopri come creare e gestire gli attivatori.
- Scopri come avviare manualmente le build.
- Scopri come visualizzare i risultati della build.
- Scopri come eseguire deployment blu/verdi su Compute Engine.