AWS CodePipeline

2019/11/12 - AWS CodePipeline - 5 updated api methods

Changes  Update codepipeline client to latest version

CreatePipeline (updated) Link ¶
Changes (both)
{'pipeline': {'stages': {'actions': {'namespace': 'string'}}}}

Creates a pipeline.

See also: AWS API Documentation

Request Syntax

client.create_pipeline(
    pipeline={
        'name': 'string',
        'roleArn': 'string',
        'artifactStore': {
            'type': 'S3',
            'location': 'string',
            'encryptionKey': {
                'id': 'string',
                'type': 'KMS'
            }
        },
        'artifactStores': {
            'string': {
                'type': 'S3',
                'location': 'string',
                'encryptionKey': {
                    'id': 'string',
                    'type': 'KMS'
                }
            }
        },
        'stages': [
            {
                'name': 'string',
                'blockers': [
                    {
                        'name': 'string',
                        'type': 'Schedule'
                    },
                ],
                'actions': [
                    {
                        'name': 'string',
                        'actionTypeId': {
                            'category': 'Source'|'Build'|'Deploy'|'Test'|'Invoke'|'Approval',
                            'owner': 'AWS'|'ThirdParty'|'Custom',
                            'provider': 'string',
                            'version': 'string'
                        },
                        'runOrder': 123,
                        'configuration': {
                            'string': 'string'
                        },
                        'outputArtifacts': [
                            {
                                'name': 'string'
                            },
                        ],
                        'inputArtifacts': [
                            {
                                'name': 'string'
                            },
                        ],
                        'roleArn': 'string',
                        'region': 'string',
                        'namespace': 'string'
                    },
                ]
            },
        ],
        'version': 123
    },
    tags=[
        {
            'key': 'string',
            'value': 'string'
        },
    ]
)
type pipeline:

dict

param pipeline:

[REQUIRED]

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

  • name (string) -- [REQUIRED]

    The name of the action to be performed.

  • roleArn (string) -- [REQUIRED]

    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.

  • artifactStore (dict) --

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

    • type (string) -- [REQUIRED]

      The type of the artifact store, such as S3.

    • location (string) -- [REQUIRED]

      The Amazon S3 bucket used for storing the artifacts for a pipeline. You can specify the name of an S3 bucket but not a folder in the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any Amazon S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.

    • encryptionKey (dict) --

      The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.

      • id (string) -- [REQUIRED]

        The ID used to identify the key. For an AWS KMS key, you can use the key ID, the key ARN, or the alias ARN.

      • type (string) -- [REQUIRED]

        The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.

  • artifactStores (dict) --

    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.

    • (string) --

      • (dict) --

        The Amazon S3 bucket where artifacts for the pipeline are stored.

        • type (string) -- [REQUIRED]

          The type of the artifact store, such as S3.

        • location (string) -- [REQUIRED]

          The Amazon S3 bucket used for storing the artifacts for a pipeline. You can specify the name of an S3 bucket but not a folder in the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any Amazon S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.

        • encryptionKey (dict) --

          The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.

          • id (string) -- [REQUIRED]

            The ID used to identify the key. For an AWS KMS key, you can use the key ID, the key ARN, or the alias ARN.

          • type (string) -- [REQUIRED]

            The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.

  • stages (list) -- [REQUIRED]

    The stage in which to perform the action.

    • (dict) --

      Represents information about a stage and its definition.

      • name (string) -- [REQUIRED]

        The name of the stage.

      • blockers (list) --

        Reserved for future use.

        • (dict) --

          Reserved for future use.

          • name (string) -- [REQUIRED]

            Reserved for future use.

          • type (string) -- [REQUIRED]

            Reserved for future use.

      • actions (list) -- [REQUIRED]

        The actions included in a stage.

        • (dict) --

          Represents information about an action declaration.

          • name (string) -- [REQUIRED]

            The action declaration's name.

          • actionTypeId (dict) -- [REQUIRED]

            Specifies the action type and the provider of the action.

            • category (string) -- [REQUIRED]

              A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the following values.

            • owner (string) -- [REQUIRED]

              The creator of the action being called.

            • provider (string) -- [REQUIRED]

              The provider of the service being called by the action. Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of AWS CodeDeploy, which would be specified as CodeDeploy. For more information, see Valid Action Types and Providers in CodePipeline.

            • version (string) -- [REQUIRED]

              A string that describes the action version.

          • runOrder (integer) --

            The order in which actions are run.

          • configuration (dict) --

            The action's configuration. These are key-value pairs that specify input values for an action. For more information, see Action Structure Requirements in CodePipeline. For the list of configuration properties for the AWS CloudFormation action type in CodePipeline, see Configuration Properties Reference in the AWS CloudFormation User Guide. For template snippets with examples, see Using Parameter Override Functions with CodePipeline Pipelines in the AWS CloudFormation User Guide.

            The values can be represented in either JSON or YAML format. For example, the JSON configuration item format is as follows:

            JSON:

            "Configuration" : { Key : Value },

            • (string) --

              • (string) --

          • outputArtifacts (list) --

            The name or ID of the result of the action declaration, such as a test or build artifact.

            • (dict) --

              Represents information about the output of an action.

              • name (string) -- [REQUIRED]

                The name of the output of an artifact, such as "My App".

                The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.

                Output artifact names must be unique within a pipeline.

          • inputArtifacts (list) --

            The name or ID of the artifact consumed by the action, such as a test or build artifact.

            • (dict) --

              Represents information about an artifact to be worked on, such as a test or build artifact.

              • name (string) -- [REQUIRED]

                The name of the artifact to be worked on (for example, "My App").

                The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.

          • roleArn (string) --

            The ARN of the IAM service role that performs the declared action. This is assumed through the roleArn for the pipeline.

          • region (string) --

            The action declaration's AWS Region, such as us-east-1.

          • namespace (string) --

            The variable namespace associated with the action. All variables produced as output by this action fall under this namespace.

  • version (integer) --

    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.

