REST Resource: projects.locations.rollouts

Ressource: Rollout

Stellt eine einzelne Rollout-Ausführung und ihre Ergebnisse dar.

JSON-Darstellung
{
  "name": string,
  "release": string,
  "startTime": string,
  "endTime": string,
  "state": enum (RolloutState),
  "stateMessage": string,
  "stateTransitionTime": string,
  "rootRollout": string,
  "parentRollout": string,
  "rolloutOrchestrationStrategy": string,
  "unitFilter": string,
  "rolloutKind": string,
  "stats": {
    object (RolloutStats)
  },
  "control": {
    object (RolloutControl)
  },
  "effectiveUnitFilter": string,
  "labels": {
    string: string,
    ...
  },
  "annotations": {
    string: string,
    ...
  },
  "uid": string,
  "etag": string,
  "createTime": string,
  "updateTime": string,
  "deleteTime": string
}
Felder
name

string

ID. Der Ressourcenname (vollständiger URI der Ressource) gemäß dem Standardbenennungsschema:

"projects/{project}/locations/{location}/rollout/{rolloutId}"

release

string

Optional. Nicht veränderbar. Name des Release, das auf Zielgeräte übertragen wird. Erforderlich, wenn kein anderer Release-Typ angegeben ist.

startTime

string (Timestamp format)

Optional. Nur Ausgabe. Der Zeitpunkt, zu dem die Einführung gestartet wurde. Ist leer, wenn der Roll-out noch nicht begonnen hat.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

endTime

string (Timestamp format)

Optional. Nur Ausgabe. Die Zeit, zu der die Ausführung des Rollouts abgeschlossen wurde (unabhängig davon, ob er erfolgreich war, fehlgeschlagen ist oder abgebrochen wurde). Ist leer, wenn der Roll-out noch nicht abgeschlossen ist. Sobald der Roll-out festgelegt ist, befindet er sich im Endstatus und alle Ergebnisse sind endgültig.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30"

state

enum (RolloutState)

Nur Ausgabe. Aktueller Status des Rollouts.

stateMessage

string

Nur Ausgabe. Eine menschenlesbare Nachricht mit Details zur letzten Statusänderung.

stateTransitionTime

string (Timestamp format)

Optional. Nur Ausgabe. Der Zeitpunkt, zu dem der Roll-out in den aktuellen Status übergegangen ist.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

rootRollout

string

Optional. Nur Ausgabe. Das Stamm-Roll-out, aus dem dieses Roll-out stammt. Der Ressourcenname (vollständiger URI der Ressource) gemäß dem Standardbenennungsschema:

"projects/{project}/locations/{location}/rollouts/{rolloutId}"

parentRollout

string

Optional. Nur Ausgabe. Das direkte übergeordnete Roll-out, aus dem dieses Roll-out stammt. Der Ressourcenname (vollständiger URI der Ressource) gemäß dem Standardbenennungsschema:

"projects/{project}/locations/{location}/rollouts/{rolloutId}"

rolloutOrchestrationStrategy

string

Optional. Die Strategie, die für die Ausführung dieses Roll-outs verwendet wird. Diese Strategie überschreibt die im RolloutKind angegebene Strategie. Wenn beim Erstellen keine Strategie angegeben wird, wird die Strategie aus „RolloutKind“ verwendet.

Es gibt zwei unterstützte Wertestrategien, mit denen die Steuerung erfolgt: „Google.Cloud.Simple.AllAtOnce“ und „Google.Cloud.Simple.OneLocationAtATime“.

Bei einem Roll‑out mit einer dieser einfachen Strategien erfolgt das Roll‑out an allen Standorten, die in den SaaS-Standorten der Ziel-UnitKind definiert sind.

unitFilter

string

