Repositories aus GitHub Enterprise erstellen

Mit Cloud Build können Sie Trigger auf einer GitHub Enterprise-Instanz erstellen. Auf dieser Seite wird erläutert, wie Sie mithilfe von GitHub Enterprise-Triggern Builds als Reaktion auf Commits oder Pull-Anfragen von einer GitHub Enterprise-Instanz aufrufen.

Hinweis

  • Cloud Build and Secret Manager APIs aktivieren.

    Aktivieren Sie die APIs

GitHub Enterprise-Trigger erstellen

In diesem Abschnitt wird erläutert, wie Sie einen Trigger erstellen und mit Ihrer GitHub Enterprise-Installation verknüpfen. Weitere Informationen zur Verwendung von GitHub Enterprise-Triggern in einem privaten Netzwerk finden Sie unter Erstellen von Repositories aus GitHub Enterprise in einem privaten Netzwerk.

Console

Informationen zum Erstellen von Triggern mit GitHub-Triggern finden Sie unter GitHub-Trigger erstellen.

API

Die folgende JSON-Vorlage zeigt, wie Sie Trigger über die Befehlszeile erstellen:

  {
      "filename": "cloudbuild.yaml",
      "name": "trigger-name",
      "description": "trigger-description",
      "github": {
          "push": {
              "branch": ".*",
          },
          "owner": "owner",
          "name": "repo-name",
      "enterprise_config_resource_name": "projects/project-number/githubEnterpriseConfigs/id"
      },
      "include_build_logs": "INCLUDE_BUILD_LOGS_WITH_STATUS"
  }

Dabei gilt:

  • trigger-name ist der Name des Triggers.
  • trigger-description ist eine Beschreibung des Triggers
  • owner ist der Inhaber des GitHub-Repositorys.
  • repo-name ist der name des GitHub-Repositorys.
  • project-number ist die Nummer des Cloud-Projekts.
  • id ist die ID Ihrer GitHubEnterpriseConfig.
  • [OPTIONAL] _include_build_logs ist ein Feld, das Sie angeben können, um Build-Logs für Ihre Repositories anzuzeigen. Dieses Flag wird für Builds aus GitHub- und GitHub Enterprise-Repositories unterstützt.

Geben Sie den folgenden curl-Befehl in Ihr Terminal ein, wobei project-id die Cloud-Projekt-ID 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

Ihr Trigger wurde jetzt erstellt.

Datenfreigabe

Mit den von Cloud Build an GitHub Enterprise gesendeten Daten können Sie Trigger anhand ihres Namens identifizieren und Build-Ergebnisse in GitHub Enterprise ansehen.

Die folgenden Daten werden derzeit zwischen Cloud Build und GitHub Enterprise geteilt:

  • ID des Cloud-Projekts
  • Triggername
  • Build-Logs

Wenn Sie Trigger vor August 2020 erstellt haben, ist die Datenfreigabe für Ihr Projekt möglicherweise nicht aktiviert. Sie können die Datenfreigabe für alle GitHub Enterprise-Trigger in Ihrem Projekt aktivieren. Klicken Sie dazu auf dem Tab „Freigabe für Cloud Build“ auf Aktivieren.

Wenn für ein GitHub Enterprise-Repository erforderliche Statusprüfungen aktiviert sind, funktioniert das Aktivieren der Datenfreigabe möglicherweise vorübergehend. Sie können die Konfigurationen für die Statusprüfung so anpassen, dass nach dem Triggernamen gesucht wird:

  • Cloud Build-spezifische erforderliche Prüfungen im GitHub-Repository deaktivieren
  • Datenfreigabe in Cloud Build sicher aktivieren
  • Neuen Build in Cloud Build ausführen, der Status in Ihr Repository überträgt
  • Erforderliche Statusprüfungen wieder aktivieren und Triggername auswählen

Weitere Informationen