class Aws::CodePipeline::Types::PipelineDeclaration

Represents the structure of actions and stages to be performed in the pipeline.

@note When making an API call, you may pass PipelineDeclaration

data as a hash:

    {
      name: "PipelineName", # required
      role_arn: "RoleArn", # required
      artifact_store: {
        type: "S3", # required, accepts S3
        location: "ArtifactStoreLocation", # required
        encryption_key: {
          id: "EncryptionKeyId", # required
          type: "KMS", # required, accepts KMS
        },
      },
      artifact_stores: {
        "AWSRegionName" => {
          type: "S3", # required, accepts S3
          location: "ArtifactStoreLocation", # required
          encryption_key: {
            id: "EncryptionKeyId", # required
            type: "KMS", # required, accepts KMS
          },
        },
      },
      stages: [ # required
        {
          name: "StageName", # required
          blockers: [
            {
              name: "BlockerName", # required
              type: "Schedule", # required, accepts Schedule
            },
          ],
          actions: [ # required
            {
              name: "ActionName", # required
              action_type_id: { # required
                category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval
                owner: "AWS", # required, accepts AWS, ThirdParty, Custom
                provider: "ActionProvider", # required
                version: "Version", # required
              },
              run_order: 1,
              configuration: {
                "ActionConfigurationKey" => "ActionConfigurationValue",
              },
              output_artifacts: [
                {
                  name: "ArtifactName", # required
                },
              ],
              input_artifacts: [
                {
                  name: "ArtifactName", # required
                },
              ],
              role_arn: "RoleArn",
              region: "AWSRegionName",
              namespace: "ActionNamespace",
            },
          ],
        },
      ],
      version: 1,
    }

@!attribute [rw] name

The name of the pipeline.
@return [String]

@!attribute [rw] role_arn

The Amazon Resource Name (ARN) for AWS CodePipeline to use to either
perform actions with no `actionRoleArn`, or to use to assume roles
for actions with an `actionRoleArn`.
@return [String]

@!attribute [rw] artifact_store

Represents information about the S3 bucket where artifacts are
stored for the pipeline.

<note markdown="1"> You must include either `artifactStore` or `artifactStores` in your
pipeline, but you cannot use both. If you create a cross-region
action in your pipeline, you must use `artifactStores`.

 </note>
@return [Types::ArtifactStore]

@!attribute [rw] artifact_stores

A mapping of `artifactStore` objects and their corresponding AWS
Regions. There must be an artifact store for the pipeline Region and
for each cross-region action in the pipeline.

<note markdown="1"> You must include either `artifactStore` or `artifactStores` in your
pipeline, but you cannot use both. If you create a cross-region
action in your pipeline, you must use `artifactStores`.

 </note>
@return [Hash<String,Types::ArtifactStore>]

@!attribute [rw] stages

The stage in which to perform the action.
@return [Array<Types::StageDeclaration>]

@!attribute [rw] version

The version number of the pipeline. A new pipeline always has a
version number of 1. This number is incremented when a pipeline is
updated.
@return [Integer]

@see docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PipelineDeclaration AWS API Documentation

Constants

SENSITIVE