NAME

Paws::CodePipeline - Perl Interface to AWS AWS CodePipeline

SYNOPSIS

  use Paws;

  my $obj = Paws->service('CodePipeline');
  my $res = $obj->Method(
    Arg1 => $val1,
    Arg2 => [ 'V1', 'V2' ],
    # if Arg3 is an object, the HashRef will be used as arguments to the constructor
    # of the arguments type
    Arg3 => { Att1 => 'Val1' },
    # if Arg4 is an array of objects, the HashRefs will be passed as arguments to
    # the constructor of the arguments type
    Arg4 => [ { Att1 => 'Val1'  }, { Att1 => 'Val2' } ],
  );

DESCRIPTION

AWS CodePipeline

Overview

This is the AWS CodePipeline API Reference. This guide provides descriptions of the actions and data types for AWS CodePipeline. Some functionality for your pipeline is only configurable through the API. For additional information, see the AWS CodePipeline User Guide (https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html).

You can use the AWS CodePipeline API to work with pipelines, stages, actions, and transitions, as described below.

Pipelines are models of automated release processes. Each pipeline is uniquely named, and consists of stages, actions, and transitions.

You can work with pipelines by calling:

  • CreatePipeline, which creates a uniquely-named pipeline.

  • DeletePipeline, which deletes the specified pipeline.

  • GetPipeline, which returns information about the pipeline structure and pipeline metadata, including the pipeline Amazon Resource Name (ARN).

  • GetPipelineExecution, which returns information about a specific execution of a pipeline.

  • GetPipelineState, which returns information about the current state of the stages and actions of a pipeline.

  • ListActionExecutions, which returns action-level details for past executions. The details include full stage and action-level details, including individual action duration, status, any errors which occurred during the execution, and input and output artifact location details.

  • ListPipelines, which gets a summary of all of the pipelines associated with your account.

  • ListPipelineExecutions, which gets a summary of the most recent executions for a pipeline.

  • StartPipelineExecution, which runs the the most recent revision of an artifact through the pipeline.

  • UpdatePipeline, which updates a pipeline with edits or changes to the structure of the pipeline.

Pipelines include stages. Each stage contains one or more actions that must complete before the next stage begins. A stage will result in success or failure. If a stage fails, then the pipeline stops at that stage and will remain stopped until either a new version of an artifact appears in the source location, or a user takes action to re-run the most recent artifact through the pipeline. You can call GetPipelineState, which displays the status of a pipeline, including the status of stages in the pipeline, or GetPipeline, which returns the entire structure of the pipeline, including the stages of that pipeline. For more information about the structure of stages and actions, also refer to the AWS CodePipeline Pipeline Structure Reference (https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-structure.html).

Pipeline stages include actions, which are categorized into categories such as source or build actions performed within a stage of a pipeline. For example, you can use a source action to import artifacts into a pipeline from a source such as Amazon S3. Like stages, you do not work with actions directly in most cases, but you do define and interact with actions when working with pipeline operations such as CreatePipeline and GetPipelineState. Valid action categories are:

  • Source

  • Build

  • Test

  • Deploy

  • Approval

  • Invoke

Pipelines also include transitions, which allow the transition of artifacts from one stage to the next in a pipeline after the actions in one stage complete.

You can work with transitions by calling:

  • DisableStageTransition, which prevents artifacts from transitioning to the next stage in a pipeline.

  • EnableStageTransition, which enables transition of artifacts between stages in a pipeline.

Using the API to integrate with AWS CodePipeline

For third-party integrators or developers who want to create their own integrations with AWS CodePipeline, the expected sequence varies from the standard API user. In order to integrate with AWS CodePipeline, developers will need to work with the following items:

Jobs, which are instances of an action. For example, a job for a source action might import a revision of an artifact from a source.

You can work with jobs by calling:

  • AcknowledgeJob, which confirms whether a job worker has received the specified job,

  • GetJobDetails, which returns the details of a job,

  • PollForJobs, which determines whether there are any jobs to act upon,

  • PutJobFailureResult, which provides details of a job failure, and

  • PutJobSuccessResult, which provides details of a job success.

