Mit Cloud Build können Sie Trigger konfigurieren, die keinen Build sofort ausführen, sondern einen Build bis zur Genehmigung als ausstehend markieren. Wenn ein Nutzer mit Berechtigungen einen ausstehenden Build genehmigt, wird der Build gestartet. Wenn die Genehmigung verweigert wird, wird der Build nicht gestartet.
Auf dieser Seite wird erläutert, wie Sie Builds manuell genehmigen oder ablehnen können. Informationen zum Konfigurieren eines Triggers, der eine Genehmigung erfordert, finden Sie unter Build-Trigger erstellen.
Hinweise
-
Enable the Cloud Build API.
Installieren Sie die Google Cloud CLI.
Falls dies noch nicht geschehen, erstellen Sie einen Build-Trigger, der so konfiguriert ist, dass eine Genehmigung erforderlich ist.
Berechtigungen gewähren
Wenn ein Nutzer die Rolle Cloud Build-Bearbeiter hat, kann er festlegen, ob ein Trigger eine Genehmigung erfordert oder nicht. Weitere Informationen zu Cloud Build-Berechtigungen finden Sie unter IAM und Berechtigungen. Um einem Nutzer die Berechtigung zum Genehmigen von Builds in Ihrem Projekt zu erteilen, muss der Nutzer die Rolle Cloud Build-Genehmiger haben.
So fügen Sie die Rolle Cloud Build-Genehmiger hinzu:
Öffnen Sie in der Google Cloud Console die Seite IAM.
Klicken Sie auf Zugriff erlauben.
Das Steuerfeld Zugriff gewähren wird angezeigt.
Fügen Sie im Abschnitt Hauptkonten hinzufügen Nutzer hinzu, um ihnen die Berechtigung zu erteilen, ausstehende Builds in Ihrem Projekt zu genehmigen.
In diesem Abschnitt müssen Sie ein oder mehrere Hauptkonten hinzufügen. Wenn Sie sich als Hauptkonto hinzufügen, müssen Sie dennoch einen ausstehenden Build manuell genehmigen, wenn Ihr Trigger durch eine Genehmigung gesteuert wird.
Wählen Sie im Bereich Rollen zuweisen die Option Cloud Build > Cloud Build-Genehmiger aus.
Die von Ihnen angegebenen Nutzer haben jetzt Zugriff auf die Genehmigung oder Ablehnung von ausstehenden Builds.
Builds genehmigen
Console
So genehmigen Sie einen ausstehenden Build in der Google Cloud Console:
Öffnen Sie in der Google Cloud Console die Seite Cloud Build-Dashboard.
Wenn Sie die Builds genehmigen müssen, wird oben auf der Seite eine Meldung mit der Anzahl der Builds angezeigt, die Sie genehmigen müssen. Klicken Sie rechts neben der Nachricht auf Builds ansehen, um die Liste der Builds aufzurufen, die Sie genehmigen müssen.
Klicken Sie auf die Kästchen der Builds, die Sie genehmigen möchten. Sie können mehrere Builds auswählen, die genehmigt werden sollen, oder einen einzelnen Build, der genehmigt werden soll.
Klicken Sie oben auf der Seite auf Genehmigen, um die ausgewählten Builds zu genehmigen.
Vor dem Start des Builds wird das Dialogfeld Build genehmigen angezeigt. Im Dialogfeld können Sie eine optionale Nachricht und eine URL hinzufügen, die zusammen mit der Genehmigung des Builds angezeigt wird. Zum Hinzufügen einer URL klicken Sie auf Zusätzliche Optionen anzeigen, um eine URL einzugeben.
Klicken Sie im Dialogfeld auf Genehmigen, um den Build zu genehmigen.
Sobald Sie ihn genehmigt haben, startet der Build sofort. Wenn die Organisationsrichtlinie (constraints/cloudbuild.allowedIntegrations
) den Zugriff auf das verbundene Repository verweigert, überschreibt die Richtlinie die Genehmigung. Weitere Informationen finden Sie unter Gate-Builds auf Organisationsrichtlinie.
gcloud
Führen Sie den folgenden Befehl im Terminalfenster aus, um einen ausstehenden Build mit gcloud commands
zu genehmigen:
gcloud builds approve BUILD_ID \
--project=PROJECT_ID \
--url=URL \
--comment=COMMENT
Ersetzen Sie die Platzhalterwerte in den obigen Befehlen durch Folgendes:
BUILD_ID
ist die ID des Builds, den Sie genehmigen möchten.PROJECT_ID
ist die Projekt-ID.- [Optional]
URL
ist die URL, die Informationen zur Genehmigung enthält, z. B. einen Link zu einem JIRA-Ticket. - [Optional]
COMMENT
ist die Nachricht, die nach der Genehmigung des Builds angezeigt werden soll.
Sobald Sie ihn genehmigt haben, startet der Build sofort. Wenn die Organisationsrichtlinie zum Definieren von Builds für zulässige Integrationen (constraints/cloudbuild.allowedIntegrations
) festgelegt ist, überschreibt die Richtlinie die Genehmigung. Weitere Informationen finden Sie unter Organisationsrichtlinie zum Erstellen von Triggern anwenden.
Builds ablehnen
Console
So lehnen Sie einen ausstehenden Build in der Google Cloud Console ab:
Öffnen Sie in der Google Cloud Console die Seite Cloud Build-Dashboard.
Wenn Sie die Builds genehmigen müssen, wird oben auf der Seite eine Meldung mit der Anzahl der Builds angezeigt, die Sie genehmigen müssen. Klicken Sie rechts neben der Nachricht auf Builds ansehen, um die Liste der Builds aufzurufen, die Sie genehmigen müssen.
Sie können mehrere Builds auswählen, die abgelehnt werden sollen, oder einen einzelnen Build, der abgelehnt werden soll. Klicken Sie auf die Kästchen der Builds, die Sie ablehnen möchten.
Klicken Sie oben auf der Seite auf Ablehnen, um den Build abzulehnen.
Wenn Sie einen Build ablehnen, wird der Build nicht gestartet.
gcloud
Führen Sie den folgenden Befehl in Ihrem Terminalfenster aus, um einen ausstehenden Build mit gcloud commands
abzulehnen:
gcloud builds reject BUILD_ID \
--project=PROJECT_ID \
--url=URL \
--comment=COMMENT
Ersetzen Sie die Platzhalterwerte in den obigen Befehlen durch Folgendes:
BUILD_ID
ist die ID des Builds, den Sie ablehnen möchten.PROJECT_ID
ist die Projekt-ID.- [Optional]
URL
ist die URL, die Informationen zur Ablehnung enthält, z. B. einen Link zu einem JIRA-Ticket. - [Optional]
COMMENT
ist die Nachricht, die nach der Ablehnung des Builds angezeigt werden soll.
Wenn Sie einen Build ablehnen, wird der Build nie gestartet.
Benachrichtigungen für Builds erhalten, die auf Genehmigung warten
Sie können Cloud Build-Notifier verwenden, um Benachrichtigungen über ausstehende Builds zu erhalten. Verwenden Sie dazu einen von Cloud Build verwalteten Notifier, z. B. Slack oder SMTP-Server. Sie können aber auch Ihren eigenen Notifier erstellen.
So konfigurieren Sie Benachrichtigungen:
Folgen Sie der Anleitung auf einer der folgenden Seiten, um Benachrichtigungen für Ihren gewünschten Dienst zu konfigurieren:
Wenn Sie Benachrichtigungen mit einer der oben genannten Seiten konfigurieren, müssen Sie den Notifier so konfigurieren, dass Builds mit dem Status PENDING gefiltert werden. Dadurch werden Sie Benachrichtigungen zu Builds erhalten, die auf die Genehmigung warten. In der folgenden Beispiel-SMTP-Notifier-Konfigurationsdatei verwendet das Filterfeld Common Expression Language (CEL), um Build-Ereignisse mit dem Status PENDING zu filtern:
apiVersion: cloud-build-notifiers/v1 kind: SMTPNotifier metadata: name: example-smtp-notifier spec: notification: filter: build.status == Build.Status.PENDING delivery: server: example.gmail.com port: 0000 sender: sender@example.com ...
Das vollständige Beispiel finden Sie in der Konfigurationsdatei für Notifier für die SMTP-Notifier.
Führen Sie den Befehl
gcloud run
in Ihrem Terminal aus, um den Notifier bereitzustellen. Im folgenden Beispiel wird der SMTP-Notifier mit Cloud Run bereitgestellt.gcloud run deploy example.gmail.com \ --image=us-east1-docker.pkg.dev/gcb-release/cloud-build-notifiers/smtp:latest \ --update-env-vars=CONFIG_PATH=smtp.yaml, PROJECT_ID=my-project
Sie sollten jetzt Benachrichtigungen für ausstehende Builds an Ihren Dienst erhalten.
Nächste Schritte
- Weitere Informationen finden Sie unter Build-Trigger erstellen und verwalten.
- Build-Ergebnisse für Build-Trigger anzeigen