REST Resource: projects.locations.deliveryPipelines.releases.rollouts

Ressource: Roll-out

Eine Rollout-Ressource in der Cloud Deploy API.

Ein Rollout enthält Informationen zu einer bestimmten Bereitstellung in einem Target.

JSON-Darstellung
{
  "name": string,
  "uid": string,
  "description": string,
  "annotations": {
    string: string,
    ...
  },
  "labels": {
    string: string,
    ...
  },
  "createTime": string,
  "approveTime": string,
  "enqueueTime": string,
  "deployStartTime": string,
  "deployEndTime": string,
  "targetId": string,
  "approvalState": enum (ApprovalState),
  "state": enum (State),
  "failureReason": string,
  "deployingBuild": string,
  "etag": string,
  "deployFailureCause": enum (FailureCause),
  "phases": [
    {
      object (Phase)
    }
  ],
  "metadata": {
    object (Metadata)
  },
  "controllerRollout": string,
  "rollbackOfRollout": string,
  "rolledBackByRollouts": [
    string
  ]
}
Felder
name

string

Optional. Name von Rollout. Das Format ist projects/{project}/locations/{location}/deliveryPipelines/{deliveryPipeline}/releases/{release}/rollouts/{rollout}. Die Komponente „rollout“ muss mit „[a-z]([a-z0-9-]{0,61}[a-z0-9])?“ übereinstimmen

uid

string

Nur Ausgabe. Eindeutige Kennung von Rollout.

description

string

Beschreibung von Rollout für Nutzerzwecke. Maximale Länge: 255 Zeichen

annotations

map (key: string, value: string)

Nutzeranmerkungen Diese Attribute können nur vom Nutzer und nicht von Cloud Deploy festgelegt und verwendet werden. Weitere Informationen zu Format- und Größenbeschränkungen findest du unter https://google.aip.dev/128#annotations.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

labels

map (key: string, value: string)

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:

  • Schlüssel und Werte dürfen nur Kleinbuchstaben, numerische Zeichen, Unterstriche und Bindestriche enthalten.
  • Alle Zeichen müssen die UTF-8-Codierung verwenden; internationale Zeichen sind zulässig.
  • Schlüssel müssen mit einem Kleinbuchstaben oder einem internationalen Zeichen beginnen.
  • Jede Ressource ist auf maximal 64 Labels beschränkt.

Sowohl Schlüssel als auch Werte sind zusätzlich auf maximal 128 Byte beschränkt.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

string (Timestamp format)

Nur Ausgabe. Zeitpunkt, zu dem das Rollout erstellt wurde.

Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: "2014-10-02T15:01:23Z" und "2014-10-02T15:01:23.045123456Z".

approveTime

string (Timestamp format)

Nur Ausgabe. Zeitpunkt, zu dem der Rollout genehmigt wurde.

Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: "2014-10-02T15:01:23Z" und "2014-10-02T15:01:23.045123456Z".

enqueueTime

string (Timestamp format)

Nur Ausgabe. Zeitpunkt, zu dem das Rollout in die Warteschlange gestellt wurde.

Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: "2014-10-02T15:01:23Z" und "2014-10-02T15:01:23.045123456Z".

deployStartTime

string (Timestamp format)

Nur Ausgabe. Zeitpunkt, zu dem die Bereitstellung von Rollout begonnen hat.

Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: "2014-10-02T15:01:23Z" und "2014-10-02T15:01:23.045123456Z".

deployEndTime

string (Timestamp format)

Nur Ausgabe. Zeitpunkt, zu dem die Bereitstellung von Rollout abgeschlossen wurde.

Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: "2014-10-02T15:01:23Z" und "2014-10-02T15:01:23.045123456Z".

targetId

string

Erforderlich. Die ID des Ziels, auf dem dieser Rollout bereitgestellt wird.

approvalState

enum (ApprovalState)

Nur Ausgabe. Genehmigungsstatus von Rollout.

state

enum (State)

Nur Ausgabe. Aktueller Status von Rollout.

failureReason

string

Nur Ausgabe. Zusätzliche Informationen zum Roll-out-Fehler, falls verfügbar.

deployingBuild

string

Nur Ausgabe. Der Ressourcenname des Build-Objekts von Cloud Build, das zum Bereitstellen des Roll-outs verwendet wird. Das Format ist projects/{project}/locations/{location}/builds/{build}.

