Repositories aus Bitbucket-Rechenzentrum erstellen

Mit Cloud Build können Sie Trigger erstellen, um Builds aus Repositories auszuführen, die in Bitbucket Data Center gehostet werden. So können Sie Builds als Reaktion auf Ereignisse wie Commit-Pushes oder Pull-Anfragen ausführen, die mit Ihrem Bitbucket Data Center-Repository verknüpft sind.

Auf dieser Seite wird erläutert, wie Sie die Triggerfunktion in einer Bitbucket Data Center-Instanz aktivieren.

Hinweise

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

    Enable the APIs

Bitbucket-Rechenzentrumstrigger erstellen

In diesem Abschnitt wird erläutert, wie Sie Ihre Bitbucket Data Center-Repositories mit Cloud Build verbinden und einen Trigger erstellen, um Builds in Ihren verbundenen Repositories automatisch aufzurufen. Wenn Sie Bitbucket Data Center-Trigger in einem privaten Netzwerk verwenden möchten, finden Sie weitere Informationen unter Repositories aus Bitbucket Data Center in einem privaten Netzwerk erstellen.

Console

So erstellen Sie einen Bitbucket-Rechenzentrumstrigger über die Google Cloud -Konsole:

  1. Seite "Trigger" aufrufen

    Seite "Trigger" aufrufen

  2. Wählen Sie das Projekt oben auf der Seite aus und klicken Sie auf Öffnen.

  3. Klicken Sie auf Trigger erstellen.

  4. Geben Sie die folgenden Triggereinstellungen ein:

    • Name: Ein Name für Ihren Trigger

    • Region: Wählen Sie die Region für den Trigger aus.

      • Wenn Sie global als Region auswählen, verwendet Cloud Build den Standardpool, um Ihren Build auszuführen.
      • Wenn Sie eine nicht globale Region auswählen und in der mit dem Trigger verknüpften Build-Konfigurationsdatei ein privater Pool angegeben ist, verwendet Cloud Build den privaten Pool, um den Build auszuführen. In diesem Fall muss die Region, die Sie in Ihrem Trigger angeben, mit der Region übereinstimmen, in der Sie Ihren privaten Pool erstellt haben.
      • Wenn Sie eine nicht globale Region auswählen und in der mit dem Trigger verknüpften Build-Konfigurationsdatei kein privater Pool angegeben ist, verwendet Cloud Build den Standardpool, um den Build in derselben Region wie der Trigger auszuführen.
    • Beschreibung Optional: Eine Beschreibung für Ihren Trigger.

    • Ereignis: Wählen Sie das Repository-Ereignis aus, das den Trigger auslösen soll.

      • Push zu Zweig: Legen Sie den Trigger so fest, dass ein Build für Commits zu einem bestimmten Zweig gestartet wird.

      • Neues Tag mit Push übertragen: Legen Sie den Trigger so fest, dass ein Build für Commits gestartet wird, die ein bestimmtes Tag enthalten.

      • Pull-Anfrage: Legen Sie den Trigger so fest, dass ein Build für Commits zu einer Pull-Anfrage gestartet wird.

    • Quelle: Wählen Sie 1. Generation als Quelle aus.

      • Repository: Wählen Sie aus der Liste der verfügbaren Repositories ein Repository aus. Informationen zum Verbinden eines neuen Repositories finden Sie unter Verbindung zu einem Bitbucket Data Center-Repository herstellen.

      • Zweig oder Tag: Geben Sie einen regulären Ausdruck mit dem abzugleichenden Zweig- oder Tag-Wert an.

      • Kommentarsteuerung: Wenn Sie Pull-Anfrage als Ereignis ausgewählt haben, wählen Sie eine der folgenden Optionen aus, um zu kontrollieren, ob ein Build automatisch vom Trigger ausgeführt wird:

      • Erforderlich, außer für Inhaber und Mitbearbeiter: Wenn eine Pull-Anfrage von einem Repository-Inhaber oder Mitbearbeiter erstellt oder aktualisiert wird, werden Builds automatisch vom Trigger ausgeführt. Wenn ein externer Mitwirkender die Aktion initiiert, werden Builds nur ausgeführt, nachdem ein Inhaber oder Mitbearbeiter /gcbrun zur Pull-Anfrage kommentiert hat.

      • Erforderlich: Wenn eine Pull-Anfrage von einem Mitwirkenden erstellt oder aktualisiert wird, werden Builds erst ausgeführt, nachdem ein Inhaber oder Mitbearbeiter /gcbrun zu der Pull-Anfrage kommentiert hat. Builds werden jedes Mal ausgeführt, wenn eine Änderung an einem Pull-Request vorgenommen wird.

      • Nicht erforderlich: Wenn eine Pull-Anfrage von einem Mitwirkenden erstellt oder aktualisiert wird, werden Builds automatisch durch Trigger ausgeführt.

    • Konfiguration: Wählen Sie die Build-Konfigurationsdatei aus, die sich in Ihrem Repository befindet, oder konfigurieren Sie den Build inline im Trigger.

    • Typ: Wählen Sie den Konfigurationstyp aus, der für Ihren Build verwendet werden soll.

      • Cloud Build-Konfigurationsdatei (YAML oder JSON): Verwenden Sie eine Build-Konfigurationsdatei für Ihre Konfiguration.
      • Dockerfile: Verwenden Sie für Ihre Konfiguration eine Dockerfile.
    • Speicherort: Geben Sie den Speicherort für Ihre Konfiguration an.

      • Repository: Wenn sich die Konfigurationsdatei in Ihrem Repository befindet, geben Sie den Speicherort Ihrer Build-Konfigurationsdatei oder des Dockerfile-Verzeichnisses und einen Namen für das resultierende Image an. Wenn Ihre Konfiguration eine Dockerfile ist, können Sie optional ein Zeitlimit für Ihren Build angeben. Wenn Sie Dockerfile und den Image-Namen angegeben haben, sehen Sie eine Vorschau des Befehls docker build, den Ihr Build ausführen wird.

      • Inline: Wenn Sie die Cloud Build-Konfigurationsdatei (YAML oder JSON) als Konfigurationsoption ausgewählt haben, können Sie die Build-Konfiguration inline angeben. Klicken Sie auf Editor öffnen, um Ihre Build-Konfigurationsdatei in derGoogle Cloud -Konsole in der YAML- oder JSON-Syntax zu schreiben. Klicken Sie auf Fertig, um die Build-Konfiguration zu speichern.

  5. Klicken Sie auf Erstellen, um den Bitbucket Data Center-Trigger zu erstellen.