Third party jobs, which are instances of an action created by a partner action and integrated into AWS CodePipeline. Partner actions are created by members of the AWS Partner Network.

You can work with third party jobs by calling:

  • AcknowledgeThirdPartyJob, which confirms whether a job worker has received the specified job,

  • GetThirdPartyJobDetails, which requests the details of a job for a partner action,

  • PollForThirdPartyJobs, which determines whether there are any jobs to act upon,

  • PutThirdPartyJobFailureResult, which provides details of a job failure, and

  • PutThirdPartyJobSuccessResult, which provides details of a job success.

For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09

METHODS

AcknowledgeJob

JobId => Str
Nonce => Str

Each argument is described in detail in: Paws::CodePipeline::AcknowledgeJob

Returns: a Paws::CodePipeline::AcknowledgeJobOutput instance

Returns information about a specified job and whether that job has been received by the job worker. Only used for custom actions.

AcknowledgeThirdPartyJob

ClientToken => Str
JobId => Str
Nonce => Str

Each argument is described in detail in: Paws::CodePipeline::AcknowledgeThirdPartyJob

Returns: a Paws::CodePipeline::AcknowledgeThirdPartyJobOutput instance

Confirms a job worker has received the specified job. Only used for partner actions.

CreateCustomActionType

Category => Str
InputArtifactDetails => Paws::CodePipeline::ArtifactDetails
OutputArtifactDetails => Paws::CodePipeline::ArtifactDetails
Provider => Str
Version => Str
[ConfigurationProperties => ArrayRef[Paws::CodePipeline::ActionConfigurationProperty]]
[Settings => Paws::CodePipeline::ActionTypeSettings]
[Tags => ArrayRef[Paws::CodePipeline::Tag]]

Each argument is described in detail in: Paws::CodePipeline::CreateCustomActionType

Returns: a Paws::CodePipeline::CreateCustomActionTypeOutput instance

Creates a new custom action that can be used in all pipelines associated with the AWS account. Only used for custom actions.

CreatePipeline

Pipeline => Paws::CodePipeline::PipelineDeclaration
[Tags => ArrayRef[Paws::CodePipeline::Tag]]

Each argument is described in detail in: Paws::CodePipeline::CreatePipeline

Returns: a Paws::CodePipeline::CreatePipelineOutput instance

Creates a pipeline.

DeleteCustomActionType

Category => Str
Provider => Str
Version => Str

Each argument is described in detail in: Paws::CodePipeline::DeleteCustomActionType

Returns: nothing

Marks a custom action as deleted. PollForJobs for the custom action will fail after the action is marked for deletion. Only used for custom actions.

To re-create a custom action after it has been deleted you must use a string in the version field that has never been used before. This string can be an incremented version number, for example. To restore a deleted custom action, use a JSON file that is identical to the deleted action, including the original string in the version field.

DeletePipeline

Name => Str

Each argument is described in detail in: Paws::CodePipeline::DeletePipeline

Returns: nothing

Deletes the specified pipeline.

DeleteWebhook

Name => Str

Each argument is described in detail in: Paws::CodePipeline::DeleteWebhook

Returns: a Paws::CodePipeline::DeleteWebhookOutput instance

Deletes a previously created webhook by name. Deleting the webhook stops AWS CodePipeline from starting a pipeline every time an external event occurs. The API will return successfully when trying to delete a webhook that is already deleted. If a deleted webhook is re-created by calling PutWebhook with the same name, it will have a different URL.

DeregisterWebhookWithThirdParty

[WebhookName => Str]

Each argument is described in detail in: Paws::CodePipeline::DeregisterWebhookWithThirdParty

Returns: a Paws::CodePipeline::DeregisterWebhookWithThirdPartyOutput instance

Removes the connection between the webhook that was created by CodePipeline and the external tool with events to be detected. Currently only supported for webhooks that target an action type of GitHub.

DisableStageTransition

PipelineName => Str
Reason => Str
StageName => Str
TransitionType => Str

