Questo documento fornisce una panoramica dell'automazione del deployment.
Puoi configurare Cloud Deploy in modo da eseguire automaticamente le attività relative alle release e all'implementazione per una determinata pipeline di distribuzione. Queste attività includono uscita promozione e avanzamento di fase.
Scopri di più sulle risorse utilizzate per e rilasciare l'automazione in Cloud Deploy.
Scopri di più su come configurare le regole definiscono il funzionamento di queste automazioni.
Azioni che puoi automatizzare
In Cloud Deploy, puoi automatizzare la release seguente di implementazione:
Promuovere una release
Puoi configurare Cloud Deploy per promuovere la tua release automaticamente, dopo un'implementazione riuscita in una destinazione. Ad esempio, se hai tre target,
dev
,staging
eprod
, puoi configurare un'automazione in modo che la release venga promossa aprod
, senza ulteriore interazione umana, dopo un deployment riuscito instaging
.Proseguire un'implementazione
Puoi configurare Cloud Deploy per avanzare un'implementazione da uno phase a quella successiva, dopo un'implementazione corretta per il target precedente. Avanzamento della fase è disponibile solo nelle destinazioni che utilizzano strategia di deployment canary.
Come funziona l'automazione?
Ogni automazione è collegata alla pipeline di importazione per la quale viene utilizzata. Non puoi condivide un'automazione tra più pipeline di distribuzione.
Di seguito è riportato il processo generale per la configurazione e l'esecuzione di un automazione:
-
Questa automazione è associata a una pipeline di importazione.
Registri l'automazione utilizzando
gcloud deploy apply
.Viene creata la risorsa automazione.
Richiami la pipeline di distribuzione associata a questa automazione creazione di una release.
L'implementazione è andata a buon fine in almeno una destinazione.
Nel target per cui è configurata questa automazione…
Se l'automazione è
promoteReleaseRule
:L'esecuzione attende che l'implementazione vada a buon fine nel target di origine. Il target di origine è il
selector.targets
configurato per l'automazione, non inAutomationRule
.Se è configurato un orario
wait
, l'esecuzione attende anche questo orario.La release viene promossa automaticamente al target successivo nella progressione della pipeline o a un target specifico, se indicato.
Se l'automazione è
advanceRolloutRule
e il target utilizza una versione canary strategia di deployment:L'esecuzione attende l'identificazione fase di origine, se disponibile.
La proprietà
sourcePhase
è facoltativa e se non sono presenti fasi sorgente specificato, ogni fase dell'implementazione viene avanzata automaticamente. La l'avanzamento automatico della fase avviene quando la fase di origineIN_PROGRESS
, soggetto await
volta.Se è configurato un orario
wait
, l'esecuzione attende anche questo orario.Quando automatizzi un deployment canary, utilizzi questo tempo di attesa per specificare la durata di ogni fase del canary.
L'implementazione viene avanzata automaticamente dalla fase di origine alla fase successiva dell'implementazione.
Se è presente un'ulteriore fase di origine, viene trattata allo stesso modo, incluso lo stesso tempo di attesa, se applicabile.
Risorse di Automation
Esistono due risorse Cloud Deploy specifiche per l'automazione:
Automazione
Un
Automation
è una risorsa figlio di una pipeline di distribuzione e include le seguenti informazioni:- Un puntatore al target o ai target per i quali viene utilizzata l'automazione
- La regola o le regole che disciplinano la funzione dell'automazione e le relative funzionalità
La configurazione della risorsa di Automation è descritta nel documento Informazioni sulla risorsa di automazione.
Quando esegui
gcloud deploy apply
su un file che include un'automazione (kind: Automation
), Cloud Deploy crea un'istanza risorse di automazione, che associa una pipeline di distribuzione e una o più destinazioni a uno o più regole di automazione.Esecuzione automazione
AutomationRun
è un'istanza di un'automazione. È un puntatore alla sua risorsa di Automation corrispondente, più informazioni sull'implementazione e altri metadati.L'esecuzione dell'automazione viene creata quando viene attivata un'automazione.
Scopri di più sulle risorse di automazione.
Regole di automazione
Una regola di automazione definisce un'azione che è possibile eseguire sulla pipeline di distribuzione automaticamente, nonché i dettagli sul modo in cui deve essere eseguita l'automazione.
Scopri di più sulle regole di automazione.
Ruoli e autorizzazioni di Identity and Access Management richiesti
Oltre alle autorizzazioni necessarie per eseguire qualsiasi deployment di Cloud Deploy
pipeline di distribuzione ed eseguire le attività da automatizzare (come l'avanzamento
un'implementazione), sono necessarie diverse autorizzazioni per eseguire
alcune operazioni sulle risorse Automation
e AutomationRun
:
clouddeploy.automations.create
clouddeploy.automations.delete
clouddeploy.automations.get
clouddeploy.automations.list
clouddeploy.automations.update
clouddeploy.automationRuns.cancel
clouddeploy.automationRuns.get
clouddeploy.automationRuns.list
Oltre a queste autorizzazioni, ogni regola di automazione potrebbe richiedere ulteriori autorizzazioni per eseguire l'operazione automatica. Consulta Configurare le regole di automazione per conoscere le autorizzazioni specifiche necessarie per ogni regola di automazione.
Consulta Ruoli e autorizzazioni IAM Per ulteriori informazioni, incluso il deployment includono queste autorizzazioni.
Crea un'automazione
Puoi creare un'automazione, anche utilizzando una delle
regole di automazione disponibili,
configurando un'automazione e poi creando la risorsa di automazione utilizzando
gcloud deploy apply
Consulta la sezione seguente (Configurazione dell'automazione) e Configurare le regole di automazione.
Configurazione dell'automazione
Consulta le
Schema del file di configurazione
per maggiori dettagli su come configurare
Automation
risorsa.
Configurazione delle regole di Automation
Oltre a questa configurazione dell'automazione, devi specificare regole di automazione. La configurazione è diversa per ciascuna delle regole disponibili.
Consulta Usa le regole di automazione per le descrizioni di ogni delle regole disponibili.
Sospendere un'automazione
Puoi sospendere una risorsa esistente senza eliminarla. Può essere utile per testare un'automazione senza influire sulla pipeline di distribuzione. Quando interrompi un'automazione, questa non viene eseguita, ma vengono comunque generati i log della piattaforma.
Nella configurazione
Automation
, aggiorna la proprietàsuspended
sutrue
.Esegui
gcloud deploy apply
sul file di configurazione.I log della piattaforma vengono comunque generati quando viene creata l'istanza dell'automazione, anche se è sospesa. Puoi utilizzarlo per testare e eseguire il debug dell'automazione senza influire sulla pipeline di importazione.
Passaggi successivi
Prova la guida rapida: automatizza la creazione delle release e l'avanzamento dell'implementazione.
Scopri di più sulle regole di automazione di Cloud Deploy.
Scopri di più sulle risorse di automazione di Cloud Deploy.
Per informazioni dettagliate sui file di configurazione dell'automazione, consulta la documentazione dello schema del file di configurazione.