Verbindung zu einem Bitbucket Data Center-Repository herstellen

Auf dieser Seite wird erläutert, wie Sie eine Verbindung zu einem Bitbucket Data Center-Repository herstellen zu Cloud Build.

Hinweise

  • Enable the Cloud Build, Secret Manager, and Compute Engine APIs.

    Enable the APIs

Verbindung zu einem Bitbucket Data Center-Repository herstellen

Console

Zum Verbinden eines Bitbucket Data Center-Repositorys mit Cloud Build über die Google Cloud Console:

  1. Öffnen Sie in der Cloud Console die Seite Repositories.

    Zur Seite „Repositories“

  2. Wählen Sie oben auf der Seite den Tab 1. Generation aus.

  3. Klicken Sie auf Repository verbinden.

  4. Wählen Sie Bitbucket Data Center aus.

    Der Bereich Repository verbinden wird eingeblendet. Führen Sie die folgenden Schritte aus, um eine Verbindung zu Ihrem Bitbucket-Repositorium im Rechenzentrum herzustellen:

    1. Region: Wählen Sie die Region aus, in der sich Ihre Verbindung befindet.

    2. Wählen Sie unter Anbieter für Quellcodeverwaltung auswählen die Option Bitbucket Data Center aus.

    3. Hostverbindung: Wählen Sie den Namen Ihrer Hostverbindung aus der aus.

    4. Klicken Sie auf Weiter.

    5. Wählen Sie unter Repository auswählen die Bitbucket Data Center-Repositories aus. mit Cloud Build verbinden möchten.

    6. Nachdem Sie Ihr Bitbucket Data Center-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.

    7. Klicken Sie auf Verbinden, um Ihre Repositories zu verbinden.

  5. Klicken Sie auf Fertig. Sie können auch auf Trigger erstellen klicken, um einen Trigger zu erstellen.

API

So verbinden Sie Ihr Bitbucket Data Center-Repository mit Cloud Build: mithilfe der API führen Sie die folgenden Schritte aus:

  1. Erstellen Sie eine package.json-Datei mit folgendem Inhalt:

    {
      "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",
           }
         }
      }
    }
    

    Wobei:

    • PROJECT_NUMBER ist die Projektnummer Ihres Cloud-Projekt
    • REGION ist die Region. die mit Ihrer Bitbucket Data Center-Konfiguration verknüpft sind.
    • BITBUCKET_DATA_CENTER_CONFIG_NAME ist der Name von Ihre Bitbucket Data Center-Konfiguration.
    • PROJECT_KEY ist der Schlüssel Ihrer Bitbucket-Daten Projekt zentrieren. Wenn Sie ein persönliches Repository verbinden möchten, Der Schlüssel sollte eine Tilde (~) vor Ihrem Nutzernamen enthalten. Beispiel: ~${USERNAME}. Die vollständige URL für ein Host-Repository ähnelt https://${HOST_URI}/projects/~${USER_NAME}/repos/${REPO_SLUG}.
    • REPO_SLUG ist der/die/das Slug Ihres Bitbucket Data Center-Repositorys.
  2. Führen Sie den folgenden curl-Befehl in Ihrem Terminal aus demselben Verzeichnis aus als JSON-Datei:

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

Wobei:

  • PROJECT_NUMBER ist Ihr Google Cloud-Projekt Nummer.
  • PROJECT_ID ist Ihre Google Cloud-Projekt-ID.
  • REGION ist die Region. die mit Ihrer Bitbucket Data Center-Konfiguration verknüpft sind.
  • BITBUCKET_DATA_CENTER_CONFIG_NAME ist der Name von Ihre Bitbucket Data Center-Konfiguration. Wenn der Vorgang erfolgreich ist, enthält der Antworttext eine neu erstellte Instanz von Vorgang:
  1. Führen Sie den folgenden curl-Befehl in Ihrem Terminal aus:

    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 Google Cloud-Projekts.
    • PROJECT_ID ist Ihre Google Cloud-ID.
    • REGION ist die Region. die mit Ihrer Bitbucket Data Center-Konfiguration verknüpft sind.
    • OPERATION_ID ist die ID Ihrer Bitbucket-Daten. Vorgang zum Erstellen der Center-Konfiguration. Sie finden die Vorgangs-ID im Feld name der Antwort. Das Format des Felds name in Ihrer Antwort sieht so aus: projects/project-id/locations/region/operations/operation-id.

    Möglicherweise müssen Sie den API-Befehl GetOperation weiterhin ausführen, bis der Die Antwort enthält done: true. Dies zeigt an, dass der Vorgang abgeschlossen. Wenn das Bitbucket Data Center-Repository verbunden ist können Sie das verbundene Repository response.bitbucketServerConnectedRepositories. Andernfalls finden Sie im error für einen detaillierten Fehlerbericht.

Wenn ein Repository verbunden ist, konfiguriert Cloud Build einen Webhook auf das Repository in Ihrer Bitbucket Data Center-Instanz. Das Repository hat dann sendet Webhooks zum Aufrufen der entsprechenden Bitbucket Data Center-Trigger, wenn Änderungen an Ihrem Repository vornehmen. Ein Repository kann auch mit mit mehreren Hostverbindungen vervielfältigen können. Informationen zum Verwalten von Webhooks finden Sie unter Webhooks verwalten.

Sie benötigen die Webhook-ID, um den Webhook zu finden. Die Webhook-ID der einzelnen Verbundenes 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-Daten. Center-Konfiguration
  • REGION ist die Region der Hostverbindung des Bitbucket-Rechenzentrums.

Nächste Schritte