Resource: RolloutPlan
RolloutPlan resource.
A RolloutPlan is the customer-defined strategy to divide a large-scale change into smaller increments, referred to as "waves". Each wave targets a specific portion of the overall affected area and defines criteria that must be met before progressing to the subsequent wave.
| JSON representation |
|---|
{ "kind": string, "id": string, "creationTimestamp": string, "name": string, "description": string, "selfLink": string, "selfLinkWithId": string, "waves": [ { "displayName": string, "number": string, "selectors": [ { // Union field |
| Fields | |
|---|---|
kind |
Output only. Type of the resource. Always |
id |
Output only. The unique identifier for the resource. This identifier is defined by the server. |
creationTimestamp |
Output only. Creation timestamp in RFC3339 text format. |
name |
Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression |
description |
An optional description of this resource. Provide this property when you create the resource. |
selfLink |
Output only. Server-defined fully-qualified URL for this resource. |
selfLinkWithId |
Output only. Server-defined URL for this resource's resource id. |
waves[] |
Required. The waves included in this rollout plan. |
waves[].displayName |
Optional. The display name of this wave of the rollout plan. |
waves[].number |
Output only. The wave number. |
waves[].selectors[] |
Required. The selectors for this wave. There is a logical AND between each selector defined in a wave, so a resource must satisfy the criteria of all the specified selectors to be in scope for the wave. |
waves[].selectors[].resourceHierarchySelector |
Optional. Roll out to resources by Cloud Resource Manager resource hierarchy. |
waves[].selectors[].resourceHierarchySelector.includedOrganizations[] |
Optional. Format: "organizations/{organizationId}" |
waves[].selectors[].resourceHierarchySelector.includedFolders[] |
Optional. Format: "folders/{folderId}" |
waves[].selectors[].resourceHierarchySelector.includedProjects[] |
Optional. Format: "projects/{projectId}" |
waves[].selectors[].locationSelector |
Optional. Roll out to resources by Cloud locations. |
waves[].selectors[].locationSelector.includedLocations[] |
Optional. Example: "us-central1-a" |
waves[].validation |
Required. The validation to be performed at the end of this wave. |
waves[].validation.timeBasedValidationMetadata |
Optional. Metadata required if type = "time". |
waves[].validation.timeBasedValidationMetadata.waitDuration |
Optional. The duration that the system waits in between waves. This wait starts after all changes in the wave are rolled out. A duration in seconds with up to nine fractional digits, ending with ' |
waves[].validation.type |
Required. The type of the validation. If a type of validation is associated with a metadata object, the appropriate metadata field mapping to the validation type must be provided in the validation message. Possible values are in quotes below alongside an explanation: "manual": The system waits for an end-user approval API before progressing to the next wave. "time": The system waits for a user specified duration before progressing to the next wave. TimeBasedValidation must be provided. |
waves[].orchestrationOptions |
Optional. The orchestration options for this wave. |
waves[].orchestrationOptions.maxConcurrentLocations |
Optional. Maximum number of locations to be orchestrated in parallel. |
waves[].orchestrationOptions.maxConcurrentResourcesPerLocation |
Optional. Maximum number of resources to be orchestrated per location in parallel. |
waves[].orchestrationOptions.delays[] |
Optional. Delays, if any, to be added between batches of projects. We allow multiple Delays to be specified, letting users set separate delays between batches of projects corresponding to different locations and batches of projects corresponding to the same location. |
waves[].orchestrationOptions.delays[].duration |
Optional. The duration of the delay, if any, to be added between batches of projects. A zero duration corresponds to no delay. A duration in seconds with up to nine fractional digits, ending with ' |
waves[].orchestrationOptions.delays[].delimiter |
Optional. Controls whether the delay should only be added between batches of projects corresponding to different locations, or also between batches of projects corresponding to the same location. Must be set to DELIMITER_UNSPECIFIED if no delay is to be added. |
waves[].orchestrationOptions.delays[].type |
Optional. Controls whether the specified duration is to be added at the end of each batch, or if the total processing time for each batch will be padded if needed to meet the specified duration. Must be set to TYPE_UNSPECIFIED if no delay is to be added. |
locationScope |
The location scope of the rollout plan. If not specified, the location scope is considered as ZONAL. |
Methods |
|
|---|---|
|
Deletes a RolloutPlan. |
|
Gets details of a single project-scoped RolloutPlan. |
|
Creates a new RolloutPlan in a given project and location. |
|
Lists RolloutPlans in a given project and location. |