Each argument is described in detail in: Paws::CodePipeline::DisableStageTransition

Returns: nothing

Prevents artifacts in a pipeline from transitioning to the next stage in the pipeline.

EnableStageTransition

PipelineName => Str
StageName => Str
TransitionType => Str

Each argument is described in detail in: Paws::CodePipeline::EnableStageTransition

Returns: nothing

Enables artifacts in a pipeline to transition to a stage in a pipeline.

GetJobDetails

JobId => Str

Each argument is described in detail in: Paws::CodePipeline::GetJobDetails

Returns: a Paws::CodePipeline::GetJobDetailsOutput instance

Returns information about a job. Only used for custom actions.

When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. Additionally, this API returns any secret values defined for the action.

GetPipeline

Name => Str
[Version => Int]

Each argument is described in detail in: Paws::CodePipeline::GetPipeline

Returns: a Paws::CodePipeline::GetPipelineOutput instance

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.

GetPipelineExecution

PipelineExecutionId => Str
PipelineName => Str

Each argument is described in detail in: Paws::CodePipeline::GetPipelineExecution

Returns: a Paws::CodePipeline::GetPipelineExecutionOutput instance

Returns information about an execution of a pipeline, including details about artifacts, the pipeline execution ID, and the name, version, and status of the pipeline.

GetPipelineState

Name => Str

Each argument is described in detail in: Paws::CodePipeline::GetPipelineState

Returns: a Paws::CodePipeline::GetPipelineStateOutput instance

Returns information about the state of a pipeline, including the stages and actions.

Values returned in the revisionId and revisionUrl fields indicate the source revision information, such as the commit ID, for the current state.

GetThirdPartyJobDetails

ClientToken => Str
JobId => Str

Each argument is described in detail in: Paws::CodePipeline::GetThirdPartyJobDetails

Returns: a Paws::CodePipeline::GetThirdPartyJobDetailsOutput instance

Requests the details of a job for a third party action. Only used for partner actions.

When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. Additionally, this API returns any secret values defined for the action.

ListActionExecutions

PipelineName => Str
[Filter => Paws::CodePipeline::ActionExecutionFilter]
[MaxResults => Int]
[NextToken => Str]

Each argument is described in detail in: Paws::CodePipeline::ListActionExecutions

Returns: a Paws::CodePipeline::ListActionExecutionsOutput instance

Lists the action executions that have occurred in a pipeline.

ListActionTypes

[ActionOwnerFilter => Str]
[NextToken => Str]

Each argument is described in detail in: Paws::CodePipeline::ListActionTypes

Returns: a Paws::CodePipeline::ListActionTypesOutput instance

Gets a summary of all AWS CodePipeline action types associated with your account.

ListPipelineExecutions

PipelineName => Str
[MaxResults => Int]
[NextToken => Str]

Each argument is described in detail in: Paws::CodePipeline::ListPipelineExecutions

Returns: a Paws::CodePipeline::ListPipelineExecutionsOutput instance

Gets a summary of the most recent executions for a pipeline.

ListPipelines

[NextToken => Str]

Each argument is described in detail in: Paws::CodePipeline::ListPipelines

Returns: a Paws::CodePipeline::ListPipelinesOutput instance

Gets a summary of all of the pipelines associated with your account.

ListTagsForResource

ResourceArn => Str
[MaxResults => Int]
[NextToken => Str]

Each argument is described in detail in: Paws::CodePipeline::ListTagsForResource

Returns: a Paws::CodePipeline::ListTagsForResourceOutput instance

Gets the set of key/value pairs (metadata) that are used to manage the resource.

ListWebhooks

[MaxResults => Int]
[NextToken => Str]

Each argument is described in detail in: Paws::CodePipeline::ListWebhooks

Returns: a Paws::CodePipeline::ListWebhooksOutput instance

Gets a listing of all the webhooks in this region for this account. The output lists all webhooks and includes the webhook URL and ARN, as well the configuration for each webhook.

PollForJobs