Optional. CEL-formatierter Filterstring(https://github.com/google/cel-spec) für die Einheit. Der Filter wird angewendet, um die infrage kommende Einheitenpopulation zu ermitteln. Mit diesem Filter kann der Umfang des Roll-outs nur verringert, nicht aber erweitert werden. Wenn nicht angegeben, wird der „unitFilter“ aus „RolloutKind“ verwendet.

rolloutKind

string

Optional. Nicht veränderbar. Name des RolloutKind, aus dem dieses Rollout stammt und an das es sich hält.

stats

object (RolloutStats)

Optional. Nur Ausgabe. Details zum Fortschritt des Rollouts.

control

object (RolloutControl)

Optional. Die Ausführung dieses Roll-outs wurde geändert. Die Standardeinstellung für RolloutControl.action ist ROLLOUT_ACTION_RUN. Das bedeutet, dass das Rollout bis zum Abschluss ausgeführt wird und alle natürlichen Rollout-Status durchlaufen werden (z. B. RUNNING –> SUCCEEDED oder RUNNING –> FAILED). Anfragen können nur gestellt werden, wenn sich der Roll-out in einem nicht endgültigen Status befindet.

effectiveUnitFilter

string

Optional. Nur Ausgabe. Gibt nur einen Snapshot des effektiven Gerätefilters zum Zeitpunkt des Roll-out-Beginns aus. Enthält einen CEL-Ausdruck(https://github.com/google/cel-spec), der aus einer Konjunktion von „Rollout.unit_filter“ und „RolloutKind.unit_filter“ besteht. In diesem Feld wird der Filter erfasst, der vom Rollout verwendet wird, um die Einheitenpopulation zu bestimmen. Wenn der unitFilter des zugehörigen RolloutKind nach Beginn des Rollouts geändert wird, wird er hier nicht aktualisiert.

labels

map (key: string, value: string)

Optional. Die Labels der Ressource, die zur Kategorisierung verwendet werden können, ähnlich wie Kubernetes-Ressourcenlabels.

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

annotations

map (key: string, value: string)

Optional. „Annotations“ ist eine unstrukturierte Schlüssel/Wert-Zuordnung, die mit einer Ressource gespeichert wird und von externen Tools festgelegt werden kann, um beliebige Metadaten zu speichern und abzurufen. Sie können nicht abgefragt werden und sollten beim Ändern von Objekten beibehalten werden.

Weitere Informationen: https://kubernetes.io/docs/user-guide/annotations

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

uid

string

Nur Ausgabe. Die eindeutige Kennzeichnung der Ressource. Die UID gilt zeitlich und räumlich im Rahmen des Dienstes nur für diese eine Ressource. Sie wird in der Regel nach dem Erstellen der Ressource vom Server generiert und darf nicht geändert werden. Die UID dient dazu, Ressourcen, deren Namen wiederverwendet werden, eindeutig zu kennzeichnen. Dies sollte eine UUID4 sein.

etag

string

Nur Ausgabe. Ein opaker Wert, der eine Version oder Generation einer Ressource eindeutig kennzeichnet. Damit kann bestätigt werden, dass Client und Server der Reihenfolge einer Ressource, die gerade geschrieben wird, zustimmen.

createTime

string (Timestamp format)

Nur Ausgabe. Der Zeitstempel, der angibt, wann die Ressource erstellt wurde.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30"

updateTime

string (Timestamp format)

Nur Ausgabe. Der Zeitstempel, der angibt, wann die Ressource zuletzt aktualisiert wurde. Wenn Nutzer Änderungen an der Ressource vornehmen, muss dieser Wert aktualisiert werden. Gleiches gilt bei Änderungen an der Ressource durch den Dienst.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30"

deleteTime

string (Timestamp format)

Nur Ausgabe. Der Zeitstempel, der angibt, wann die Ressource zum Löschen markiert wurde. Das Löschen ist ein asynchroner Vorgang.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

RolloutState

Der aktuelle Status des Rollouts.

Enums
ROLLOUT_STATE_UNSPECIFIED Nicht angegebener Zustand.
ROLLOUT_STATE_RUNNING Die Funktion wird derzeit eingeführt.
ROLLOUT_STATE_PAUSED Die Einführung wurde pausiert.
ROLLOUT_STATE_SUCCEEDED Die Einführung wurde erfolgreich abgeschlossen.
ROLLOUT_STATE_FAILED Der Roll-out ist fehlgeschlagen.
ROLLOUT_STATE_CANCELLED Das Roll-out wurde abgebrochen.
ROLLOUT_STATE_WAITING Der Roll-out wartet auf die Erfüllung einer Bedingung, bevor er gestartet wird.
ROLLOUT_STATE_CANCELLING Der Roll-out wird abgebrochen.
ROLLOUT_STATE_RESUMING Der Roll-out wird fortgesetzt.
ROLLOUT_STATE_PAUSING Die Einführung wird pausiert.

RolloutStats

„RolloutStats“ enthält Informationen zum Fortschritt eines Roll-outs.

JSON-Darstellung
{
  "operationsByState": [
    {
      object (Aggregate)
    }
  ]
}
Felder
operationsByState[]

object (Aggregate)

Optional. Nur Ausgabe. Unsortierte Liste. Eine Aufschlüsselung des Fortschritts der durch das Rollout ausgelösten Vorgänge. Gibt die Anzahl der Vorgänge nach Status an. So lässt sich die Anzahl der Einheiten ermitteln, die aktualisiert wurden oder aktualisiert werden sollen.

Pro Gruppe gibt es höchstens einen Eintrag. Mögliche Werte für Vorgangsgruppen sind: - "SCHEDULED" (Geplant) - "PENDING" (Ausstehend) - "RUNNING" (Wird ausgeführt) - "SUCCEEDED" (Erfolgreich) - "FAILED" (Fehler) - "CANCELLED" (Abgebrochen)

Aggregat

Stellt die Aggregation einer Reihe von Datensätzen mit ähnlichen Merkmalen nach einer bestimmten Gruppe dar. Beispielsweise kann eine Sammlung von Einheiten nach ihrem Status aggregiert und gruppiert werden.

JSON-Darstellung
{
  "group": string,
  "count": integer
}
Felder
group

string

Erforderlich. Gruppe, nach der aggregiert werden soll.

count

integer

Erforderlich. Anzahl der Datensätze in der Gruppe.

RolloutControl

Mit RolloutControl können Sie eine Änderung an der Ausführung eines Rollouts anfordern, indem Sie ihn pausieren oder abbrechen.

JSON-Darstellung
{
  "action": enum (RolloutAction),

  // Union field action_params can be only one of the following:
  "runParams": {
    object (RunRolloutActionParams)
  }
  // End of list of possible types for union field action_params.
}
Felder
action

enum (RolloutAction)

Erforderlich. Aktion, die für den Rollout ausgeführt werden soll. Standardmäßig wird der Roll-out so lange ausgeführt, bis er auf natürliche Weise einen Endstatus erreicht.

Union-Feld action_params. Einstellung für die Aktion. Die Einstellung muss mit der Aktion übereinstimmen, z.B. dürfen bei action=RUN nur run_params festgelegt oder alle Parameter weggelassen werden. Es ist ein Fehler, eine Einstellung festzulegen, die nicht für die Aktion gilt. Für action_params ist nur einer der folgenden Werte zulässig:
runParams

object (RunRolloutActionParams)

Optional. Parameter für die Aktion „RUN“. Es ist ein Fehler, dies anzugeben, wenn RolloutAction nicht auf RUN gesetzt ist. Standardmäßig werden fehlgeschlagene Vorgänge beim Fortsetzen des Roll-outs wiederholt.

RunRolloutActionParams

Parameter für die Aktion „RUN“, mit denen das Verhalten des Rollouts gesteuert wird, wenn er aus dem Status „PAUSED“ (PAUSIERT) fortgesetzt wird.

JSON-Darstellung
{
  "retryFailedOperations": boolean
}
Felder
retryFailedOperations

boolean

Erforderlich. Ist dieser Wert „true“, werden fehlgeschlagene Vorgänge beim Fortsetzen des Roll-outs noch einmal versucht. Dies gilt nur, wenn der aktuelle Status des Rollouts PAUSED ist und die angeforderte Aktion RUN.

RolloutAction

„RolloutAction“ gibt die Aktion an, die für die Einführung ausgeführt werden soll.

Enums
ROLLOUT_ACTION_UNSPECIFIED Nicht angegebene Aktion. Wird standardmäßig als RUN behandelt.
ROLLOUT_ACTION_RUN Führen Sie den Roll-out aus, bis er auf natürliche Weise einen Endstatus erreicht. Ein Rollout, der ausgeführt werden soll, durchläuft alle natürlichen Rollout-Status (z. B. RUNNING –> SUCCEEDED oder RUNNING –> FAILED). Wenn während der Einführung wiederholbare Fehler auftreten, wird die Einführung standardmäßig pausiert. Sie kann fortgesetzt werden, indem diese RUN-Aktion noch einmal angefordert wird.
ROLLOUT_ACTION_PAUSE Pausieren Sie die Einführung, bis sie fortgesetzt wird (d.h. RUN wird angefordert).
ROLLOUT_ACTION_CANCEL Roll-out dauerhaft abbrechen

Methoden

create

Erstellen Sie einen neuen Roll-out.

delete

Einzelnen Roll-out löschen

get

Einzelnen Roll-out abrufen.

list

Eine Sammlung von Roll-outs abrufen.

patch

Einzelnen Rollout aktualisieren