Auf dieser Seite wird beschrieben, wie Sie eine Verbindung zu einem Bitbucket Server-Repository mit Cloud Build herstellen.
Hinweise
-
Enable the Cloud Build, Secret Manager, and Compute Engine APIs.
- Folgen Sie der Anleitung zum Verbinden eines Bitbucket-Server-Hosts, bevor Sie Repositories verbinden.
Verbindung zu einem Bitbucket Server-Repository herstellen
Console
So verbinden Sie ein Bitbucket Server-Repository mit Cloud Build: über die Google Cloud Console:
Öffnen Sie in der Cloud Console die Seite Repositories.
Wähle oben auf der Seite den Tab 1. Generation aus.
Klicken Sie auf Repository verbinden.
Wählen Sie Bitbucket Server aus.
Das Feld Repository verbinden wird angezeigt. Führen Sie die folgenden Schritte aus, um eine Verbindung zu Ihrem Bitbucket Server-Repository herzustellen:
Region: Wählen Sie eine Region aus, in der sich die Verbindung befindet.
Wählen Sie unter Anbieter von Quellcodeverwaltung auswählen die Option Bitbucket Server aus.
Hostverbindung: Wählen Sie im Drop-down-Menü den Namen Ihrer Hostverbindung aus.
Klicken Sie auf Weiter.
Wählen Sie unter Repository auswählen die Bitbucket Server-Repositories aus, die Sie mit Cloud Build verbinden möchten.
Nachdem Sie Ihr Bitbucket Server-Konto und Ihre Repositories ausgewählt haben, den Haftungsausschluss zur Einwilligung lesen und das Kästchen daneben anklicken, dass Sie die auf dieser Seite präsentierten Nutzungsbedingungen akzeptieren.
Klicken Sie auf Verbinden, um Ihre Repositories zu verbinden.
Wenn ein Repository verbunden ist, Konfiguriert einen Webhook für das Repository in Ihrer Bitbucket Server-Instanz. Das Repository sendet dann Webhooks zum Aufrufen der dass der entsprechende Bitbucket Server ausgelöst wird, Änderungen an Ihrem Repository vornehmen. Ein Repository kann auch mehrmals mit mehreren Hostverbindungen verbunden werden. Informationen zum Verwalten von Webhooks finden Sie unter Webhooks verwalten.
Um den Webhook zu finden, benötigen Sie die Webhook-ID. Die Webhook-ID für jedes verbundene Repository finden Sie in der
BitbucketServerConfig
.Geben Sie den folgenden Befehl ein, um die Webhook-ID abzurufen:
gcloud alpha builds enterprise-config bitbucketserver describe CONFIG_NAME --region=REGION
Wobei:
- CONFIG_NAME ist der Name der Bitbucket-Serverkonfiguration.
- REGION ist die Region der Bitbucket Server-Hostverbindung
Klicken Sie auf Fertig. Klicken Sie optional auf Trigger erstellen, um einen Trigger zu erstellen.
API
So verbinden Sie Ihr Bitbucket Server-Repository mit Cloud Build: mithilfe der API führen Sie die folgenden Schritte aus:
Verwenden Sie die folgende JSON-Vorlage, um eine Verbindung zu Ihrem Repository herzustellen:
{ "parent": "projects/PROJECT_NUMBER/locations/REGION/bitbucketServerConfigs/BITBUCKET_SERVER_CONFIG_NAME", "requests": { "parent": "projects/PROJECT_NUMBER/locations/REGION/bitbucketServerConfigs/BITBUCKET_SERVER_CONFIG_NAME", "bitbucketServerConnectedRepository": { "parent": "projects/PROJECT_NUMBER/locations/REGION/bitbucketServerConfigs/BITBUCKET_SERVER_CONFIG_NAME", "repo": { "projectKey": "PROJECT_KEY", "repoSlug": "REPO_SLUG" } } } }
Wobei:
- PROJECT_NUMBER ist die Projektnummer Ihres Cloud-Projekts.
- REGION ist die Region, die mit Ihrer Bitbucket Server-Konfiguration verknüpft ist.
- BITBUCKET_SERVER_CONFIG_NAME ist der Name Ihres Bitbucket-Serverkonfiguration.
- PROJECT_KEY ist der Schlüssel Ihres Bitbucket Server-Projekts.
Wenn Sie ein persönliches Repository verbinden möchten, sollte Ihr Projektschlüssel
die Tilde (
~
) vor Ihrem Nutzernamen enthalten. Beispiel:~${USERNAME}
. Die vollständige URL für ein Host-Repository könnte folgendermaßen aussehen:https://${HOST_URI}/projects/~${USER_NAME}/repos/${REPO_SLUG}
- REPO_SLUG ist der Slug Ihres Bitbucket Server-Repositories.
Geben Sie den folgenden
curl
-Befehl in Ihr Terminal ein: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_SERVER_CONFIG_NAME/connectedRepositories:batchCreate -d @requests.json
Wobei:
- PROJECT_NUMBER ist die Nummer Ihres Cloud-Projekts.
- PROJECT_ID ist die ID Ihres Cloud-Projekts.
- REGION ist die Region, die Ihrer Bitbucket-Serverkonfiguration zugeordnet ist.
- BITBUCKET_SERVER_CONFIG_NAME ist der Name Ihrer Bitbucket Server-Konfiguration.
Bei erfolgreicher Ausführung enthält der Antworttext eine neu erstellte Operation-Instanz.
Geben Sie den folgenden
curl
-Befehl in Ihr Terminal ein: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
Wobei:
- PROJECT_NUMBER ist die Nummer Ihres Cloud-Projekts.
- PROJECT_ID ist die ID Ihres Cloud-Projekts.
- REGION ist die Region, die mit Ihrer Bitbucket Server-Konfiguration verknüpft ist.
- OPERATION_ID ist die ID des Vorgangs zum Erstellen der Bitbucket Server-Konfiguration.
Die Vorgangs-ID finden Sie im Feld
name
Ihrer Antwort. Das Format des Feldsname
in Ihrer Antwort sieht so aus:projects/project-id/locations/region/operations/operation-id
.
Möglicherweise müssen Sie den
GetOperation
API-Befehl so lange ausführen, bis die Antwortdone: true
enthält, was bedeutet, dass der Vorgang abgeschlossen ist. Wenn die Verbindung zum Bitbucket-Server-Repository hergestellt wurde, wird das verbundene Repository im Feldresponse.bitbucketServerConnectedRepositories
angezeigt. Andernfalls finden Sie im Felderror
einen detaillierten Fehlerbericht.
Nächste Schritte
- Repositories über Bitbucket Server erstellen
- Repositories aus Bitbucket Server in einem privaten Netzwerk erstellen
- Weitere Informationen zu Blau/Grün-Bereitstellungen in der Compute Engine