type tags:

list

param tags:

The tags for the pipeline.

  • (dict) --

    A tag is a key-value pair that is used to manage the resource.

    • key (string) -- [REQUIRED]

      The tag's key.

    • value (string) -- [REQUIRED]

      The tag's value.

rtype:

dict

returns:

Response Syntax

{
    'pipeline': {
        'name': 'string',
        'roleArn': 'string',
        'artifactStore': {
            'type': 'S3',
            'location': 'string',
            'encryptionKey': {
                'id': 'string',
                'type': 'KMS'
            }
        },
        'artifactStores': {
            'string': {
                'type': 'S3',
                'location': 'string',
                'encryptionKey': {
                    'id': 'string',
                    'type': 'KMS'
                }
            }
        },
        'stages': [
            {
                'name': 'string',
                'blockers': [
                    {
                        'name': 'string',
                        'type': 'Schedule'
                    },
                ],
                'actions': [
                    {
                        'name': 'string',
                        'actionTypeId': {
                            'category': 'Source'|'Build'|'Deploy'|'Test'|'Invoke'|'Approval',
                            'owner': 'AWS'|'ThirdParty'|'Custom',
                            'provider': 'string',
                            'version': 'string'
                        },
                        'runOrder': 123,
                        'configuration': {
                            'string': 'string'
                        },
                        'outputArtifacts': [
                            {
                                'name': 'string'
                            },
                        ],
                        'inputArtifacts': [
                            {
                                'name': 'string'
                            },
                        ],
                        'roleArn': 'string',
                        'region': 'string',
                        'namespace': 'string'
                    },
                ]
            },
        ],
        'version': 123
    },
    'tags': [
        {
            'key': 'string',
            'value': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    Represents the output of a CreatePipeline action.

    • pipeline (dict) --

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

      • name (string) --

        The name of the action to be performed.

      • roleArn (string) --

        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.

      • artifactStore (dict) --

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

        • type (string) --

          The type of the artifact store, such as S3.

        • location (string) --

          The Amazon S3 bucket used for storing the artifacts for a pipeline. You can specify the name of an S3 bucket but not a folder in the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any Amazon S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.

        • encryptionKey (dict) --

          The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.

          • id (string) --

            The ID used to identify the key. For an AWS KMS key, you can use the key ID, the key ARN, or the alias ARN.

          • type (string) --

            The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.

      • artifactStores (dict) --

        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.

        • (string) --

          • (dict) --

            The Amazon S3 bucket where artifacts for the pipeline are stored.

            • type (string) --

              The type of the artifact store, such as S3.

            • location (string) --

              The Amazon S3 bucket used for storing the artifacts for a pipeline. You can specify the name of an S3 bucket but not a folder in the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any Amazon S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.

            • encryptionKey (dict) --

              The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.

              • id (string) --

                The ID used to identify the key. For an AWS KMS key, you can use the key ID, the key ARN, or the alias ARN.

              • type (string) --

                The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.

      • stages (list) --

        The stage in which to perform the action.

        • (dict) --

          Represents information about a stage and its definition.

          • name (string) --

            The name of the stage.

          • blockers (list) --

            Reserved for future use.

            • (dict) --

              Reserved for future use.

              • name (string) --

                Reserved for future use.

              • type (string) --

                Reserved for future use.

          • actions (list) --

            The actions included in a stage.

            • (dict) --

              Represents information about an action declaration.

              • name (string) --

                The action declaration's name.

              • actionTypeId (dict) --

                Specifies the action type and the provider of the action.

                • category (string) --

                  A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the following values.

                • owner (string) --

                  The creator of the action being called.

                • provider (string) --

                  The provider of the service being called by the action. Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of AWS CodeDeploy, which would be specified as CodeDeploy. For more information, see Valid Action Types and Providers in CodePipeline.

                • version (string) --

                  A string that describes the action version.

              • runOrder (integer) --

                The order in which actions are run.

              • configuration (dict) --

                The action's configuration. These are key-value pairs that specify input values for an action. For more information, see Action Structure Requirements in CodePipeline. For the list of configuration properties for the AWS CloudFormation action type in CodePipeline, see Configuration Properties Reference in the AWS CloudFormation User Guide. For template snippets with examples, see Using Parameter Override Functions with CodePipeline Pipelines in the AWS CloudFormation User Guide.

                The values can be represented in either JSON or YAML format. For example, the JSON configuration item format is as follows:

                JSON:

                "Configuration" : { Key : Value },

                • (string) --

                  • (string) --

              • outputArtifacts (list) --

                The name or ID of the result of the action declaration, such as a test or build artifact.

                • (dict) --

                  Represents information about the output of an action.

                  • name (string) --

                    The name of the output of an artifact, such as "My App".

                    The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.

                    Output artifact names must be unique within a pipeline.

              • inputArtifacts (list) --

                The name or ID of the artifact consumed by the action, such as a test or build artifact.

                • (dict) --

                  Represents information about an artifact to be worked on, such as a test or build artifact.

                  • name (string) --

                    The name of the artifact to be worked on (for example, "My App").

                    The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.

              • roleArn (string) --

                The ARN of the IAM service role that performs the declared action. This is assumed through the roleArn for the pipeline.

              • region (string) --

                The action declaration's AWS Region, such as us-east-1.

              • namespace (string) --

                The variable namespace associated with the action. All variables produced as output by this action fall under this namespace.

      • version (integer) --

        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.

    • tags (list) --

      Specifies the tags applied to the pipeline.

      • (dict) --

        A tag is a key-value pair that is used to manage the resource.

        • key (string) --

          The tag's key.

        • value (string) --

          The tag's value.

GetPipeline (updated) Link ¶
Changes (response)
{'pipeline': {'stages': {'actions': {'namespace': 'string'}}}}

Returns the metadata, structure, stages, and actions of a pipeline. Can be used to return the entire structure of a pipeline in JSON format, which can then be modified and used to update the pipeline structure with UpdatePipeline.

See also: AWS API Documentation

Request Syntax

client.get_pipeline(
    name='string',
    version=123
)
type name:

string

param name:

[REQUIRED]

The name of the pipeline for which you want to get information. Pipeline names must be unique under an AWS user account.

type version:

integer

param version:

The version number of the pipeline. If you do not specify a version, defaults to the current version.

rtype:

dict

returns:

Response Syntax

{
    'pipeline': {
        'name': 'string',
        'roleArn': 'string',
        'artifactStore': {
            'type': 'S3',
            'location': 'string',
            'encryptionKey': {
                'id': 'string',
                'type': 'KMS'
            }
        },
        'artifactStores': {
            'string': {
                'type': 'S3',
                'location': 'string',
                'encryptionKey': {
                    'id': 'string',
                    'type': 'KMS'
                }
            }
        },
        'stages': [
            {
                'name': 'string',
                'blockers': [
                    {
                        'name': 'string',
                        'type': 'Schedule'
                    },
                ],
                'actions': [
                    {
                        'name': 'string',
                        'actionTypeId': {
                            'category': 'Source'|'Build'|'Deploy'|'Test'|'Invoke'|'Approval',
                            'owner': 'AWS'|'ThirdParty'|'Custom',
                            'provider': 'string',
                            'version': 'string'
                        },
                        'runOrder': 123,
                        'configuration': {
                            'string': 'string'
                        },
                        'outputArtifacts': [
                            {
                                'name': 'string'
                            },
                        ],
                        'inputArtifacts': [
                            {
                                'name': 'string'
                            },
                        ],
                        'roleArn': 'string',
                        'region': 'string',
                        'namespace': 'string'
                    },
                ]
            },
        ],
        'version': 123
    },
    'metadata': {
        'pipelineArn': 'string',
        'created': datetime(2015, 1, 1),
        'updated': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    Represents the output of a GetPipeline action.

    • pipeline (dict) --

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

      • name (string) --

        The name of the action to be performed.

      • roleArn (string) --

        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.

      • artifactStore (dict) --

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

        • type (string) --

          The type of the artifact store, such as S3.

        • location (string) --

          The Amazon S3 bucket used for storing the artifacts for a pipeline. You can specify the name of an S3 bucket but not a folder in the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any Amazon S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.

        • encryptionKey (dict) --

          The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.

          • id (string) --

            The ID used to identify the key. For an AWS KMS key, you can use the key ID, the key ARN, or the alias ARN.

          • type (string) --

            The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.

      • artifactStores (dict) --

        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.

        • (string) --

          • (dict) --

            The Amazon S3 bucket where artifacts for the pipeline are stored.

            • type (string) --

              The type of the artifact store, such as S3.

            • location (string) --

              The Amazon S3 bucket used for storing the artifacts for a pipeline. You can specify the name of an S3 bucket but not a folder in the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any Amazon S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.

            • encryptionKey (dict) --

              The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.

              • id (string) --

                The ID used to identify the key. For an AWS KMS key, you can use the key ID, the key ARN, or the alias ARN.

              • type (string) --

                The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.

      • stages (list) --

        The stage in which to perform the action.

        • (dict) --

          Represents information about a stage and its definition.

          • name (string) --

            The name of the stage.

          • blockers (list) --

            Reserved for future use.

            • (dict) --

              Reserved for future use.

              • name (string) --

                Reserved for future use.

              • type (string) --

                Reserved for future use.

          • actions (list) --

            The actions included in a stage.

            • (dict) --

              Represents information about an action declaration.

              • name (string) --

                The action declaration's name.

              • actionTypeId (dict) --

                Specifies the action type and the provider of the action.

                • category (string) --

                  A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the following values.

                • owner (string) --

                  The creator of the action being called.

                • provider (string) --

                  The provider of the service being called by the action. Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of AWS CodeDeploy, which would be specified as CodeDeploy. For more information, see Valid Action Types and Providers in CodePipeline.

                • version (string) --

                  A string that describes the action version.

              • runOrder (integer) --

                The order in which actions are run.

              • configuration (dict) --

                The action's configuration. These are key-value pairs that specify input values for an action. For more information, see Action Structure Requirements in CodePipeline. For the list of configuration properties for the AWS CloudFormation action type in CodePipeline, see Configuration Properties Reference in the AWS CloudFormation User Guide. For template snippets with examples, see Using Parameter Override Functions with CodePipeline Pipelines in the AWS CloudFormation User Guide.

                The values can be represented in either JSON or YAML format. For example, the JSON configuration item format is as follows:

                JSON:

                "Configuration" : { Key : Value },

                • (string) --

                  • (string) --

              • outputArtifacts (list) --

                The name or ID of the result of the action declaration, such as a test or build artifact.

                • (dict) --

                  Represents information about the output of an action.

                  • name (string) --

                    The name of the output of an artifact, such as "My App".

                    The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.

                    Output artifact names must be unique within a pipeline.

              • inputArtifacts (list) --

                The name or ID of the artifact consumed by the action, such as a test or build artifact.

                • (dict) --

                  Represents information about an artifact to be worked on, such as a test or build artifact.

                  • name (string) --

                    The name of the artifact to be worked on (for example, "My App").

                    The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.

              • roleArn (string) --

                The ARN of the IAM service role that performs the declared action. This is assumed through the roleArn for the pipeline.

              • region (string) --

                The action declaration's AWS Region, such as us-east-1.

              • namespace (string) --

                The variable namespace associated with the action. All variables produced as output by this action fall under this namespace.

      • version (integer) --

        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.

    • metadata (dict) --

      Represents the pipeline metadata information returned as part of the output of a GetPipeline action.

      • pipelineArn (string) --

        The Amazon Resource Name (ARN) of the pipeline.

      • created (datetime) --

        The date and time the pipeline was created, in timestamp format.

      • updated (datetime) --

        The date and time the pipeline was last updated, in timestamp format.

ListActionExecutions (updated) Link ¶
Changes (response)
{'actionExecutionDetails': {'input': {'namespace': 'string',
                                      'resolvedConfiguration': {'string': 'string'}},
                            'output': {'outputVariables': {'string': 'string'}}}}

Lists the action executions that have occurred in a pipeline.

See also: AWS API Documentation

Request Syntax

client.list_action_executions(
    pipelineName='string',
    filter={
        'pipelineExecutionId': 'string'
    },
    maxResults=123,
    nextToken='string'
)
type pipelineName:

string

param pipelineName:

[REQUIRED]

The name of the pipeline for which you want to list action execution history.

type filter:

dict

param filter:

Input information used to filter action execution history.

  • pipelineExecutionId (string) --

    The pipeline execution ID used to filter action execution history.

type maxResults:

integer

param maxResults:

The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned nextToken value. Action execution history is retained for up to 12 months, based on action execution start times. Default value is 100.

type nextToken:

string

param nextToken:

The token that was returned from the previous ListActionExecutions call, which can be used to return the next set of action executions in the list.

rtype:

dict

returns:

Response Syntax

{
    'actionExecutionDetails': [
        {
            'pipelineExecutionId': 'string',
            'actionExecutionId': 'string',
            'pipelineVersion': 123,
            'stageName': 'string',
            'actionName': 'string',
            'startTime': datetime(2015, 1, 1),
            'lastUpdateTime': datetime(2015, 1, 1),
            'status': 'InProgress'|'Succeeded'|'Failed',
            'input': {
                'actionTypeId': {
                    'category': 'Source'|'Build'|'Deploy'|'Test'|'Invoke'|'Approval',
                    'owner': 'AWS'|'ThirdParty'|'Custom',
                    'provider': 'string',
                    'version': 'string'
                },
                'configuration': {
                    'string': 'string'
                },
                'resolvedConfiguration': {
                    'string': 'string'
                },
                'roleArn': 'string',
                'region': 'string',
                'inputArtifacts': [
                    {
                        'name': 'string',
                        's3location': {
                            'bucket': 'string',
                            'key': 'string'
                        }
                    },
                ],
                'namespace': 'string'
            },
            'output': {
                'outputArtifacts': [
                    {
                        'name': 'string',
                        's3location': {
                            'bucket': 'string',
                            'key': 'string'
                        }
                    },
                ],
                'executionResult': {
                    'externalExecutionId': 'string',
                    'externalExecutionSummary': 'string',
                    'externalExecutionUrl': 'string'
                },
                'outputVariables': {
                    'string': 'string'
                }
            }
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • actionExecutionDetails (list) --

      The details for a list of recent executions, such as action execution ID.

      • (dict) --

        Returns information about an execution of an action, including the action execution ID, and the name, version, and timing of the action.

        • pipelineExecutionId (string) --

          The pipeline execution ID for the action execution.

        • actionExecutionId (string) --

          The action execution ID.

        • pipelineVersion (integer) --

          The version of the pipeline where the action was run.

        • stageName (string) --

          The name of the stage that contains the action.

        • actionName (string) --

          The name of the action.

        • startTime (datetime) --

          The start time of the action execution.

        • lastUpdateTime (datetime) --

          The last update time of the action execution.

        • status (string) --

          The status of the action execution. Status categories are InProgress, Succeeded, and Failed.

        • input (dict) --

          Input details for the action execution, such as role ARN, Region, and input artifacts.

          • actionTypeId (dict) --

            Represents information about an action type.

            • category (string) --

              A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the following values.

            • owner (string) --

              The creator of the action being called.

            • provider (string) --

              The provider of the service being called by the action. Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of AWS CodeDeploy, which would be specified as CodeDeploy. For more information, see Valid Action Types and Providers in CodePipeline.

            • version (string) --

              A string that describes the action version.

          • configuration (dict) --

            Configuration data for an action execution.

            • (string) --

              • (string) --

          • resolvedConfiguration (dict) --

            Configuration data for an action execution with all variable references replaced with their real values for the execution.

            • (string) --

              • (string) --

          • roleArn (string) --

            The ARN of the IAM service role that performs the declared action. This is assumed through the roleArn for the pipeline.

          • region (string) --

            The AWS Region for the action, such as us-east-1.

          • inputArtifacts (list) --

            Details of input artifacts of the action that correspond to the action execution.

            • (dict) --

              Artifact details for the action execution, such as the artifact location.

              • name (string) --

                The artifact object name for the action execution.

              • s3location (dict) --

                The Amazon S3 artifact location for the action execution.

                • bucket (string) --

                  The Amazon S3 artifact bucket for an action's artifacts.

                • key (string) --

                  The artifact name.

          • namespace (string) --

            The variable namespace associated with the action. All variables produced as output by this action fall under this namespace.

        • output (dict) --

          Output details for the action execution, such as the action execution result.

          • outputArtifacts (list) --

            Details of output artifacts of the action that correspond to the action execution.

            • (dict) --

              Artifact details for the action execution, such as the artifact location.

              • name (string) --

                The artifact object name for the action execution.

              • s3location (dict) --

                The Amazon S3 artifact location for the action execution.

                • bucket (string) --

                  The Amazon S3 artifact bucket for an action's artifacts.

                • key (string) --

                  The artifact name.

          • executionResult (dict) --

            Execution result information listed in the output details for an action execution.

            • externalExecutionId (string) --

              The action provider's external ID for the action execution.

            • externalExecutionSummary (string) --

              The action provider's summary for the action execution.

            • externalExecutionUrl (string) --

              The deepest external link to the external resource (for example, a repository URL or deployment endpoint) that is used when running the action.

          • outputVariables (dict) --

            The outputVariables field shows the key-value pairs that were output as part of that execution.

            • (string) --

              • (string) --

    • nextToken (string) --

      If the amount of returned information is significantly large, an identifier is also returned and can be used in a subsequent ListActionExecutions call to return the next set of action executions in the list.

PutJobSuccessResult (updated) Link ¶
Changes (request)
{'outputVariables': {'string': 'string'}}

Represents the success of a job as returned to the pipeline by a job worker. Used for custom actions only.

See also: AWS API Documentation

Request Syntax

client.put_job_success_result(
    jobId='string',
    currentRevision={
        'revision': 'string',
        'changeIdentifier': 'string',
        'created': datetime(2015, 1, 1),
        'revisionSummary': 'string'
    },
    continuationToken='string',
    executionDetails={
        'summary': 'string',
        'externalExecutionId': 'string',
        'percentComplete': 123
    },
    outputVariables={
        'string': 'string'
    }
)
type jobId:

string

param jobId:

[REQUIRED]

The unique system-generated ID of the job that succeeded. This is the same ID returned from PollForJobs.

type currentRevision:

dict

param currentRevision:

The ID of the current revision of the artifact successfully worked on by the job.

  • revision (string) -- [REQUIRED]

    The revision ID of the current version of an artifact.

  • changeIdentifier (string) -- [REQUIRED]

    The change identifier for the current revision.

  • created (datetime) --

    The date and time when the most recent revision of the artifact was created, in timestamp format.

  • revisionSummary (string) --

    The summary of the most recent revision of the artifact.

type continuationToken:

string

param continuationToken:

A token generated by a job worker, such as an AWS CodeDeploy deployment ID, that a successful job provides to identify a custom action in progress. Future jobs use this token to identify the running instance of the action. It can be reused to return more information about the progress of the custom action. When the action is complete, no continuation token should be supplied.

type executionDetails:

dict

param executionDetails:

The execution details of the successful job, such as the actions taken by the job worker.

  • summary (string) --

    The summary of the current status of the actions.

  • externalExecutionId (string) --

    The system-generated unique ID of this action used to identify this job worker in any external systems, such as AWS CodeDeploy.

  • percentComplete (integer) --

    The percentage of work completed on the action, represented on a scale of 0 to 100 percent.

type outputVariables:

dict

param outputVariables:

Key-value pairs produced as output by a job worker that can be made available to a downstream action configuration. outputVariables can be included only when there is no continuation token on the request.

  • (string) --

    • (string) --

returns:

None

UpdatePipeline (updated) Link ¶
Changes (both)
{'pipeline': {'stages': {'actions': {'namespace': 'string'}}}}

Updates a specified pipeline with edits or changes to its structure. Use a JSON file with the pipeline structure and UpdatePipeline to provide the full structure of the pipeline. Updating the pipeline increases the version number of the pipeline by 1.

See also: AWS API Documentation

Request Syntax

client.update_pipeline(
    pipeline={
        'name': 'string',
        'roleArn': 'string',
        'artifactStore': {
            'type': 'S3',
            'location': 'string',
            'encryptionKey': {
                'id': 'string',
                'type': 'KMS'
            }
        },
        'artifactStores': {
            'string': {
                'type': 'S3',
                'location': 'string',
                'encryptionKey': {
                    'id': 'string',
                    'type': 'KMS'
                }
            }
        },
        'stages': [
            {
                'name': 'string',
                'blockers': [
                    {
                        'name': 'string',
                        'type': 'Schedule'
                    },
                ],
                'actions': [
                    {
                        'name': 'string',
                        'actionTypeId': {
                            'category': 'Source'|'Build'|'Deploy'|'Test'|'Invoke'|'Approval',
                            'owner': 'AWS'|'ThirdParty'|'Custom',
                            'provider': 'string',
                            'version': 'string'
                        },
                        'runOrder': 123,
                        'configuration': {
                            'string': 'string'
                        },
                        'outputArtifacts': [
                            {
                                'name': 'string'
                            },
                        ],
                        'inputArtifacts': [
                            {
                                'name': 'string'
                            },
                        ],
                        'roleArn': 'string',
                        'region': 'string',
                        'namespace': 'string'
                    },
                ]
            },
        ],
        'version': 123
    }
)
type pipeline:

dict

param pipeline:

[REQUIRED]

The name of the pipeline to be updated.

  • name (string) -- [REQUIRED]

    The name of the action to be performed.

  • roleArn (string) -- [REQUIRED]

    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.

  • artifactStore (dict) --

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

    • type (string) -- [REQUIRED]

      The type of the artifact store, such as S3.

    • location (string) -- [REQUIRED]

      The Amazon S3 bucket used for storing the artifacts for a pipeline. You can specify the name of an S3 bucket but not a folder in the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any Amazon S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.

    • encryptionKey (dict) --

      The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.

      • id (string) -- [REQUIRED]

        The ID used to identify the key. For an AWS KMS key, you can use the key ID, the key ARN, or the alias ARN.

      • type (string) -- [REQUIRED]

        The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.

  • artifactStores (dict) --

    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.

    • (string) --

      • (dict) --

        The Amazon S3 bucket where artifacts for the pipeline are stored.

        • type (string) -- [REQUIRED]

          The type of the artifact store, such as S3.

        • location (string) -- [REQUIRED]

          The Amazon S3 bucket used for storing the artifacts for a pipeline. You can specify the name of an S3 bucket but not a folder in the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any Amazon S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.

        • encryptionKey (dict) --

          The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.

          • id (string) -- [REQUIRED]

            The ID used to identify the key. For an AWS KMS key, you can use the key ID, the key ARN, or the alias ARN.

          • type (string) -- [REQUIRED]

            The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.

  • stages (list) -- [REQUIRED]

    The stage in which to perform the action.

    • (dict) --

      Represents information about a stage and its definition.

      • name (string) -- [REQUIRED]

        The name of the stage.

      • blockers (list) --

        Reserved for future use.

        • (dict) --

          Reserved for future use.

          • name (string) -- [REQUIRED]

            Reserved for future use.

          • type (string) -- [REQUIRED]

            Reserved for future use.

      • actions (list) -- [REQUIRED]

        The actions included in a stage.

        • (dict) --

          Represents information about an action declaration.

          • name (string) -- [REQUIRED]

            The action declaration's name.

          • actionTypeId (dict) -- [REQUIRED]

            Specifies the action type and the provider of the action.

            • category (string) -- [REQUIRED]

              A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the following values.

            • owner (string) -- [REQUIRED]

              The creator of the action being called.

            • provider (string) -- [REQUIRED]

              The provider of the service being called by the action. Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of AWS CodeDeploy, which would be specified as CodeDeploy. For more information, see Valid Action Types and Providers in CodePipeline.

            • version (string) -- [REQUIRED]

              A string that describes the action version.

          • runOrder (integer) --

            The order in which actions are run.

          • configuration (dict) --

            The action's configuration. These are key-value pairs that specify input values for an action. For more information, see Action Structure Requirements in CodePipeline. For the list of configuration properties for the AWS CloudFormation action type in CodePipeline, see Configuration Properties Reference in the AWS CloudFormation User Guide. For template snippets with examples, see Using Parameter Override Functions with CodePipeline Pipelines in the AWS CloudFormation User Guide.

            The values can be represented in either JSON or YAML format. For example, the JSON configuration item format is as follows:

            JSON:

            "Configuration" : { Key : Value },

            • (string) --

              • (string) --

          • outputArtifacts (list) --

            The name or ID of the result of the action declaration, such as a test or build artifact.

            • (dict) --

              Represents information about the output of an action.

              • name (string) -- [REQUIRED]

                The name of the output of an artifact, such as "My App".

                The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.

                Output artifact names must be unique within a pipeline.

          • inputArtifacts (list) --

            The name or ID of the artifact consumed by the action, such as a test or build artifact.

            • (dict) --

              Represents information about an artifact to be worked on, such as a test or build artifact.

              • name (string) -- [REQUIRED]

                The name of the artifact to be worked on (for example, "My App").

                The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.

          • roleArn (string) --

            The ARN of the IAM service role that performs the declared action. This is assumed through the roleArn for the pipeline.

          • region (string) --

            The action declaration's AWS Region, such as us-east-1.

          • namespace (string) --

            The variable namespace associated with the action. All variables produced as output by this action fall under this namespace.

  • version (integer) --

    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.

rtype:

dict

returns:

Response Syntax

{
    'pipeline': {
        'name': 'string',
        'roleArn': 'string',
        'artifactStore': {
            'type': 'S3',
            'location': 'string',
            'encryptionKey': {
                'id': 'string',
                'type': 'KMS'
            }
        },
        'artifactStores': {
            'string': {
                'type': 'S3',
                'location': 'string',
                'encryptionKey': {
                    'id': 'string',
                    'type': 'KMS'
                }
            }
        },
        'stages': [
            {
                'name': 'string',
                'blockers': [
                    {
                        'name': 'string',
                        'type': 'Schedule'
                    },
                ],
                'actions': [
                    {
                        'name': 'string',
                        'actionTypeId': {
                            'category': 'Source'|'Build'|'Deploy'|'Test'|'Invoke'|'Approval',
                            'owner': 'AWS'|'ThirdParty'|'Custom',
                            'provider': 'string',
                            'version': 'string'
                        },
                        'runOrder': 123,
                        'configuration': {
                            'string': 'string'
                        },
                        'outputArtifacts': [
                            {
                                'name': 'string'
                            },
                        ],
                        'inputArtifacts': [
                            {
                                'name': 'string'
                            },
                        ],
                        'roleArn': 'string',
                        'region': 'string',
                        'namespace': 'string'
                    },
                ]
            },
        ],
        'version': 123
    }
}

Response Structure

  • (dict) --

    Represents the output of an UpdatePipeline action.

    • pipeline (dict) --

      The structure of the updated pipeline.

      • name (string) --

        The name of the action to be performed.

      • roleArn (string) --

        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.

      • artifactStore (dict) --

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

        • type (string) --

          The type of the artifact store, such as S3.

        • location (string) --

          The Amazon S3 bucket used for storing the artifacts for a pipeline. You can specify the name of an S3 bucket but not a folder in the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any Amazon S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.

        • encryptionKey (dict) --

          The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.

          • id (string) --

            The ID used to identify the key. For an AWS KMS key, you can use the key ID, the key ARN, or the alias ARN.

          • type (string) --

            The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.

      • artifactStores (dict) --

        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.

        • (string) --

          • (dict) --

            The Amazon S3 bucket where artifacts for the pipeline are stored.

            • type (string) --

              The type of the artifact store, such as S3.

            • location (string) --

              The Amazon S3 bucket used for storing the artifacts for a pipeline. You can specify the name of an S3 bucket but not a folder in the bucket. A folder to contain the pipeline artifacts is created for you based on the name of the pipeline. You can use any Amazon S3 bucket in the same AWS Region as the pipeline to store your pipeline artifacts.

            • encryptionKey (dict) --

              The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.

              • id (string) --

                The ID used to identify the key. For an AWS KMS key, you can use the key ID, the key ARN, or the alias ARN.

              • type (string) --

                The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.

      • stages (list) --

        The stage in which to perform the action.

        • (dict) --

          Represents information about a stage and its definition.

          • name (string) --

            The name of the stage.

          • blockers (list) --

            Reserved for future use.

            • (dict) --

              Reserved for future use.

              • name (string) --

                Reserved for future use.

              • type (string) --

                Reserved for future use.

          • actions (list) --

            The actions included in a stage.

            • (dict) --

              Represents information about an action declaration.

              • name (string) --

                The action declaration's name.

              • actionTypeId (dict) --

                Specifies the action type and the provider of the action.

                • category (string) --

                  A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the following values.

                • owner (string) --

                  The creator of the action being called.

                • provider (string) --

                  The provider of the service being called by the action. Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of AWS CodeDeploy, which would be specified as CodeDeploy. For more information, see Valid Action Types and Providers in CodePipeline.

                • version (string) --

                  A string that describes the action version.

              • runOrder (integer) --

                The order in which actions are run.

              • configuration (dict) --

                The action's configuration. These are key-value pairs that specify input values for an action. For more information, see Action Structure Requirements in CodePipeline. For the list of configuration properties for the AWS CloudFormation action type in CodePipeline, see Configuration Properties Reference in the AWS CloudFormation User Guide. For template snippets with examples, see Using Parameter Override Functions with CodePipeline Pipelines in the AWS CloudFormation User Guide.

                The values can be represented in either JSON or YAML format. For example, the JSON configuration item format is as follows:

                JSON:

                "Configuration" : { Key : Value },

                • (string) --

                  • (string) --

              • outputArtifacts (list) --

                The name or ID of the result of the action declaration, such as a test or build artifact.

                • (dict) --

                  Represents information about the output of an action.

                  • name (string) --

                    The name of the output of an artifact, such as "My App".

                    The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.

                    Output artifact names must be unique within a pipeline.

              • inputArtifacts (list) --

                The name or ID of the artifact consumed by the action, such as a test or build artifact.

                • (dict) --

                  Represents information about an artifact to be worked on, such as a test or build artifact.

                  • name (string) --

                    The name of the artifact to be worked on (for example, "My App").

                    The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.

              • roleArn (string) --

                The ARN of the IAM service role that performs the declared action. This is assumed through the roleArn for the pipeline.

              • region (string) --

                The action declaration's AWS Region, such as us-east-1.

              • namespace (string) --

                The variable namespace associated with the action. All variables produced as output by this action fall under this namespace.

      • version (integer) --

        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.