gcloud

Wenn Sie einen Bitbucket Data Center-Trigger mit gcloud-Befehlen erstellen möchten, müssen Sie den folgenden gcloud builds triggers create bitbucketserver-Befehl in Ihrem Terminal ausführen:

gcloud builds triggers create bitbucketserver
--name=TRIGGER_NAME \
--project-key=PROJECT_KEY \
--repo-slug=REPO_SLUG \
--bitbucket-server-config-resource=projects/PROJECT_NUMBER/locations/REGION/bitbucketServerConfigs/ID \
--branch-pattern=BRANCH_NAME \ # --tag-pattern=TAG_NAME
--build-config=BUILD_CONFIG

Wobei:

  • TRIGGER_NAME ist der Name des Triggers.
  • PROJECT_KEY ist der Schlüssel Ihres Bitbucket-Rechenzentrumsprojekts.
  • REPO_SLUG ist der Slug Ihres Bitbucket-Rechenzentrums-Repositorys.
  • PROJECT_NUMBER ist die Projektnummer IhresGoogle Cloud -Projekts.
  • REGION ist die Region, die mit Ihrer Bitbucket-Rechenzentrumskonfiguration verknüpft ist.
  • ID ist die ID Ihrer BitbucketServerConfig.
  • BRANCH_NAME ist ein regulärer Ausdruck, der mit Ihrem Branch übereinstimmt, wenn Sie den Trigger so einstellen möchten, dass bestimmte Branches erstellt werden.
  • TAG_NAME ist ein regulärer Ausdruck, der mit Ihrem Tag übereinstimmt, wenn Sie den Trigger so einrichten möchten, dass bestimmte Tags erstellt werden.
  • BUILD_CONFIG ist der Pfad zu Ihrer Build-Konfigurationsdatei.

API

Verwenden Sie die folgende JSON-Vorlage, um einen Bitbucket Data Center-Trigger mit der API zu erstellen.

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

Wobei:

  • REPO_SLUG ist der Slug Ihres Bitbucket-Rechenzentrum-Repositorys.
  • PROJECT_KEY ist der Schlüssel Ihres Bitbucket-Rechenzentrumsprojekts.
  • BRANCH_NAME ist der reguläre Ausdruck, der mit Ihrem Branch übereinstimmt, wenn Sie den Trigger so einrichten möchten, dass bestimmte Branches erstellt werden.
  • TAG_NAME ist der reguläre Ausdruck, der mit Ihrem Tag übereinstimmt, wenn Sie den Trigger so einrichten möchten, dass bestimmte Tags erstellt werden.
  • PROJECT_NUMBER ist die Projektnummer IhresGoogle Cloud -Projekts.
  • REGION ist die Region, die mit Ihrer Bitbucket-Rechenzentrumskonfiguration verknüpft ist.
  • ID ist die ID Ihrer BitbucketServerConfig.

Geben Sie den folgenden curl-Befehl in Ihr Terminal ein, wobei PROJECT_ID die Projekt-ID Ihres Google Cloud -Projekts ist:

curl -X POST -H "Authorization: Bearer "$(gcloud auth print-access-token) -H "Content-Type: application/json; charset=utf-8" https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/triggers -d @trigger.json

Datenfreigabe

Anhand der Daten, die von Cloud Build an Bitbucket Data Center gesendet werden, können Sie Trigger nach Namen erkennen und Build-Ergebnisse in Ihren Bitbucket Data Center-Repositories aufrufen.

Die folgenden Daten werden zwischen Cloud Build und Ihrem Bitbucket-Rechenzentrumshost geteilt:

  • Google Cloud -Projekt-ID
  • Triggername

Die Datenfreigabe ist für Bitbucket Data Center automatisch aktiviert.

Nächste Schritte