Release hochstufen und Genehmigungen verwalten

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

Auf dieser Seite wird beschrieben, wie Sie einen vorhandenen Google Cloud Deploy-Release beim nächsten Ziel im Fortschritt der Bereitstellungspipeline hochstufen.

Hinweis

Auf dieser Seite wird davon ausgegangen, dass Sie bereits einen Release erstellt haben.

Release hochstufen

Wenn Ihr Release in einem in Ihrer Lieferpipeline definierten Ziel bereitgestellt wird, können Sie es zum nächsten Ziel hochstufen:

gcloud

gcloud deploy releases promote --release=RELEASE_NAME \
                               --delivery-pipeline=PIPELINE_NAME \
                               --region=REGION

Wobei:

RELEASE_NAME ist der Name des Releases, den Sie hochstufen.

PIPELINE_NAME ist der Name der Lieferpipeline, die Sie zum Verwalten der Bereitstellung dieses Release verwenden.

REGION ist der Name der Region, in der der Release erstellt wurde, z. B. us-central1. Das ist ein Pflichtfeld.

Weitere Informationen zum Befehl gcloud deploy releases promote finden Sie in der Google Cloud SDK-Referenz.

Console

  1. Öffnen Sie die Seite der Lieferpipelines.

  2. Klicken Sie auf Ihre Pipeline, die in der Liste der Lieferpipelines angezeigt wird.

    Die Detailseite der Lieferpipeline zeigt eine grafische Darstellung des Fortschritts der Lieferpipeline.

    Visualisierung der Bereitstellungspipeline in der Google Cloud Console

  3. Klicken Sie für das erste Ziel in der Visualisierung der Lieferpipeline auf Hochstufen.

    Das Dialogfeld Release hochstufen wird angezeigt. Sie enthält die Details des Ziels, zu dem Sie hochstufen.

  4. Klicken Sie auf Werben.

Wenn sich die Bereitstellungspipeline oder das Ziel seit der Erstellung des Release geändert hat, gibt Google Cloud Deploy eine Nachricht zurück, die auf eine mögliche Unstimmigkeit hinweist, und fordert Sie auf, das Angebot zu bestätigen. Sie können mit der Aufforderung n antworten und die Unterschiede zwischen den Pipelineversionen untersuchen, bevor Sie fortfahren. Wenn Sie das Upgrade dennoch ausführen möchten, wird der Release gemäß der Bereitstellungspipeline so bereitgestellt, wie er bei der Erstellung des Release definiert wurde. Weitere Informationen zu nicht übereinstimmenden Pipeline-Versionen finden Sie unter Pipelineinstanzen pro Release.

Google Cloud Deploy erstellt einen rollout für den Release im Ziel. Der Release wird für die Bereitstellung in die Warteschlange gestellt. Bei der Bereitstellung zeigt die Visualisierung der Lieferpipeline dies an:

Visualisierung der Bereitstellungspipeline in der Google Cloud Console

Genehmigungen für eine Bereitstellungspipeline verwalten

Sie können Genehmigungen für beliebige Ziele erforderlich machen und Releases für diese Ziele genehmigen oder ablehnen.

Genehmigungen können programmatisch durch die Einbindung Ihres Workflow-Verwaltungssystems (z. B. ServiceNow) oder eines anderen Systems in Google Cloud Deploy mit Pub/Sub und der Google Cloud Deploy API verwaltet werden.

Genehmigung erforderlich

Wenn Sie eine Genehmigung für ein Ziel erzwingen möchten, legen Sie in der Zielkonfiguration requireApproval auf true fest:

     apiVersion: deploy.cloud.google.com/v1
     kind: Target
     metadata:
      name:
     description:
     requireApproval: true

Weitere Informationen finden Sie unter Konfiguration der Bereitstellungspipeline.

Wenn die Genehmigung für ein Roll-out aussteht, erhalten Nutzer oder Systeme, die das Pub/Sub-Thema cd-approvals abonnieren, eine Benachrichtigung und können das Roll-out dann genehmigen oder ablehnen.

Roll-out genehmigen oder ablehnen

Ziele können eine Genehmigung erfordern, bevor ein Release bereitgestellt wird. Wenn Sie zu einem Ziel hochstufen, das eine Genehmigung benötigt, veröffentlicht Google Cloud Deploy eine Pub/Sub-Nachricht im Thema cd-approvals.

Jeder Nutzer oder jedes Dienstkonto mit der Rolle roles/clouddeploy.approver kann einen Rollout von Google Cloud Deploy für ein Ziel genehmigen, für das eine Genehmigung erforderlich ist.

Ihr integriertes Workflow-Verwaltungssystem kann, nachdem es eine Benachrichtigung über eine erforderliche Genehmigung per Dienstbenachrichtigung erhalten hat, kann den Rollout über die Google Cloud Deploy API genehmigen oder ablehnen.

Manuell genehmigen oder ablehnen

Console

  1. Rufen Sie in der Google Cloud Console die Seite Bereitstellungspipelines für Google Cloud Deploy auf, um eine Liste der verfügbaren Bereitstellungspipelines aufzurufen.

    Zur Seite der Lieferpipelines

    Die Liste der Bereitstellungspipelines wird in der Google Cloud Console angezeigt. Lieferpipelines, die konfiguriert wurden, aber nicht beim Google Cloud-Bereitstellungsdienst registriert sind, werden nicht angezeigt.

  2. Klicken Sie auf den Namen der Lieferpipeline.

    Die Pipelinevisualisierung wird angezeigt. Wenn die Genehmigung aussteht und Sie die Rolle roles/clouddeploy.approver oder entsprechende Berechtigungen haben, enthält die Visualisierung den Link Überprüfen.

    Visualisierung der Lieferpipeline, Genehmigung ausstehend

  3. Klicken Sie auf Prüfen.

    Eine Liste der noch nicht genehmigten Rollouts wird angezeigt.

    Rollouts für diese Pipeline, ausstehende Genehmigung

  4. Klicken Sie auf Prüfen.

    Der Bildschirm „Einführung genehmigen“ wird angezeigt.

    Details zum Roll-out mit ausstehender Genehmigung

    Auf dem Tab Manifest-Diff werden alle Änderungen am gerenderten Manifest zwischen der aktuell bereitgestellten Version (falls vorhanden) und der Version, die Sie jetzt genehmigen oder ablehnen, angezeigt.

  5. Klicken Sie auf Genehmigen oder Ablehnen.

    Wenn Sie zustimmen, wird Ihre Anwendung im Ziel bereitgestellt. Wenn Sie die Anwendung ablehnen, wird die Anwendung nicht bereitgestellt und kann später nur noch genehmigt werden, wenn sie wieder hochgestuft wird.

gcloud

Ein Nutzer mit der roles/clouddeploy.approver-Rolle kann Rollouts manuell genehmigen oder ablehnen. Zum Annehmen:

gcloud deploy rollouts approve rollout-name --delivery-pipeline=pipeline-name \
                                                                   --region=region \
                                                                   --release=release-name

Ablehnung:

gcloud deploy rollouts reject rollout-name --delivery-pipeline=pipeline-name \
                                                                  --region=region \
                                                                  --release=release-name