RolloutService

Create a rollout

Creates a rollout in the pending state without shifting traffic. Start the rollout in a separate request after reviewing its strategy and metric gates.

post/projects/{projectId}/endpoints/{endpointId}/rollouts

Path parameters

projectIdstring required

Project identifier.

endpointIdstring required

Endpoint identifier.

Request body

OR
OR

Response

OK

idstring required

Output only. Unique rollout identifier.

endpointIdstring required

Output only. Endpoint this rollout belongs to.

sourceDeploymentIdstring required

Output only. Deployment that traffic is shifting away from.

targetDeploymentIdstring required

Output only. Deployment that traffic is shifting toward.

strategy'ROLLOUT_STRATEGY_TYPE_ROLLING' | 'ROLLOUT_STRATEGY_TYPE_CANARY' | 'ROLLOUT_STRATEGY_TYPE_BLUE_GREEN' required

Output only. Rollout strategy selected at creation.

state'ROLLOUT_STATE_RUNNING' | 'ROLLOUT_STATE_PAUSED' | 'ROLLOUT_STATE_STABILIZING' | 'ROLLOUT_STATE_ABORTING' | 'ROLLOUT_STATE_COMPLETED' | 'ROLLOUT_STATE_ABORTED' | 'ROLLOUT_STATE_PENDING' | 'ROLLOUT_STATE_SYSTEM_PAUSED' | 'ROLLOUT_STATE_CANCELLING' | 'ROLLOUT_STATE_CANCELED' | 'ROLLOUT_STATE_PAUSING' required

Output only. High-level rollout lifecycle state.

currentStepinteger

Output only. Zero-based index of the current step. Unset while PENDING; step 0 is reported explicitly after start.

currentTrafficPercentinteger

Output only. Applied percentage of traffic on the target deployment.

createdAtstring date-time required

Output only. Timestamp when the rollout was created.

startedAtstring date-time

Output only. Timestamp when the rollout started running.

completedAtstring date-time

Output only. Timestamp when the rollout reached a terminal state.

etagstring

Output only. Opaque version tag for optimistic concurrency control.

Changes

Changed in 5 of the 15 revisions of this API.238

    • removed the enum value serving_latency of the request property metrics/items/name

      request-property-enum-value-removed

    • added the optional property status/allOf[DE.RolloutStatus]/condition/allOf[DE.RolloutCondition]/type to the response with the 200 status

      response-optional-property-added

    • added the optional property status/allOf[DE.RolloutStatus]/conditions to the response with the 200 status

      response-optional-property-added

    • request property metrics/items/name was restricted to a list of enum values

      request-property-became-enum

    • added the new inflight_requests enum value to the request property metrics/items/name

      request-property-enum-value-added

    • added the new router_error_rate enum value to the request property metrics/items/name

      request-property-enum-value-added

    • added the new router_latency enum value to the request property metrics/items/name

      request-property-enum-value-added

    • added the new serving_latency enum value to the request property metrics/items/name

      request-property-enum-value-added

    • removed the request property sourceCleanup

      request-property-removed

    • removed the request property stabilizationWindow

      request-property-removed

    • added the new ROLLOUT_STATE_PAUSING enum value to the state response property for the response status 200

      response-property-enum-value-added

    • the request property canary/allOf[DE.CanaryConfig]/steps became optional

      request-property-became-optional

    • endpoint added

      endpoint-added

    This revision also has 2 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog