REST Resource: projects.locations.deliveryPipelines

Stay organized with collections Save and categorize content based on your preferences.

Resource: DeliveryPipeline

A DeliveryPipeline resource in the Google Cloud Deploy API.

A DeliveryPipeline defines a pipeline through which a Skaffold configuration can progress.

JSON representation
{
  "name": string,
  "uid": string,
  "description": string,
  "annotations": {
    string: string,
    ...
  },
  "labels": {
    string: string,
    ...
  },
  "createTime": string,
  "updateTime": string,
  "condition": {
    object (PipelineCondition)
  },
  "etag": string,
  "suspended": boolean,
  "serialPipeline": {
    object (SerialPipeline)
  }
}
Fields
name

string

Optional. Name of the DeliveryPipeline. Format is projects/{project}/ locations/{location}/deliveryPipelines/[a-z][a-z0-9-]{0,62}.

uid

string

Output only. Unique identifier of the DeliveryPipeline.

description

string

Description of the DeliveryPipeline. Max length is 255 characters.

annotations

map (key: string, value: string)

User annotations. These attributes can only be set and used by the user, and not by Google Cloud Deploy. See https://google.aip.dev/128#annotations for more details such as format and size limitations.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

labels

map (key: string, value: string)

Labels are attributes that can be set and used by both the user and by Google Cloud Deploy. Labels must meet the following constraints:

  • Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes.
  • All characters must use UTF-8 encoding, and international characters are allowed.
  • Keys must start with a lowercase letter or international character.
  • Each resource is limited to a maximum of 64 labels.

Both keys and values are additionally constrained to be <= 128 bytes.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

string (Timestamp format)

Output only. Time at which the pipeline was created.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Output only. Most recent time at which the pipeline was updated.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

condition

object (PipelineCondition)

Output only. Information around the state of the Delivery Pipeline.

etag

string

This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.

suspended

boolean

When suspended, no new releases or rollouts can be created, but in-progress ones will complete.

serialPipeline

object (SerialPipeline)

SerialPipeline defines a sequential set of stages for a DeliveryPipeline.

SerialPipeline

SerialPipeline defines a sequential set of stages for a DeliveryPipeline.

JSON representation
{
  "stages": [
    {
      object (Stage)
    }
  ]
}
Fields
stages[]

object (Stage)

Each stage specifies configuration for a Target. The ordering of this list defines the promotion flow.

Stage

Stage specifies a location to which to deploy.

JSON representation
{
  "targetId": string,
  "profiles": [
    string
  ],
  "strategy": {
    object (Strategy)
  }
}
Fields
targetId

string

The targetId to which this stage points. This field refers exclusively to the last segment of a target name. For example, this field would just be my-target (rather than projects/project/locations/location/targets/my-target). The location of the Target is inferred to be the same as the location of the DeliveryPipeline that contains this Stage.

profiles[]

string

Skaffold profiles to use when rendering the manifest for this stage's Target.

strategy

object (Strategy)

Optional. The strategy to use for a Rollout to this stage.

Strategy

Strategy contains deployment strategy information.

JSON representation
{
  "standard": {
    object (Standard)
  }
}
Fields
standard

object (Standard)

Standard deployment strategy executes a single deploy and allows verifying the deployment.

Standard

Standard represents the standard deployment strategy.

JSON representation
{
  "verify": boolean
}
Fields
verify

boolean

Whether to verify a deployment.

PipelineCondition

PipelineCondition contains all conditions relevant to a Delivery Pipeline.

JSON representation
{
  "pipelineReadyCondition": {
    object (PipelineReadyCondition)
  },
  "targetsPresentCondition": {
    object (TargetsPresentCondition)
  }
}
Fields
pipelineReadyCondition

object (PipelineReadyCondition)

Details around the Pipeline's overall status.

targetsPresentCondition

object (TargetsPresentCondition)

Detalis around targets enumerated in the pipeline.

PipelineReadyCondition

PipelineReadyCondition contains information around the status of the Pipeline.

JSON representation
{
  "status": boolean,
  "updateTime": string
}
Fields
status

boolean

True if the Pipeline is in a valid state. Otherwise at least one condition in PipelineCondition is in an invalid state. Iterate over those conditions and see which condition(s) has status = false to find out what is wrong with the Pipeline.

updateTime

string (Timestamp format)

Last time the condition was updated.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

TargetsPresentCondition

TargetsPresentCondition contains information on any Targets defined in the Delivery Pipeline that do not actually exist.

JSON representation
{
  "status": boolean,
  "missingTargets": [
    string
  ],
  "updateTime": string
}
Fields
status

boolean

True if there aren't any missing Targets.

missingTargets[]

string

The list of Target names that are missing. For example, projects/{projectId}/locations/{location_name}/targets/{target_name}.

updateTime

string (Timestamp format)

Last time the condition was updated.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

Methods

create

Creates a new DeliveryPipeline in a given project and location.

delete

Deletes a single DeliveryPipeline.

get

Gets details of a single DeliveryPipeline.

getIamPolicy

Gets the access control policy for a resource.

list

Lists DeliveryPipelines in a given project and location.

patch

Updates the parameters of a single DeliveryPipeline.

setIamPolicy

Sets the access control policy on the specified resource.

testIamPermissions

Returns permissions that a caller has on the specified resource.