etag

string

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.

deployFailureCause

enum (FailureCause)

Nur Ausgabe. Grund für das Fehlschlagen des Roll-outs. Dies ist während des Roll-outs immer nicht angegeben.

phases[]

object (Phase)

Nur Ausgabe. Die Phasen, die die Workflows dieses Rollout darstellen.

metadata

object (Metadata)

Nur Ausgabe. Metadaten enthalten Informationen zum Roll-out.

controllerRollout

string

Nur Ausgabe. Name von ControllerRollout. Das Format ist projects/{project}/locations/{location}/deliveryPipelines/{deliveryPipeline}/releases/{release}/rollouts/{rollout}.

rollbackOfRollout

string

Nur Ausgabe. Name der Rollout, für die durch diesen Rollout ein Rollback durchgeführt wird. Leer, wenn diese Rollout nicht als Rollback erstellt wurde.

rolledBackByRollouts[]

string

Nur Ausgabe. Namen von Rollouts, für die ein Rollback für diese Rollout durchgeführt wurde.

ApprovalState

Gültige Genehmigungsstatus einer Rollout.

Enums
APPROVAL_STATE_UNSPECIFIED Der Genehmigungsstatus der Rollout ist nicht spezifiziert.
NEEDS_APPROVAL Für Rollout ist eine Genehmigung erforderlich.
DOES_NOT_NEED_APPROVAL Der Rollout erfordert keine Genehmigung.
APPROVED Rollout wurde genehmigt.
REJECTED Rollout wurde abgelehnt.

Status

Gültige Statuswerte für Rollout.

Enums
STATE_UNSPECIFIED Der Status der Rollout ist nicht spezifiziert.
SUCCEEDED Rollout wurde erfolgreich abgeschlossen.
FAILED Fehler beim Rollout.
IN_PROGRESS Rollout wird bereitgestellt.
PENDING_APPROVAL Rollout muss genehmigt werden.
APPROVAL_REJECTED Ein Genehmiger hat die Rollout abgelehnt.
PENDING Rollout wartet auf den Abschluss eines oder mehrerer früherer Roll-outs auf diesem Target.
PENDING_RELEASE Das Rollout wartet darauf, dass das Release-Element vollständig gerendert wurde.
CANCELLING Rollout wird gerade abgebrochen.
CANCELLED Rollout wurde abgebrochen.
HALTED Rollout wird angehalten.

FailureCause

Bekannte Roll-out-Fehler.

Enums
FAILURE_CAUSE_UNSPECIFIED Es wurde kein Grund für den Fehler angegeben.
CLOUD_BUILD_UNAVAILABLE Cloud Build ist nicht verfügbar, weil es nicht aktiviert ist oder Cloud Deploy unzureichende Berechtigungen hat. Siehe Erforderliche Berechtigung.
EXECUTION_FAILED Der Bereitstellungsvorgang wurde nicht erfolgreich abgeschlossen. Prüfen Sie die Cloud Build-Logs.
DEADLINE_EXCEEDED Die Bereitstellung wurde nicht innerhalb der vorgesehenen Zeit abgeschlossen.
RELEASE_FAILED Der Release hat den Status „Fehlgeschlagen“.
RELEASE_ABANDONED Der Release wurde verworfen.
VERIFICATION_CONFIG_NOT_FOUND Es wurde keine Skaffold-Überprüfungskonfiguration gefunden.
CLOUD_BUILD_REQUEST_FAILED Cloud Build konnte die Anfrage von Cloud Deploy nicht ausführen. Weitere Informationen finden Sie unter „failMessage“.
OPERATION_FEATURE_NOT_SUPPORTED Für einen Roll-out-Vorgang wurde eine nicht unterstützte Funktion konfiguriert.

Phase

„Phase“ stellt eine Sammlung von Jobs dar, die für eine Rollout logisch gruppiert sind.

JSON-Darstellung
{
  "id": string,
  "state": enum (State),
  "skipMessage": string,

  // Union field jobs can be only one of the following:
  "deploymentJobs": {
    object (DeploymentJobs)
  },
  "childRolloutJobs": {
    object (ChildRolloutJobs)
  }
  // End of list of possible types for union field jobs.
}
Felder
id

string

Nur Ausgabe. Die ID der Phase.

state

enum (State)

Nur Ausgabe. Aktueller Status der Phase.

skipMessage

string

Nur Ausgabe. Zusätzliche Informationen dazu, warum die Phase übersprungen wurde, falls verfügbar.

Union-Feld jobs. Die Jobzusammensetzung in dieser Phase. Für jobs ist nur einer der folgenden Werte zulässig:
deploymentJobs

object (DeploymentJobs)

Nur Ausgabe. Zusammensetzung des Bereitstellungsjobs.

childRolloutJobs

object (ChildRolloutJobs)

Nur Ausgabe. ChildRollout-Jobzusammensetzung.

Status

Gültige Zustände einer Phase.

Enums
STATE_UNSPECIFIED Die Phase hat einen nicht angegebenen Status.
PENDING Die Phase wartet darauf, dass eine oder mehrere frühere Phase(n) abgeschlossen sind.
IN_PROGRESS Die Phase läuft.
SUCCEEDED Die Phase war erfolgreich.
FAILED Die Phase ist fehlgeschlagen.
ABORTED Die Phase wurde abgebrochen.
SKIPPED Die Phase wurde übersprungen.

DeploymentJobs

Zusammensetzung des Bereitstellungsjobs.

JSON-Darstellung
{
  "deployJob": {
    object (Job)
  },
  "verifyJob": {
    object (Job)
  },
  "predeployJob": {
    object (Job)
  },
  "postdeployJob": {
    object (Job)
  }
}
Felder
deployJob

object (Job)

Nur Ausgabe. Der Bereitstellungsjob. Dies ist der Bereitstellungsjob in der Phase.

verifyJob

object (Job)

Nur Ausgabe. Der Verification-Job. Wird nach einer Bereitstellung ausgeführt, wenn die Bereitstellung erfolgreich ist.

predeployJob

object (Job)

Nur Ausgabe. Der Vorbereitstellungsjob, der der erste Job in der Phase ist.

postdeployJob

object (Job)

Nur Ausgabe. Der postdeploy-Job, der der letzte Job in der Phase ist.

Job

„Job“ stellt einen Vorgang für einen Rollout dar.

JSON-Darstellung
{
  "id": string,
  "state": enum (State),
  "skipMessage": string,
  "jobRun": string,

  // Union field job_type can be only one of the following:
  "deployJob": {
    object (DeployJob)
  },
  "verifyJob": {
    object (VerifyJob)
  },
  "predeployJob": {
    object (PredeployJob)
  },
  "postdeployJob": {
    object (PostdeployJob)
  },
  "createChildRolloutJob": {
    object (CreateChildRolloutJob)
  },
  "advanceChildRolloutJob": {
    object (AdvanceChildRolloutJob)
  }
  // End of list of possible types for union field job_type.
}
Felder
id

string

Nur Ausgabe. Die ID des Jobs.

state

enum (State)

Nur Ausgabe. Der aktuelle Status des Jobs.

skipMessage

string

Nur Ausgabe. Zusätzliche Informationen dazu, warum der Job übersprungen wurde, falls verfügbar.

jobRun

string

Nur Ausgabe. Der Name des JobRun, der für den letzten Aufruf dieses Jobs verantwortlich ist.

Union-Feld job_type. Die Art des Jobs. Für job_type ist nur einer der folgenden Werte zulässig:
deployJob

object (DeployJob)

Nur Ausgabe. Einen Bereitstellungsjob

verifyJob

object (VerifyJob)

Nur Ausgabe. Einen Verifizierungsjob.

predeployJob

object (PredeployJob)

Nur Ausgabe. Einen Vorabbereitstellungsjob.

postdeployJob

object (PostdeployJob)

Nur Ausgabe. Ein Postdeploy-Job.

createChildRolloutJob

object (CreateChildRolloutJob)

Nur Ausgabe. Einen createChildRollout-Job.

advanceChildRolloutJob

object (AdvanceChildRolloutJob)

Nur Ausgabe. Einen Advantage-Rollout-Job.

Status

Gültige Statuswerte eines Jobs.

Enums
STATE_UNSPECIFIED Der Status des Jobs ist nicht spezifiziert.
PENDING Der Job wartet darauf, dass eine oder mehrere frühere Phase(n) oder Jobs abgeschlossen werden.
DISABLED Der Job ist deaktiviert.
IN_PROGRESS Der Job wird ausgeführt.
SUCCEEDED Der Job wurde erfolgreich ausgeführt.
FAILED Der Job ist fehlgeschlagen.
ABORTED Der Job wurde abgebrochen.
SKIPPED Der Job wurde übersprungen.
IGNORED Der Job wurde ignoriert.

