Promuovi la tua release e gestisci le approvazioni

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

In questa pagina viene descritto come promuovere una release di Google Cloud Deploy esistente al target successivo in un'avanzamento della pipeline di distribuzione.

Prima di iniziare

Questa pagina presuppone che tu abbia già creato una release.

Promuovi la release

Una volta eseguito il deployment della release in una destinazione definita nella pipeline di distribuzione, puoi promuoverla al target successivo:

gcloud

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

Dove:

RELEASE_NAME è il nome dell'uscita che stai promuovendo.

PIPELINE_NAME è il nome della pipeline di distribuzione che utilizzi per gestire il deployment di questa release.

REGION è il nome dell'area geografica in cui è stata creata la release, ad esempio us-central1. Campo obbligatorio.

Consulta il riferimento in Google Cloud SDK per ulteriori informazioni sul comando gcloud deploy releases promote.

Console

  1. Apri la pagina delle pipeline di distribuzione.

  2. Fai clic sulla pipeline mostrata nell'elenco di pipeline di distribuzione.

    La pagina dei dettagli della pipeline di distribuzione mostra una rappresentazione grafica dell'avanzamento della pipeline di distribuzione.

    Visualizzazione della pipeline di distribuzione in Google Cloud Console

  3. Sul primo target nella visualizzazione della pipeline di pubblicazione, fai clic su Promuovi.

    Viene visualizzata la finestra di dialogo Promuovi release. Mostra i dettagli del target che stai promuovendo.

  4. Fai clic su Promuovi.

Se la pipeline di distribuzione o il target sono cambiati dopo la creazione della release, Google Cloud Deploy restituisce un messaggio che indica un possibile errore di corrispondenza e ti chiede di confermare la promozione. Puoi rispondere a n alla richiesta ed esaminare le differenze tra le versioni della pipeline prima di procedere. Se scegli di promuovere comunque, il deployment della release viene eseguito in base alla pipeline di distribuzione così come è stata definita al momento della creazione. Per ulteriori informazioni sulle mancate corrispondenze delle pipeline, consulta Istanze pipeline per release.

Google Cloud Deploy crea un elemento rollout per la release nella destinazione di destinazione e la release è in coda per il deployment. Una volta eseguito il deployment, la visualizzazione della pipeline di distribuzione mostra quanto segue:

Visualizzazione della pipeline di distribuzione in Google Cloud Console

Gestire le approvazioni per una pipeline di distribuzione

Puoi richiedere l'approvazione per qualsiasi destinazione e approvare o rifiutare le release in quella destinazione.

Le approvazioni possono essere gestite in modo programmatico integrando il tuo sistema di gestione dei flussi di lavoro (come ServiceNow) o un altro sistema con Google Cloud Deploy tramite Pub/Sub e l'API Google Cloud Deploy.

Richiedi approvazione

Per richiedere l'approvazione per qualsiasi destinazione, imposta requireApproval su true nella configurazione di destinazione:

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

Per ulteriori dettagli, consulta Configurazione della pipeline di distribuzione.

Quando un'implementazione è in attesa di approvazione, gli utenti o i sistemi che si iscrivono all'argomento cd-approvalsPub/Sub ricevono la notifica e possono quindi approvare o rifiutare l'implementazione.

Approvare o rifiutare un'implementazione

Ogni destinazione può richiedere l'approvazione prima del deployment di qualsiasi release. Quando promuovi un target che richiede l'approvazione, Google Cloud Deploy pubblica un messaggio Pub/Sub nell'argomento cd-approvals.

Qualsiasi utente o account di servizio con il ruolo roles/clouddeploy.approver può approvare un'implementazione di Google Cloud Deploy per una destinazione che richiede approvazione.

Dopo aver ricevuto una notifica relativa all'approvazione tramite le notifiche di servizio, il tuo sistema di gestione dei flussi di lavoro integrato può approvare o rifiutare l'implementazione utilizzando l'API Google Cloud Deploy.

Approva o rifiuta manualmente

Console

  1. Nella console Google Cloud, vai alla pagina Pipeline di distribuzione di Google Cloud Deploy per visualizzare l'elenco delle tue pipeline di distribuzione disponibili.

    Apri la pagina Pipeline di distribuzione

    L'elenco delle pipeline di distribuzione è mostrato in Google Cloud Console. Le pipeline di distribuzione che sono state configurate, ma non registrate con Google Cloud Deployservice, non vengono mostrate.

  2. Fai clic sul nome della pipeline di distribuzione.

    Viene mostrata la visualizzazione della pipeline. Se è in attesa di approvazione e hai il ruolo roles/clouddeploy.approver o autorizzazioni equivalenti, la visualizzazione include un link Rivedi.

    Visualizzazione della pipeline di distribuzione, con approvazione in attesa

  3. Fai clic su Rivedi.

    Viene mostrato un elenco delle implementazioni in attesa di approvazione.

    Implementazioni di questa pipeline, con approvazione in attesa

  4. Fai clic su Rivedi.

    Viene visualizzata la schermata Approva implementazione.

    Dettagli dell'implementazione con approvazione in attesa

    La scheda Manifest diff mostra le eventuali modifiche al manifest sottoposto a rendering dalla versione attualmente implementata (se presente) a quella che stai approvando (o rifiutando).

  5. Fai clic su Approva o Rifiuta.

    Se approvi, il deployment dell'applicazione viene eseguito nel target. Se rifiuti, il deployment dell'applicazione non verrà eseguito e non potrà essere approvata in un secondo momento, a meno che non venga promossa di nuovo.

gcloud

Un utente con il ruolo roles/clouddeploy.approver può approvare o rifiutare manualmente un'implementazione. Per approvare:

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

Per rifiutare:

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