- Risorsa: DeliveryPipeline
- Rappresentazione JSON
- SerialPipeline
- Fase
- Strategia
- Standard
- Pre-deployment
- Post-deployment
- Canary
- RuntimeConfig
- KubernetesConfig
- GatewayServiceMesh
- ServiceNetworking
- CloudRunConfig
- CanaryDeployment
- CustomCanaryDeployment
- PhaseConfig
- DeployParameters
- PipelineCondition
- PipelineReadyCondition
- TargetsTypeCondition
- Metodi
Risorsa: DeliveryPipeline
Una risorsa DeliveryPipeline
nell'API Cloud Deploy.
Un elemento DeliveryPipeline
definisce una pipeline attraverso la quale può avanzare una configurazione Skaffold.
Rappresentazione JSON |
---|
{ "name": string, "uid": string, "description": string, "annotations": { string: string, ... }, "labels": { string: string, ... }, "createTime": string, "updateTime": string, "condition": { object ( |
Campi | |
---|---|
name |
Facoltativo. Nome di |
uid |
Solo output. Identificatore univoco di |
description |
Descrizione del |
annotations |
Annotazioni dell'utente. Questi attributi possono essere impostati e utilizzati solo dall'utente e non da Cloud Deploy. Un oggetto contenente un elenco di |
labels |
Le etichette sono attributi che possono essere impostati e utilizzati sia dall'utente sia da Cloud Deploy. Le etichette devono soddisfare i seguenti vincoli:
Sia le chiavi che i valori sono vincolati a essere inoltre <= 128 byte. Un oggetto contenente un elenco di |
createTime |
Solo output. L'ora in cui è stata creata la pipeline. Un timestamp in formato "Zulu" RFC3339 UTC, con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: |
updateTime |
Solo output. L'ora più recente in cui è stata aggiornata la pipeline. Un timestamp in formato "Zulu" RFC3339 UTC, con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: |
condition |
Solo output. Informazioni sullo stato della pipeline di distribuzione. |
etag |
Questo checksum viene calcolato dal server in base al valore di altri campi e può essere inviato in caso di richieste di aggiornamento ed eliminazione per garantire che il client abbia un valore aggiornato prima di procedere. |
suspended |
Una volta sospeso, non sarà possibile creare nuove release o implementazioni, mentre quelle in corso verranno completate. |
Campo di unione pipeline . La configurazione dell'ordinamento di DeliveryPipeline . pipeline può essere solo uno dei seguenti: |
|
serialPipeline |
SerialPipeline definisce un insieme sequenziale di fasi per un elemento |
SerialPipeline
SerialPipeline definisce un insieme sequenziale di fasi per un elemento DeliveryPipeline
.
Rappresentazione JSON |
---|
{
"stages": [
{
object ( |
Campi | |
---|---|
stages[] |
Ogni fase specifica la configurazione per un |
Fase
La fase specifica una località in cui eseguire il deployment.
Rappresentazione JSON |
---|
{ "targetId": string, "profiles": [ string ], "strategy": { object ( |
Campi | |
---|---|
targetId |
Il valore targetId a cui rimanda questa fase. Questo campo si riferisce esclusivamente all'ultimo segmento di un nome target. Ad esempio, questo campo sarebbe solo |
profiles[] |
Profili Skaffold da utilizzare per il rendering del manifest per |
strategy |
Facoltativo. La strategia da utilizzare per un |
deployParameters[] |
Facoltativo. I parametri di deployment da utilizzare per la destinazione in questa fase. |
Strategia
La strategia contiene informazioni sulla strategia di deployment.
Rappresentazione JSON |
---|
{ // Union field |
Campi | |
---|---|
Campo di unione deployment_strategy . Dettagli della strategia di deployment. deployment_strategy può essere solo uno dei seguenti: |
|
standard |
La strategia di deployment standard esegue un singolo deployment e consente la verifica del deployment. |
canary |
La strategia di deployment canary fornisce deployment percentuali progressivi verso una destinazione. |
Standard
Standard rappresenta la strategia di deployment standard.
Rappresentazione JSON |
---|
{ "verify": boolean, "predeploy": { object ( |
Campi | |
---|---|
verify |
Se verificare un deployment. |
predeploy |
Facoltativo. Configurazione del job di pre-deployment. Se non è configurato, il job di pre-deployment non sarà presente. |
postdeploy |
Facoltativo. Configurazione del job post-deployment. Se non è configurato, il job post-deployment non sarà presente. |
Pre-deployment
Il pre-deployment contiene le informazioni di configurazione del job di pre-deployment.
Rappresentazione JSON |
---|
{ "actions": [ string ] } |
Campi | |
---|---|
actions[] |
Facoltativo. Una sequenza di azioni personalizzate Skaffold da richiamare durante l'esecuzione del job di pre-deployment. |
Post-deployment
Postdeploy contiene le informazioni di configurazione del job post-deployment.
Rappresentazione JSON |
---|
{ "actions": [ string ] } |
Campi | |
---|---|
actions[] |
Facoltativo. Una sequenza di azioni personalizzate Skaffold da richiamare durante l'esecuzione del job post-deployment. |
Canary
Canary rappresenta la strategia di deployment canary.
Rappresentazione JSON |
---|
{ "runtimeConfig": { object ( |
Campi | |
---|---|
runtimeConfig |
Facoltativo. Configurazioni specifiche del runtime per la strategia di deployment. La configurazione di runtime viene utilizzata per determinare in che modo Cloud Deploy suddivide il traffico per consentire un deployment progressivo. |
Campo di unione mode . La modalità da utilizzare per la strategia di deployment canary. mode può essere solo uno dei seguenti: |
|
canaryDeployment |
Configura il deployment progressivo per una destinazione. |
customCanaryDeployment |
Configura il deployment progressivo per un target, ma consente la personalizzazione a livello di fase, in cui una fase rappresenta ogni percentuale di deployment. |
RuntimeConfig
RuntimeConfig contiene le configurazioni specifiche del runtime per una strategia di deployment.
Rappresentazione JSON |
---|
{ // Union field |
Campi | |
---|---|
Campo di unione runtime_config . I dettagli di configurazione del runtime. runtime_config può essere solo uno dei seguenti: |
|
kubernetes |
Configurazione del runtime Kubernetes. |
cloudRun |
Configurazione del runtime di Cloud Run. |
KubernetesConfig
KubernetesConfig contiene la configurazione del runtime Kubernetes.
Rappresentazione JSON |
---|
{ // Union field |
Campi | |
---|---|
Campo di unione service_definition . La configurazione della definizione del servizio. service_definition può essere solo uno dei seguenti: |
|
gatewayServiceMesh |
Configurazione del mesh di servizi API Kubernetes Gateway. |
serviceNetworking |
del networking dei servizi Kubernetes. |
GatewayServiceMesh
Informazioni sulla configurazione del mesh di servizi dell'API Kubernetes Gateway.
Rappresentazione JSON |
---|
{ "httpRoute": string, "service": string, "deployment": string, "routeUpdateWaitTime": string, "stableCutbackDuration": string } |
Campi | |
---|---|
httpRoute |
Obbligatorio. Nome HTTPRoute dell'API Gateway. |
service |
Obbligatorio. Nome del servizio Kubernetes. |
deployment |
Obbligatorio. Nome del deployment Kubernetes il cui traffico è gestito dall'HTTPRoute e dal servizio specificati. |
routeUpdateWaitTime |
Facoltativo. Il tempo di attesa per la propagazione degli aggiornamenti della route. Il tempo configurabile massimo è di 3 ore nel formato in secondi. Se non specificati, non è previsto alcun tempo di attesa. Una durata in secondi con un massimo di nove cifre frazionarie, che termina con " |
stableCutbackDuration |
Facoltativo. Il tempo necessario per eseguire la migrazione del traffico dal servizio canary al servizio originale durante il deployment della fase stabile. Se specificato, deve essere compreso tra 15 e 3600 secondi. Se non specificati, non è previsto alcun tempo limite. Una durata in secondi con un massimo di nove cifre frazionarie, che termina con " |
ServiceNetworking
Informazioni sulla configurazione del networking del servizio Kubernetes.
Rappresentazione JSON |
---|
{ "service": string, "deployment": string, "disablePodOverprovisioning": boolean } |
Campi | |
---|---|
service |
Obbligatorio. Nome del servizio Kubernetes. |
deployment |
Obbligatorio. Nome del deployment Kubernetes il cui traffico è gestito dal servizio specificato. |
disablePodOverprovisioning |
Facoltativo. Se disabilitare il provisioning eccessivo dei pod. Se l'overprovisioning dei pod è disabilitato, Cloud Deploy limiterà il numero totale di pod utilizzati per la strategia di deployment al numero di pod del deployment nel cluster. |
CloudRunConfig
CloudRunConfig contiene la configurazione del runtime Cloud Run.
Rappresentazione JSON |
---|
{ "automaticTrafficControl": boolean, "canaryRevisionTags": [ string ], "priorRevisionTags": [ string ], "stableRevisionTags": [ string ] } |
Campi | |
---|---|
automaticTrafficControl |
Indica se Cloud Deploy deve aggiornare la stanza del traffico in un servizio Cloud Run per conto dell'utente al fine di facilitare la suddivisione del traffico. Questo deve essere vero per CanaryDeployments, ma facoltativo per CustomCanaryDeployments. |
canaryRevisionTags[] |
Facoltativo. Un elenco di tag che vengono aggiunti alla revisione canary mentre è in corso la fase canary. |
priorRevisionTags[] |
Facoltativo. Un elenco di tag aggiunti alla revisione precedente mentre è in corso la fase canary. |
stableRevisionTags[] |
Facoltativo. Un elenco di tag che vengono aggiunti alla revisione stabile finale quando viene applicata la fase stabile. |
CanaryDeployment
CanaryDeployment rappresenta la configurazione del deployment canary
Rappresentazione JSON |
---|
{ "percentages": [ integer ], "verify": boolean, "predeploy": { object ( |
Campi | |
---|---|
percentages[] |
Obbligatorio. I deployment basati sulla percentuale che verranno eseguiti nell'ambito di un' |
verify |
Se eseguire i test di verifica dopo ogni percentuale di deployment. |
predeploy |
Facoltativo. Configurazione per il job di pre-deployment della prima fase. Se non è configurato, non ci saranno job di pre-deployment per questa fase. |
postdeploy |
Facoltativo. Configurazione per il job post-deployment dell'ultima fase. Se non è configurato, non ci sarà alcun job post-deployment per questa fase. |
CustomCanaryDeployment
CustomCanaryDeployment rappresenta la configurazione del deployment canary personalizzato.
Rappresentazione JSON |
---|
{
"phaseConfigs": [
{
object ( |
Campi | |
---|---|
phaseConfigs[] |
Obbligatorio. Configurazione per ogni fase del deployment canary nell'ordine di esecuzione. |
PhaseConfig
FaseConfig rappresenta la configurazione per una fase del deployment canary personalizzato.
Rappresentazione JSON |
---|
{ "phaseId": string, "percentage": integer, "profiles": [ string ], "verify": boolean, "predeploy": { object ( |
Campi | |
---|---|
phaseId |
Obbligatorio. L'ID da assegnare alla fase |
percentage |
Obbligatorio. Percentuale di deployment per la fase. |
profiles[] |
Profili Skaffold da utilizzare durante il rendering del manifest per questa fase. Questi si aggiungono all'elenco di profili specificato nella fase |
verify |
Se eseguire i test di verifica dopo il deployment. |
predeploy |
Facoltativo. Configurazione per il job di pre-deployment di questa fase. Se non è configurato, non ci saranno job di pre-deployment per questa fase. |
postdeploy |
Facoltativo. Configurazione per il job post-deployment di questa fase. Se non è configurato, non ci sarà alcun job post-deployment per questa fase. |
DeployParameters
DeployParameters contiene informazioni sui parametri di deployment.
Rappresentazione JSON |
---|
{ "values": { string: string, ... }, "matchTargetLabels": { string: string, ... } } |
Campi | |
---|---|
values |
Obbligatorio. I valori sono parametri di deployment in coppie chiave/valore. Un oggetto contenente un elenco di |
matchTargetLabels |
Facoltativo. I parametri di deployment vengono applicati ai target con etichette di corrispondenza. Se non specificati, i parametri di deployment vengono applicati a tutte le destinazioni (incluse quelle figlio di un target multiplo). Un oggetto contenente un elenco di |
PipelineCondition
PipelineCondition contiene tutte le condizioni pertinenti a una pipeline di distribuzione.
Rappresentazione JSON |
---|
{ "pipelineReadyCondition": { object ( |
Campi | |
---|---|
pipelineReadyCondition |
Dettagli sullo stato generale della pipeline. |
targetsPresentCondition |
Dettagli relativi ai target enumerati nella pipeline. |
targetsTypeCondition |
Dettagli che indicano se i target enumerati nella pipeline sono dello stesso tipo. |
PipelineReadyCondition
PipelineReadyCondition contiene informazioni sullo stato della pipeline.
Rappresentazione JSON |
---|
{ "status": boolean, "updateTime": string } |
Campi | |
---|---|
status |
True se la pipeline è in uno stato valido. In caso contrario, almeno una condizione in |
updateTime |
L'ultima volta che la condizione è stata aggiornata. Un timestamp in formato "Zulu" RFC3339 UTC, con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: |
TargetsTypeCondition
TargetTypeCondition contiene informazioni che indicano se i target definiti nella pipeline di pubblicazione sono dello stesso tipo.
Rappresentazione JSON |
---|
{ "status": boolean, "errorDetails": string } |
Campi | |
---|---|
status |
True se i target sono tutti di tipo paragonabile. Ad esempio, questo è vero se tutte le destinazioni sono cluster GKE. Questo valore è falso se alcuni target sono Cloud Run e altri sono cluster GKE. |
errorDetails |
Messaggio di errore leggibile. |
Metodi |
|
---|---|
|
Crea un nuovo DeliveryPipeline in un determinato progetto e località. |
|
Elimina una singola DeliveryPipeline. |
|
Recupera i dettagli di una singola DeliveryPipeline. |
|
Ottieni il criterio di controllo dell'accesso per una risorsa. |
|
Elenca DeliveryPipelines in un determinato progetto e in una località specifici. |
|
Aggiorna i parametri di una singola DeliveryPipeline. |
|
Crea un oggetto Rollout per eseguire il rollback del target specificato. |
|
Imposta il criterio di controllo dell'accesso sulla risorsa specificata. |
|
Restituisce le autorizzazioni di cui un chiamante dispone per la risorsa specificata. |