- Ressource: DeliveryPipeline
- JSON-Darstellung
- SerialPipeline
- Phase
- Strategie
- Standard
- Vorab bereitstellen
- Nach der Bereitstellung
- Canary-Version
- RuntimeConfig
- KubernetesConfig
- GatewayServiceMesh
- ServiceNetworking
- CloudRunConfig
- CanaryDeployment
- CustomCanaryDeployment
- PhaseConfig
- DeployParameters
- PipelineCondition
- PipelineReadyCondition
- TargetsTypeCondition
- Methoden
Ressource: DeliveryPipeline
Eine DeliveryPipeline
-Ressource in der Cloud Deploy API.
Ein DeliveryPipeline
definiert eine Pipeline, die eine Skaffold-Konfiguration durchlaufen kann.
JSON-Darstellung |
---|
{ "name": string, "uid": string, "description": string, "annotations": { string: string, ... }, "labels": { string: string, ... }, "createTime": string, "updateTime": string, "condition": { object ( |
Felder | |
---|---|
name |
Optional. Name von |
uid |
Nur Ausgabe. Eindeutige Kennung von |
description |
Beschreibung von |
annotations |
Nutzeranmerkungen Diese Attribute können nur vom Nutzer und nicht von Cloud Deploy festgelegt und verwendet werden. Ein Objekt, das eine Liste von |
labels |
Labels sind Attribute, die sowohl vom Nutzer als auch von Cloud Deploy festgelegt und verwendet werden können. Labels müssen die folgenden Einschränkungen erfüllen:
Sowohl Schlüssel als auch Werte sind zusätzlich auf maximal 128 Byte beschränkt. Ein Objekt, das eine Liste von |
createTime |
Nur Ausgabe. Zeitpunkt, zu dem die Pipeline erstellt wurde. Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: |
updateTime |
Nur Ausgabe. Zeitpunkt, zu dem die Pipeline zuletzt aktualisiert wurde. Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: |
condition |
Nur Ausgabe. Informationen zum Status der Bereitstellungspipeline. |
etag |
Diese Prüfsumme wird vom Server basierend auf dem Wert anderer Felder berechnet und kann bei Aktualisierungs- und Löschanfragen gesendet werden, um sicherzustellen, dass der Client vor dem Fortfahren über einen aktuellen Wert verfügt. |
suspended |
Wenn das Konto gesperrt ist, können keine neuen Releases oder Roll-outs erstellt werden. Laufende Releases werden jedoch abgeschlossen. |
Union-Feld pipeline . Die Bestellkonfiguration von DeliveryPipeline . Für pipeline ist nur einer der folgenden Werte zulässig: |
|
serialPipeline |
SerialPipeline definiert eine sequenzielle Reihe von Phasen für eine |
SerialPipeline
SerialPipeline definiert eine sequenzielle Reihe von Phasen für eine DeliveryPipeline
.
JSON-Darstellung |
---|
{
"stages": [
{
object ( |
Felder | |
---|---|
stages[] |
Jede Phase definiert die Konfiguration für eine |
Phase
Die Phase gibt den Standort für die Bereitstellung an.
JSON-Darstellung |
---|
{ "targetId": string, "profiles": [ string ], "strategy": { object ( |
Felder | |
---|---|
targetId |
Die targetId, auf die diese Phase verweist. Dieses Feld bezieht sich ausschließlich auf das letzte Segment eines Zielnamens. Dieses Feld würde beispielsweise nur |
profiles[] |
Skaffold-Profile, die beim Rendern des Manifests für die |
strategy |
Optional. Die Strategie, die für |
deployParameters[] |
Optional. Die Bereitstellungsparameter, die in dieser Phase für das Ziel verwendet werden sollen. |
Strategie
Die Strategie enthält Informationen zur Bereitstellungsstrategie.
JSON-Darstellung |
---|
{ // Union field |
Felder | |
---|---|
Union-Feld deployment_strategy . Details zur Bereitstellungsstrategie Für deployment_strategy ist nur einer der folgenden Werte zulässig: |
|
standard |
Bei der Standardbereitstellungsstrategie wird eine einzelne Bereitstellung ausgeführt und sie kann geprüft werden. |
canary |
Die Canary-Bereitstellungsstrategie bietet schrittweise prozentuale Bereitstellungen für ein Ziel. |
Standard
„Standard“ steht für die Standardbereitstellungsstrategie.
JSON-Darstellung |
---|
{ "verify": boolean, "predeploy": { object ( |
Felder | |
---|---|
verify |
Gibt an, ob eine Bereitstellung geprüft werden soll. |
predeploy |
Optional. Konfiguration für den Vorabbereitstellungsjob. Wenn dies nicht konfiguriert ist, ist kein Vorab-Bereitstellungsjob vorhanden. |
postdeploy |
Optional. Konfiguration für den Postdeploy-Job. Wenn dies nicht konfiguriert ist, ist kein Job nach der Bereitstellung vorhanden. |
Vor Bereitstellung
„Predeploy“ enthält die Konfigurationsinformationen des Jobs zum Vorbereitstellungsjob.
JSON-Darstellung |
---|
{ "actions": [ string ] } |
Felder | |
---|---|
actions[] |
Optional. Eine Abfolge von benutzerdefinierten Skaffold-Aktionen, die während der Ausführung des Pre-Deploy-Jobs aufgerufen werden sollen. |
Nach Bereitstellung
Postdeploy enthält die Konfigurationsinformationen des postdeploy-Jobs.
JSON-Darstellung |
---|
{ "actions": [ string ] } |
Felder | |
---|---|
actions[] |
Optional. Eine Abfolge von benutzerdefinierten Skaffold-Aktionen, die während der Ausführung des Postdeploy-Jobs aufgerufen werden. |
Canary
Canary stellt die Canary-Bereitstellungsstrategie dar.
JSON-Darstellung |
---|
{ "runtimeConfig": { object ( |
Felder | |
---|---|
runtimeConfig |
Optional. Laufzeitspezifische Konfigurationen für die Bereitstellungsstrategie. Mit der Laufzeitkonfiguration wird bestimmt, wie Cloud Deploy den Traffic aufteilt, um eine progressive Bereitstellung zu ermöglichen. |
Union-Feld mode . Der Modus, der für die Canary-Bereitstellungsstrategie verwendet werden soll. Für mode ist nur einer der folgenden Werte zulässig: |
|
canaryDeployment |
Konfiguriert die progressive Bereitstellung für ein Ziel. |
customCanaryDeployment |
Konfiguriert die progressive Bereitstellung für ein Ziel, ermöglicht jedoch eine Anpassung auf Phasenebene, wobei eine Phase jede der prozentualen Bereitstellungen repräsentiert. |
RuntimeConfig
RuntimeConfig enthält die laufzeitspezifischen Konfigurationen für eine Bereitstellungsstrategie.
JSON-Darstellung |
---|
{ // Union field |
Felder | |
---|---|
Union-Feld runtime_config . Die Details zur Laufzeitkonfiguration. Für runtime_config ist nur einer der folgenden Werte zulässig: |
|
kubernetes |
Kubernetes-Laufzeitkonfiguration |
cloudRun |
Cloud Run-Laufzeitkonfiguration |
KubernetesConfig
KubernetesConfig enthält die Kubernetes-Laufzeitkonfiguration.
JSON-Darstellung |
---|
{ // Union field |
Felder | |
---|---|
Union-Feld service_definition . Die Dienstdefinitionskonfiguration. Für service_definition ist nur einer der folgenden Werte zulässig: |
|
gatewayServiceMesh |
Service Mesh-Konfiguration der Kubernetes Gateway API |
serviceNetworking |
Netzwerkkonfiguration des Kubernetes-Dienstes. |
GatewayServiceMesh
Informationen zur Service Mesh-Konfiguration der Kubernetes Gateway API.
JSON-Darstellung |
---|
{ "httpRoute": string, "service": string, "deployment": string, "routeUpdateWaitTime": string, "stableCutbackDuration": string } |
Felder | |
---|---|
httpRoute |
Erforderlich. Name der Gateway API-HTTP-Route. |
service |
Erforderlich. Name des Kubernetes-Dienstes. |
deployment |
Erforderlich. Name des Kubernetes-Deployments, dessen Traffic von der angegebenen HTTPRoute und dem angegebenen Dienst verwaltet wird. |
routeUpdateWaitTime |
Optional. Die Zeit, die gewartet wird, bis Routenaktualisierungen weitergegeben werden. Die maximal konfigurierbare Zeit beträgt 3 Stunden im Sekundenformat. Wenn keine Vorgabe erfolgt, gibt es keine Wartezeit. Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit " |
stableCutbackDuration |
Optional. Die Zeit für die Migration des Traffics vom Canary-Dienst zum ursprünglichen Dienst während der Bereitstellung in der stabilen Phase. Falls angegeben, muss der Wert zwischen 15 und 3.600 Sekunden liegen. Wenn keine Vorgabe erfolgt, gibt es keine Zeitverkürzung. Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit " |
ServiceNetworking
Informationen zur Netzwerkkonfiguration des Kubernetes-Dienstes.
JSON-Darstellung |
---|
{ "service": string, "deployment": string, "disablePodOverprovisioning": boolean } |
Felder | |
---|---|
service |
Erforderlich. Name des Kubernetes-Dienstes. |
deployment |
Erforderlich. Name des Kubernetes-Deployments, dessen Traffic vom angegebenen Dienst verwaltet wird. |
disablePodOverprovisioning |
Optional. Gibt an, ob die Pod-Überbereitstellung deaktiviert werden soll. Wenn die Pod-Überbereitstellung deaktiviert ist, begrenzt Cloud Deploy die Gesamtzahl der für die Bereitstellungsstrategie verwendeten Pods auf die Anzahl der Pods im Deployment im Cluster. |
CloudRunConfig
CloudRunConfig enthält die Cloud Run-Laufzeitkonfiguration.
JSON-Darstellung |
---|
{ "automaticTrafficControl": boolean, "canaryRevisionTags": [ string ], "priorRevisionTags": [ string ], "stableRevisionTags": [ string ] } |
Felder | |
---|---|
automaticTrafficControl |
Gibt an, ob Cloud Deploy die Traffic-Stanza in einem Cloud Run-Dienst im Namen des Nutzers aktualisieren soll, um die Trafficaufteilung zu vereinfachen. Dies muss für CanaryDeployments zutreffen, für CustomCanaryDeployments jedoch optional sein. |
canaryRevisionTags[] |
Optional. Eine Liste der Tags, die der Canary-Version während der Canary-Phase hinzugefügt werden. |
priorRevisionTags[] |
Optional. Eine Liste der Tags, die der vorherigen Überarbeitung während der Canary-Phase hinzugefügt wurden. |
stableRevisionTags[] |
Optional. Eine Liste von Tags, die der endgültigen stabilen Version hinzugefügt werden, wenn die stabile Phase beginnt. |
CanaryDeployment
„CanaryDeployment“ stellt die Canary-Deployment-Konfiguration dar
JSON-Darstellung |
---|
{ "percentages": [ integer ], "verify": boolean, "predeploy": { object ( |
Felder | |
---|---|
percentages[] |
Erforderlich. Die prozentualen Bereitstellungen, die als Teil einer |
verify |
Gibt an, ob Verifizierungstests nach jeder prozentualen Bereitstellung ausgeführt werden sollen. |
predeploy |
Optional. Konfiguration für den Vorbereitstellungsjob der ersten Phase. Wenn dies nicht konfiguriert ist, gibt es für diese Phase keinen Vorab-Job. |
postdeploy |
Optional. Konfiguration für den Postdeploy-Job der letzten Phase. Wenn dies nicht konfiguriert ist, gibt es für diese Phase keinen Nachbereitstellungsjob. |
CustomCanaryDeployment
CustomCanaryDeployment stellt die benutzerdefinierte Canary-Deployment-Konfiguration dar.
JSON-Darstellung |
---|
{
"phaseConfigs": [
{
object ( |
Felder | |
---|---|
phaseConfigs[] |
Erforderlich. Konfiguration für jede Phase des Canary-Deployments in der ausgeführten Reihenfolge. |
PhaseConfig
PhaseConfig stellt die Konfiguration für eine Phase im benutzerdefinierten Canary-Deployment dar.
JSON-Darstellung |
---|
{ "phaseId": string, "percentage": integer, "profiles": [ string ], "verify": boolean, "predeploy": { object ( |
Felder | |
---|---|
phaseId |
Erforderlich. Die ID, die der Phase |
percentage |
Erforderlich. Prozentuale Implementierung für die Phase. |
profiles[] |
Skaffold-Profile, die beim Rendern des Manifests für diese Phase verwendet werden sollen. Sie gelten zusätzlich zu der Profilliste, die in der Phase |
verify |
Gibt an, ob Verifizierungstests nach der Bereitstellung ausgeführt werden sollen. |
predeploy |
Optional. Konfiguration für den Vorbereitstellungsjob in dieser Phase. Wenn dies nicht konfiguriert ist, gibt es für diese Phase keinen Vorab-Job. |
postdeploy |
Optional. Konfiguration für den Postdeploy-Job in dieser Phase. Wenn dies nicht konfiguriert ist, gibt es für diese Phase keinen Nachbereitstellungsjob. |
DeployParameters
DeployParameters enthält Informationen zu Bereitstellungsparametern.
JSON-Darstellung |
---|
{ "values": { string: string, ... }, "matchTargetLabels": { string: string, ... } } |
Felder | |
---|---|
values |
Erforderlich. Werte sind Bereitstellungsparameter in Schlüssel/Wert-Paaren. Ein Objekt, das eine Liste von |
matchTargetLabels |
Optional. Bereitstellungsparameter werden auf Ziele mit Übereinstimmungslabels angewendet. Wenn Sie nichts angeben, werden Bereitstellungsparameter auf alle Ziele angewendet (einschließlich der untergeordneten Ziele eines Multi-Ziels). Ein Objekt, das eine Liste von |
PipelineCondition
PipelineCondition enthält alle Bedingungen, die für eine Bereitstellungspipeline relevant sind.
JSON-Darstellung |
---|
{ "pipelineReadyCondition": { object ( |
Felder | |
---|---|
pipelineReadyCondition |
Details zum Gesamtstatus der Pipeline. |
targetsPresentCondition |
Details zu in der Pipeline aufgezählten Zielen. |
targetsTypeCondition |
Details dazu, ob die in der Pipeline aufgeführten Ziele denselben Typ haben. |
PipelineReadyCondition
PipelineReadyCondition enthält Informationen zum Status der Pipeline.
JSON-Darstellung |
---|
{ "status": boolean, "updateTime": string } |
Felder | |
---|---|
status |
True, wenn die Pipeline einen gültigen Status hat. Andernfalls hat mindestens eine Bedingung in |
updateTime |
Zeitpunkt der letzten Aktualisierung der Bedingung. Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: |
TargetsTypeCondition
TargetsTypeCondition enthält Informationen darüber, ob die in der Bereitstellungspipeline definierten Ziele vom gleichen Typ sind.
JSON-Darstellung |
---|
{ "status": boolean, "errorDetails": string } |
Felder | |
---|---|
status |
Dieser Wert ist „True“, wenn alle Ziele einen vergleichbaren Typ haben. Dies gilt beispielsweise, wenn alle Ziele GKE-Cluster sind. Dies ist falsch, wenn einige Ziele Cloud Run-Ziele und andere GKE-Cluster sind. |
errorDetails |
Menschenlesbare Fehlermeldung. |
Methoden |
|
---|---|
|
Erstellt eine neue DeliveryPipeline in einem bestimmten Projekt und an einem bestimmten Standort. |
|
Löscht eine einzelne DeliveryPipeline. |
|
Ruft Details zu einer einzelnen DeliveryPipeline ab. |
|
Ruft die Richtlinie für die Zugriffssteuerung für eine Ressource ab. |
|
Listet DeliveryPipelines in einem bestimmten Projekt und an einem bestimmten Standort auf. |
|
Aktualisiert die Parameter einer einzelnen DeliveryPipeline. |
|
Erstellt einen Rollout für das Rollback des angegebenen Ziels. |
|
Legt die Richtlinie für die Zugriffssteuerung für die angegebene Ressource fest. |
|
Gibt die Berechtigungen des Aufrufers für die angegebene Ressource zurück. |