DeployJob

Dieser Typ hat keine Felder.

Einen Bereitstellungsjob

VerifyJob

Dieser Typ hat keine Felder.

Einen Verifizierungsjob.

PredeployJob

Einen Vorabbereitstellungsjob.

JSON-Darstellung
{
  "actions": [
    string
  ]
}
Felder
actions[]

string

Nur Ausgabe. Die benutzerdefinierten Aktionen, die der Vorbereitstellungsjob ausführt.

PostdeployJob

Ein Postdeploy-Job.

JSON-Darstellung
{
  "actions": [
    string
  ]
}
Felder
actions[]

string

Nur Ausgabe. Die benutzerdefinierten Aktionen, die der Postdeploy-Job ausführt.

CreateChildRolloutJob

Dieser Typ hat keine Felder.

Einen createChildRollout-Job.

AdvanceChildRolloutJob

Dieser Typ hat keine Felder.

Einen Advantage-Rollout-Job.

ChildRolloutJobs

ChildRollouts-Jobzusammensetzung

JSON-Darstellung
{
  "createRolloutJobs": [
    {
      object (Job)
    }
  ],
  "advanceRolloutJobs": [
    {
      object (Job)
    }
  ]
}
Felder
createRolloutJobs[]

object (Job)

Nur Ausgabe. Liste der CreateChildRolloutJobs

advanceRolloutJobs[]

object (Job)

Nur Ausgabe. Liste der AdvanceChildRolloutJobs

Metadaten

Metadaten enthalten Informationen, die mit einem Rollout verknüpft sind.

JSON-Darstellung
{
  "cloudRun": {
    object (CloudRunMetadata)
  },
  "automation": {
    object (AutomationRolloutMetadata)
  },
  "custom": {
    object (CustomMetadata)
  }
}
Felder
cloudRun

object (CloudRunMetadata)

Nur Ausgabe. Der Name des Cloud Run-Dienstes, der einem Rollout zugeordnet ist.

automation

object (AutomationRolloutMetadata)

Nur Ausgabe. AutomationRolloutMetadata enthalten die Informationen zu den Interaktionen zwischen dem Automatisierungsdienst und diesem Roll-out.

custom

object (CustomMetadata)

Nur Ausgabe. Benutzerdefinierte Metadaten, die durch benutzerdefinierte Rollout-Vorgänge bereitgestellt werden.

AutomationRolloutMetadata

AutomationRolloutMetadata enthalten Automatisierungsaktionen, die bei einem Roll-out ausgeführt wurden.

JSON-Darstellung
{
  "promoteAutomationRun": string,
  "advanceAutomationRuns": [
    string
  ],
  "repairAutomationRuns": [
    string
  ],
  "currentRepairAutomationRun": string
}
Felder
promoteAutomationRun

string

Nur Ausgabe. Die ID des AutomationRun, der durch eine Hochstufungs-Release-Regel initiiert wurde.

advanceAutomationRuns[]

string

Nur Ausgabe. Die IDs der AutomationRuns, die durch eine Regel für das Fortsetzen von Roll-outs initiiert wurden.

repairAutomationRuns[]

string

Nur Ausgabe. Die IDs der AutomationRuns, die durch eine Reparatur-Roll-out-Regel initiiert wurden.

currentRepairAutomationRun

string

Nur Ausgabe. Der aktuelle AutomationRun, der das Roll-out repariert.

Methoden

advance

Bringt ein Roll-out in einem bestimmten Projekt und an einem bestimmten Standort voran.

approve

Genehmigt ein Roll-out.

cancel

Bricht ein Roll-out in einem bestimmten Projekt und an einem bestimmten Standort ab.

create

Erstellt ein neues Roll-out in einem bestimmten Projekt und an einem Standort.

get

Ruft Details zu einem einzelnen Roll-out ab.

ignoreJob

Ignoriert den angegebenen Job in einem Rollout.

list

Listet Roll-outs in einem bestimmten Projekt und an einem bestimmten Standort auf.

retryJob

Versucht den angegebenen Job in einem Roll-out noch einmal.