ActionTypeId => Paws::CodePipeline::ActionTypeId
[MaxBatchSize => Int]
[QueryParam => Paws::CodePipeline::QueryParamMap]

Each argument is described in detail in: Paws::CodePipeline::PollForJobs

Returns: a Paws::CodePipeline::PollForJobsOutput instance

Returns information about any jobs for AWS CodePipeline to act upon. PollForJobs is only valid for action types with "Custom" in the owner field. If the action type contains "AWS" or "ThirdParty" in the owner field, the PollForJobs action returns an error.

When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. Additionally, this API returns any secret values defined for the action.

PollForThirdPartyJobs

ActionTypeId => Paws::CodePipeline::ActionTypeId
[MaxBatchSize => Int]

Each argument is described in detail in: Paws::CodePipeline::PollForThirdPartyJobs

Returns: a Paws::CodePipeline::PollForThirdPartyJobsOutput instance

Determines whether there are any third party jobs for a job worker to act on. Only used for partner actions.

When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts.

PutActionRevision

ActionName => Str
ActionRevision => Paws::CodePipeline::ActionRevision
PipelineName => Str
StageName => Str

Each argument is described in detail in: Paws::CodePipeline::PutActionRevision

Returns: a Paws::CodePipeline::PutActionRevisionOutput instance

Provides information to AWS CodePipeline about new revisions to a source.

PutApprovalResult

ActionName => Str
PipelineName => Str
Result => Paws::CodePipeline::ApprovalResult
StageName => Str
Token => Str

Each argument is described in detail in: Paws::CodePipeline::PutApprovalResult

Returns: a Paws::CodePipeline::PutApprovalResultOutput instance

Provides the response to a manual approval request to AWS CodePipeline. Valid responses include Approved and Rejected.

PutJobFailureResult

FailureDetails => Paws::CodePipeline::FailureDetails
JobId => Str

Each argument is described in detail in: Paws::CodePipeline::PutJobFailureResult

Returns: nothing

Represents the failure of a job as returned to the pipeline by a job worker. Only used for custom actions.

PutJobSuccessResult

JobId => Str
[ContinuationToken => Str]
[CurrentRevision => Paws::CodePipeline::CurrentRevision]
[ExecutionDetails => Paws::CodePipeline::ExecutionDetails]

Each argument is described in detail in: Paws::CodePipeline::PutJobSuccessResult

Returns: nothing

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

PutThirdPartyJobFailureResult

ClientToken => Str
FailureDetails => Paws::CodePipeline::FailureDetails
JobId => Str

Each argument is described in detail in: Paws::CodePipeline::PutThirdPartyJobFailureResult

Returns: nothing

Represents the failure of a third party job as returned to the pipeline by a job worker. Only used for partner actions.

PutThirdPartyJobSuccessResult

ClientToken => Str
JobId => Str
[ContinuationToken => Str]
[CurrentRevision => Paws::CodePipeline::CurrentRevision]
[ExecutionDetails => Paws::CodePipeline::ExecutionDetails]

Each argument is described in detail in: Paws::CodePipeline::PutThirdPartyJobSuccessResult

Returns: nothing

Represents the success of a third party job as returned to the pipeline by a job worker. Only used for partner actions.

PutWebhook

Webhook => Paws::CodePipeline::WebhookDefinition
[Tags => ArrayRef[Paws::CodePipeline::Tag]]

Each argument is described in detail in: Paws::CodePipeline::PutWebhook

Returns: a Paws::CodePipeline::PutWebhookOutput instance

Defines a webhook and returns a unique webhook URL generated by CodePipeline. This URL can be supplied to third party source hosting providers to call every time there's a code change. When CodePipeline receives a POST request on this URL, the pipeline defined in the webhook is started as long as the POST request satisfied the authentication and filtering requirements supplied when defining the webhook. RegisterWebhookWithThirdParty and DeregisterWebhookWithThirdParty APIs can be used to automatically configure supported third parties to call the generated webhook URL.

RegisterWebhookWithThirdParty

[WebhookName => Str]

Each argument is described in detail in: Paws::CodePipeline::RegisterWebhookWithThirdParty

