Questa pagina spiega come connettersi a un repository Bitbucket Data Center in Cloud Build.
Prima di iniziare
-
Abilita le API Cloud Build, Secret Manager, and Compute Engine.
- Segui le istruzioni per connettere un host del data center Bitbucket prima di connettere un repository.
Connettiti a un repository del data center Bitbucket
Console
Per connettere un repository di data center Bitbucket a Cloud Build utilizzando la console Google Cloud:
Apri la pagina Repository nella console Google Cloud.
Nella parte superiore della pagina, seleziona la scheda 1a gen..
Fai clic su Connetti repository.
Seleziona Bitbucket Data Center.
Verrà visualizzato il riquadro Connect Repository (Connetti repository). Completa le seguenti informazioni passaggi per connettere il repository del data center Bitbucket:
Regione: seleziona la regione in cui si trova la connessione.
In Seleziona provider per la gestione del codice sorgente, seleziona Bitbucket data center.
Host connection (Connessione host): seleziona il nome della connessione host dal menu a discesa.
Fai clic su Continua.
In Seleziona repository, seleziona i repository Bitbucket Data Center che vuoi connettere a Cloud Build.
Dopo aver selezionato l'account e i repository Bitbucket Data Center, leggi la limitazione di responsabilità per il consenso e seleziona la casella di controllo accanto per indicare che accetti i termini presentati.
Fai clic su Connetti per connettere i tuoi repository.
Fai clic su Fine. Facoltativamente, fai clic su Crea un trigger per creare un trigger.
API
Per connettere il repository del data center Bitbucket a Cloud Build utilizzando l'API, completa i seguenti passaggi:
Crea un file JSON con il seguente contenuto:
{ "parent": "projects/PROJECT_NUMBER/locations/REGION/bitbucketServerConfigs/BITBUCKET_DATA_CENTER_CONFIG_NAME", "requests": { "parent": "projects/PROJECT_NUMBER/locations/REGION/bitbucketServerConfigs/BITBUCKET_DATA_CENTER_CONFIG_NAME", "bitbucketServerConnectedRepository": { "parent": "projects/PROJECT_NUMBER/locations/REGION/bitbucketServerConfigs/BITBUCKET_DATA_CENTER_CONFIG_NAME", "repo": { "projectKey":"PROJECT_KEY", "repoSlug": "REPO_SLUG", } } } }
Dove:
- PROJECT_NUMBER è il numero di progetto progetto cloud.
- REGION è la regione associati alla configurazione del data center Bitbucket.
- BITBUCKET_DATA_CENTER_CONFIG_NAME è il nome di la configurazione del data center Bitbucket.
- PROJECT_KEY è la chiave dei tuoi dati Bitbucket
progetto Center. Se vuoi connettere un repository personale, il progetto
deve contenere la tilde (
~
) prima del nome utente. Ad esempio,~${USERNAME}
. L'URL completo per un repository host è simile ahttps://${HOST_URI}/projects/~${USER_NAME}/repos/${REPO_SLUG}
. - REPO_SLUG è il slug del repository del data center Bitbucket.
Esegui questo comando
curl
nel terminale dalla stessa directory come file JSON:
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/locations/REGION/bitbucketServerConfigs/BITBUCKET_DATA_CENTER_CONFIG_NAME/connectedRepositories:batchCreate -d @requests.json
Dove:
- PROJECT_NUMBER è il tuo progetto Google Cloud numero.
- PROJECT_ID è il tuo ID progetto Google Cloud.
- REGION è la regione associati alla configurazione del data center Bitbucket.
- BITBUCKET_DATA_CENTER_CONFIG_NAME è il nome di la configurazione del data center Bitbucket. In caso di esito positivo, il corpo della risposta contiene un'istanza del Operazione.
Esegui questo comando
curl
nel tuo terminale:curl -X GET -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/locations/REGION/operations/OPERATION_ID
Dove:
- PROJECT_NUMBER è il tuo progetto Google Cloud numero.
- PROJECT_ID è il tuo ID Google Cloud.
- REGION è la regione associati alla configurazione del data center Bitbucket.
- OPERATION_ID è l'ID dei tuoi dati Bitbucket
Operazione di creazione della configurazione del centro. Puoi trovare l'ID operazione
nel campo
name
della risposta. Il formato del camponame
in la tua risposta è simile alla seguente:projects/project-id/locations/region/operations/operation-id
.
Potresti dover continuare a eseguire il comando API
GetOperation
fino al la risposta contienedone: true
, che indica che l'operazione completata. Se il repository del data center Bitbucket è connesso correttamente, puoi vedere il repository connesso camporesponse.bitbucketServerConnectedRepositories
. In caso contrario, consulta Campoerror
per un report dettagliato sugli errori.
Quando un repository è connesso, Cloud Build configura un webhook il repository nella tua istanza di data center Bitbucket. Il repository quindi invia webhook per richiamare i trigger del data center Bitbucket corrispondenti quando modifiche al repository. Un repository può essere connesso anche più volte con più connessioni host. Per scoprire come gestire per i webhook, consulta Gestire i webhook.
Per individuare il webhook, ti serve l'ID webhook. L'ID webhook per ogni
disponibile in BitbucketServerConfig
.
Inserisci il comando seguente per recuperare l'ID webhook:
gcloud alpha builds enterprise-config bitbucketserver describe CONFIG_NAME --region=REGION
Dove:
- CONFIG_NAME è il nome dei dati Bitbucket Centro configurazione
- REGION è la regione dei dati Bitbucket Connessione host al centro
Passaggi successivi
- Scopri come creare repository da Bitbucket Data Center.
- Scopri come creare repository dal data center Bitbucket in una rete privata.
- Scopri come eseguire deployment blu/verde su Compute Engine.