Returns: a Paws::CodePipeline::RegisterWebhookWithThirdPartyOutput instance

Configures a connection between the webhook that was created and the external tool with events to be detected.

RetryStageExecution

PipelineExecutionId => Str
PipelineName => Str
RetryMode => Str
StageName => Str

Each argument is described in detail in: Paws::CodePipeline::RetryStageExecution

Returns: a Paws::CodePipeline::RetryStageExecutionOutput instance

Resumes the pipeline execution by retrying the last failed actions in a stage.

StartPipelineExecution

Name => Str
[ClientRequestToken => Str]

Each argument is described in detail in: Paws::CodePipeline::StartPipelineExecution

Returns: a Paws::CodePipeline::StartPipelineExecutionOutput instance

Starts the specified pipeline. Specifically, it begins processing the latest commit to the source location specified as part of the pipeline.

TagResource

ResourceArn => Str
Tags => ArrayRef[Paws::CodePipeline::Tag]

Each argument is described in detail in: Paws::CodePipeline::TagResource

Returns: a Paws::CodePipeline::TagResourceOutput instance

Adds to or modifies the tags of the given resource. Tags are metadata that can be used to manage a resource.

UntagResource

ResourceArn => Str
TagKeys => ArrayRef[Str|Undef]

Each argument is described in detail in: Paws::CodePipeline::UntagResource

Returns: a Paws::CodePipeline::UntagResourceOutput instance

Removes tags from an AWS resource.

UpdatePipeline

Pipeline => Paws::CodePipeline::PipelineDeclaration

Each argument is described in detail in: Paws::CodePipeline::UpdatePipeline

Returns: a Paws::CodePipeline::UpdatePipelineOutput instance

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

PAGINATORS

Paginator methods are helpers that repetively call methods that return partial results

ListAllActionExecutions(sub { },PipelineName => Str, [Filter => Paws::CodePipeline::ActionExecutionFilter, MaxResults => Int, NextToken => Str])

ListAllActionExecutions(PipelineName => Str, [Filter => Paws::CodePipeline::ActionExecutionFilter, MaxResults => Int, NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - actionExecutionDetails, passing the object as the first parameter, and the string 'actionExecutionDetails' as the second parameter 

If not, it will return a a Paws::CodePipeline::ListActionExecutionsOutput instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

ListAllActionTypes(sub { },[ActionOwnerFilter => Str, NextToken => Str])

ListAllActionTypes([ActionOwnerFilter => Str, NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - actionTypes, passing the object as the first parameter, and the string 'actionTypes' as the second parameter 

If not, it will return a a Paws::CodePipeline::ListActionTypesOutput instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

ListAllPipelineExecutions(sub { },PipelineName => Str, [MaxResults => Int, NextToken => Str])

ListAllPipelineExecutions(PipelineName => Str, [MaxResults => Int, NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - pipelineExecutionSummaries, passing the object as the first parameter, and the string 'pipelineExecutionSummaries' as the second parameter 

If not, it will return a a Paws::CodePipeline::ListPipelineExecutionsOutput instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

ListAllPipelines(sub { },[NextToken => Str])

ListAllPipelines([NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - pipelines, passing the object as the first parameter, and the string 'pipelines' as the second parameter 

If not, it will return a a Paws::CodePipeline::ListPipelinesOutput instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

ListAllTagsForResource(sub { },ResourceArn => Str, [MaxResults => Int, NextToken => Str])

ListAllTagsForResource(ResourceArn => Str, [MaxResults => Int, NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - tags, passing the object as the first parameter, and the string 'tags' as the second parameter 

If not, it will return a a Paws::CodePipeline::ListTagsForResourceOutput instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

ListAllWebhooks(sub { },[MaxResults => Int, NextToken => Str])

ListAllWebhooks([MaxResults => Int, NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - webhooks, passing the object as the first parameter, and the string 'webhooks' as the second parameter 

If not, it will return a a Paws::CodePipeline::ListWebhooksOutput instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

SEE ALSO

This service class forms part of Paws

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues