/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace CodePipeline { /** * CodePipeline

Overview

This is the * CodePipeline API Reference. This guide provides descriptions of the actions and * data types for CodePipeline. Some functionality for your pipeline can only be * configured through the API. For more information, see the CodePipeline * User Guide.

You can use the CodePipeline API to work with pipelines, * stages, actions, and transitions.

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 that 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 most recent revision of an * artifact through the pipeline.

  • StopPipelineExecution, * which stops the specified pipeline execution from continuing 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 results in success or * failure. If a stage fails, the pipeline stops at that stage and remains stopped * until either a new version of an artifact appears in the source location, or a * user takes action to rerun 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, see CodePipeline * Pipeline Structure Reference.

Pipeline stages include actions * that are categorized into categories such as source or build actions performed * in 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:

Using the API to integrate with * CodePipeline

For third-party integrators or developers who want to * create their own integrations with CodePipeline, the expected sequence varies * from the standard API user. To integrate with CodePipeline, developers 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:

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

*

You can work with third party jobs by calling:

*/ class AWS_CODEPIPELINE_API CodePipelineClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods { public: typedef Aws::Client::AWSJsonClient BASECLASS; static const char* SERVICE_NAME; static const char* ALLOCATION_TAG; typedef CodePipelineClientConfiguration ClientConfigurationType; typedef CodePipelineEndpointProvider EndpointProviderType; /** * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ CodePipelineClient(const Aws::CodePipeline::CodePipelineClientConfiguration& clientConfiguration = Aws::CodePipeline::CodePipelineClientConfiguration(), std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG)); /** * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ CodePipelineClient(const Aws::Auth::AWSCredentials& credentials, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::CodePipeline::CodePipelineClientConfiguration& clientConfiguration = Aws::CodePipeline::CodePipelineClientConfiguration()); /** * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, * the default http client factory will be used */ CodePipelineClient(const std::shared_ptr& credentialsProvider, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::CodePipeline::CodePipelineClientConfiguration& clientConfiguration = Aws::CodePipeline::CodePipelineClientConfiguration()); /* Legacy constructors due deprecation */ /** * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ CodePipelineClient(const Aws::Client::ClientConfiguration& clientConfiguration); /** * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ CodePipelineClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration); /** * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, * the default http client factory will be used */ CodePipelineClient(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration); /* End of legacy constructors due deprecation */ virtual ~CodePipelineClient(); /** *

Returns information about a specified job and whether that job has been * received by the job worker. Used for custom actions only.

See * Also:

AWS * API Reference

*/ virtual Model::AcknowledgeJobOutcome AcknowledgeJob(const Model::AcknowledgeJobRequest& request) const; /** * A Callable wrapper for AcknowledgeJob that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AcknowledgeJobOutcomeCallable AcknowledgeJobCallable(const AcknowledgeJobRequestT& request) const { return SubmitCallable(&CodePipelineClient::AcknowledgeJob, request); } /** * An Async wrapper for AcknowledgeJob that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AcknowledgeJobAsync(const AcknowledgeJobRequestT& request, const AcknowledgeJobResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::AcknowledgeJob, request, handler, context); } /** *

Confirms a job worker has received the specified job. Used for partner * actions only.

See Also:

AWS * API Reference

*/ virtual Model::AcknowledgeThirdPartyJobOutcome AcknowledgeThirdPartyJob(const Model::AcknowledgeThirdPartyJobRequest& request) const; /** * A Callable wrapper for AcknowledgeThirdPartyJob that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AcknowledgeThirdPartyJobOutcomeCallable AcknowledgeThirdPartyJobCallable(const AcknowledgeThirdPartyJobRequestT& request) const { return SubmitCallable(&CodePipelineClient::AcknowledgeThirdPartyJob, request); } /** * An Async wrapper for AcknowledgeThirdPartyJob that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AcknowledgeThirdPartyJobAsync(const AcknowledgeThirdPartyJobRequestT& request, const AcknowledgeThirdPartyJobResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::AcknowledgeThirdPartyJob, request, handler, context); } /** *

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

See * Also:

AWS * API Reference

*/ virtual Model::CreateCustomActionTypeOutcome CreateCustomActionType(const Model::CreateCustomActionTypeRequest& request) const; /** * A Callable wrapper for CreateCustomActionType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateCustomActionTypeOutcomeCallable CreateCustomActionTypeCallable(const CreateCustomActionTypeRequestT& request) const { return SubmitCallable(&CodePipelineClient::CreateCustomActionType, request); } /** * An Async wrapper for CreateCustomActionType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateCustomActionTypeAsync(const CreateCustomActionTypeRequestT& request, const CreateCustomActionTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::CreateCustomActionType, request, handler, context); } /** *

Creates a pipeline.

In the pipeline structure, 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.

See * Also:

AWS * API Reference

*/ virtual Model::CreatePipelineOutcome CreatePipeline(const Model::CreatePipelineRequest& request) const; /** * A Callable wrapper for CreatePipeline that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreatePipelineOutcomeCallable CreatePipelineCallable(const CreatePipelineRequestT& request) const { return SubmitCallable(&CodePipelineClient::CreatePipeline, request); } /** * An Async wrapper for CreatePipeline that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreatePipelineAsync(const CreatePipelineRequestT& request, const CreatePipelineResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::CreatePipeline, request, handler, context); } /** *

Marks a custom action as deleted. PollForJobs for the custom * action fails after the action is marked for deletion. Used for custom actions * only.

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.

See * Also:

AWS * API Reference

*/ virtual Model::DeleteCustomActionTypeOutcome DeleteCustomActionType(const Model::DeleteCustomActionTypeRequest& request) const; /** * A Callable wrapper for DeleteCustomActionType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteCustomActionTypeOutcomeCallable DeleteCustomActionTypeCallable(const DeleteCustomActionTypeRequestT& request) const { return SubmitCallable(&CodePipelineClient::DeleteCustomActionType, request); } /** * An Async wrapper for DeleteCustomActionType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteCustomActionTypeAsync(const DeleteCustomActionTypeRequestT& request, const DeleteCustomActionTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::DeleteCustomActionType, request, handler, context); } /** *

Deletes the specified pipeline.

See Also:

AWS * API Reference

*/ virtual Model::DeletePipelineOutcome DeletePipeline(const Model::DeletePipelineRequest& request) const; /** * A Callable wrapper for DeletePipeline that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeletePipelineOutcomeCallable DeletePipelineCallable(const DeletePipelineRequestT& request) const { return SubmitCallable(&CodePipelineClient::DeletePipeline, request); } /** * An Async wrapper for DeletePipeline that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeletePipelineAsync(const DeletePipelineRequestT& request, const DeletePipelineResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::DeletePipeline, request, handler, context); } /** *

Deletes a previously created webhook by name. Deleting the webhook stops * CodePipeline from starting a pipeline every time an external event occurs. The * API returns 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.

See Also:

AWS * API Reference

*/ virtual Model::DeleteWebhookOutcome DeleteWebhook(const Model::DeleteWebhookRequest& request) const; /** * A Callable wrapper for DeleteWebhook that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteWebhookOutcomeCallable DeleteWebhookCallable(const DeleteWebhookRequestT& request) const { return SubmitCallable(&CodePipelineClient::DeleteWebhook, request); } /** * An Async wrapper for DeleteWebhook that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteWebhookAsync(const DeleteWebhookRequestT& request, const DeleteWebhookResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::DeleteWebhook, request, handler, context); } /** *

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

See Also:

AWS * API Reference

*/ virtual Model::DeregisterWebhookWithThirdPartyOutcome DeregisterWebhookWithThirdParty(const Model::DeregisterWebhookWithThirdPartyRequest& request) const; /** * A Callable wrapper for DeregisterWebhookWithThirdParty that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeregisterWebhookWithThirdPartyOutcomeCallable DeregisterWebhookWithThirdPartyCallable(const DeregisterWebhookWithThirdPartyRequestT& request) const { return SubmitCallable(&CodePipelineClient::DeregisterWebhookWithThirdParty, request); } /** * An Async wrapper for DeregisterWebhookWithThirdParty that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeregisterWebhookWithThirdPartyAsync(const DeregisterWebhookWithThirdPartyRequestT& request, const DeregisterWebhookWithThirdPartyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::DeregisterWebhookWithThirdParty, request, handler, context); } /** *

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

See Also:

AWS * API Reference

*/ virtual Model::DisableStageTransitionOutcome DisableStageTransition(const Model::DisableStageTransitionRequest& request) const; /** * A Callable wrapper for DisableStageTransition that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DisableStageTransitionOutcomeCallable DisableStageTransitionCallable(const DisableStageTransitionRequestT& request) const { return SubmitCallable(&CodePipelineClient::DisableStageTransition, request); } /** * An Async wrapper for DisableStageTransition that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DisableStageTransitionAsync(const DisableStageTransitionRequestT& request, const DisableStageTransitionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::DisableStageTransition, request, handler, context); } /** *

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

See Also:

AWS * API Reference

*/ virtual Model::EnableStageTransitionOutcome EnableStageTransition(const Model::EnableStageTransitionRequest& request) const; /** * A Callable wrapper for EnableStageTransition that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::EnableStageTransitionOutcomeCallable EnableStageTransitionCallable(const EnableStageTransitionRequestT& request) const { return SubmitCallable(&CodePipelineClient::EnableStageTransition, request); } /** * An Async wrapper for EnableStageTransition that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void EnableStageTransitionAsync(const EnableStageTransitionRequestT& request, const EnableStageTransitionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::EnableStageTransition, request, handler, context); } /** *

Returns information about an action type created for an external provider, * where the action is to be used by customers of the external provider. The action * can be created with any supported integration model.

See Also:

* AWS * API Reference

*/ virtual Model::GetActionTypeOutcome GetActionType(const Model::GetActionTypeRequest& request) const; /** * A Callable wrapper for GetActionType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetActionTypeOutcomeCallable GetActionTypeCallable(const GetActionTypeRequestT& request) const { return SubmitCallable(&CodePipelineClient::GetActionType, request); } /** * An Async wrapper for GetActionType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetActionTypeAsync(const GetActionTypeRequestT& request, const GetActionTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::GetActionType, request, handler, context); } /** *

Returns information about a job. Used for custom actions only.

*

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

*

See Also:

AWS * API Reference

*/ virtual Model::GetJobDetailsOutcome GetJobDetails(const Model::GetJobDetailsRequest& request) const; /** * A Callable wrapper for GetJobDetails that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetJobDetailsOutcomeCallable GetJobDetailsCallable(const GetJobDetailsRequestT& request) const { return SubmitCallable(&CodePipelineClient::GetJobDetails, request); } /** * An Async wrapper for GetJobDetails that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetJobDetailsAsync(const GetJobDetailsRequestT& request, const GetJobDetailsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::GetJobDetails, request, handler, context); } /** *

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 Reference

*/ virtual Model::GetPipelineOutcome GetPipeline(const Model::GetPipelineRequest& request) const; /** * A Callable wrapper for GetPipeline that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetPipelineOutcomeCallable GetPipelineCallable(const GetPipelineRequestT& request) const { return SubmitCallable(&CodePipelineClient::GetPipeline, request); } /** * An Async wrapper for GetPipeline that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetPipelineAsync(const GetPipelineRequestT& request, const GetPipelineResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::GetPipeline, request, handler, context); } /** *

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.

See Also:

AWS * API Reference

*/ virtual Model::GetPipelineExecutionOutcome GetPipelineExecution(const Model::GetPipelineExecutionRequest& request) const; /** * A Callable wrapper for GetPipelineExecution that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetPipelineExecutionOutcomeCallable GetPipelineExecutionCallable(const GetPipelineExecutionRequestT& request) const { return SubmitCallable(&CodePipelineClient::GetPipelineExecution, request); } /** * An Async wrapper for GetPipelineExecution that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetPipelineExecutionAsync(const GetPipelineExecutionRequestT& request, const GetPipelineExecutionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::GetPipelineExecution, request, handler, context); } /** *

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.

See Also:

AWS * API Reference

*/ virtual Model::GetPipelineStateOutcome GetPipelineState(const Model::GetPipelineStateRequest& request) const; /** * A Callable wrapper for GetPipelineState that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetPipelineStateOutcomeCallable GetPipelineStateCallable(const GetPipelineStateRequestT& request) const { return SubmitCallable(&CodePipelineClient::GetPipelineState, request); } /** * An Async wrapper for GetPipelineState that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetPipelineStateAsync(const GetPipelineStateRequestT& request, const GetPipelineStateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::GetPipelineState, request, handler, context); } /** *

Requests the details of a job for a third party action. Used for partner * actions only.

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

*

See Also:

AWS * API Reference

*/ virtual Model::GetThirdPartyJobDetailsOutcome GetThirdPartyJobDetails(const Model::GetThirdPartyJobDetailsRequest& request) const; /** * A Callable wrapper for GetThirdPartyJobDetails that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetThirdPartyJobDetailsOutcomeCallable GetThirdPartyJobDetailsCallable(const GetThirdPartyJobDetailsRequestT& request) const { return SubmitCallable(&CodePipelineClient::GetThirdPartyJobDetails, request); } /** * An Async wrapper for GetThirdPartyJobDetails that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetThirdPartyJobDetailsAsync(const GetThirdPartyJobDetailsRequestT& request, const GetThirdPartyJobDetailsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::GetThirdPartyJobDetails, request, handler, context); } /** *

Lists the action executions that have occurred in a pipeline.

See * Also:

AWS * API Reference

*/ virtual Model::ListActionExecutionsOutcome ListActionExecutions(const Model::ListActionExecutionsRequest& request) const; /** * A Callable wrapper for ListActionExecutions that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListActionExecutionsOutcomeCallable ListActionExecutionsCallable(const ListActionExecutionsRequestT& request) const { return SubmitCallable(&CodePipelineClient::ListActionExecutions, request); } /** * An Async wrapper for ListActionExecutions that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListActionExecutionsAsync(const ListActionExecutionsRequestT& request, const ListActionExecutionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::ListActionExecutions, request, handler, context); } /** *

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

See Also:

AWS * API Reference

*/ virtual Model::ListActionTypesOutcome ListActionTypes(const Model::ListActionTypesRequest& request) const; /** * A Callable wrapper for ListActionTypes that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListActionTypesOutcomeCallable ListActionTypesCallable(const ListActionTypesRequestT& request) const { return SubmitCallable(&CodePipelineClient::ListActionTypes, request); } /** * An Async wrapper for ListActionTypes that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListActionTypesAsync(const ListActionTypesRequestT& request, const ListActionTypesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::ListActionTypes, request, handler, context); } /** *

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

See * Also:

AWS * API Reference

*/ virtual Model::ListPipelineExecutionsOutcome ListPipelineExecutions(const Model::ListPipelineExecutionsRequest& request) const; /** * A Callable wrapper for ListPipelineExecutions that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListPipelineExecutionsOutcomeCallable ListPipelineExecutionsCallable(const ListPipelineExecutionsRequestT& request) const { return SubmitCallable(&CodePipelineClient::ListPipelineExecutions, request); } /** * An Async wrapper for ListPipelineExecutions that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListPipelineExecutionsAsync(const ListPipelineExecutionsRequestT& request, const ListPipelineExecutionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::ListPipelineExecutions, request, handler, context); } /** *

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

See Also:

AWS * API Reference

*/ virtual Model::ListPipelinesOutcome ListPipelines(const Model::ListPipelinesRequest& request) const; /** * A Callable wrapper for ListPipelines that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListPipelinesOutcomeCallable ListPipelinesCallable(const ListPipelinesRequestT& request) const { return SubmitCallable(&CodePipelineClient::ListPipelines, request); } /** * An Async wrapper for ListPipelines that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListPipelinesAsync(const ListPipelinesRequestT& request, const ListPipelinesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::ListPipelines, request, handler, context); } /** *

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

See Also:

AWS * API Reference

*/ virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const; /** * A Callable wrapper for ListTagsForResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT& request) const { return SubmitCallable(&CodePipelineClient::ListTagsForResource, request); } /** * An Async wrapper for ListTagsForResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListTagsForResourceAsync(const ListTagsForResourceRequestT& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::ListTagsForResource, request, handler, context); } /** *

Gets a listing of all the webhooks in this Amazon Web Services Region for * this account. The output lists all webhooks and includes the webhook URL and ARN * and the configuration for each webhook.

See Also:

AWS * API Reference

*/ virtual Model::ListWebhooksOutcome ListWebhooks(const Model::ListWebhooksRequest& request) const; /** * A Callable wrapper for ListWebhooks that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListWebhooksOutcomeCallable ListWebhooksCallable(const ListWebhooksRequestT& request) const { return SubmitCallable(&CodePipelineClient::ListWebhooks, request); } /** * An Async wrapper for ListWebhooks that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListWebhooksAsync(const ListWebhooksRequestT& request, const ListWebhooksResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::ListWebhooks, request, handler, context); } /** *

Returns information about any jobs for CodePipeline to act on. * PollForJobs is valid only 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, CodePipeline * returns temporary credentials for the S3 bucket used to store artifacts for the * pipeline, if the action requires access to that S3 bucket for input or output * artifacts. This API also returns any secret values defined for the action.

*

See Also:

AWS * API Reference

*/ virtual Model::PollForJobsOutcome PollForJobs(const Model::PollForJobsRequest& request) const; /** * A Callable wrapper for PollForJobs that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PollForJobsOutcomeCallable PollForJobsCallable(const PollForJobsRequestT& request) const { return SubmitCallable(&CodePipelineClient::PollForJobs, request); } /** * An Async wrapper for PollForJobs that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PollForJobsAsync(const PollForJobsRequestT& request, const PollForJobsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::PollForJobs, request, handler, context); } /** *

Determines whether there are any third party jobs for a job worker to act on. * Used for partner actions only.

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

See Also:

AWS * API Reference

*/ virtual Model::PollForThirdPartyJobsOutcome PollForThirdPartyJobs(const Model::PollForThirdPartyJobsRequest& request) const; /** * A Callable wrapper for PollForThirdPartyJobs that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PollForThirdPartyJobsOutcomeCallable PollForThirdPartyJobsCallable(const PollForThirdPartyJobsRequestT& request) const { return SubmitCallable(&CodePipelineClient::PollForThirdPartyJobs, request); } /** * An Async wrapper for PollForThirdPartyJobs that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PollForThirdPartyJobsAsync(const PollForThirdPartyJobsRequestT& request, const PollForThirdPartyJobsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::PollForThirdPartyJobs, request, handler, context); } /** *

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

See Also:

AWS * API Reference

*/ virtual Model::PutActionRevisionOutcome PutActionRevision(const Model::PutActionRevisionRequest& request) const; /** * A Callable wrapper for PutActionRevision that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PutActionRevisionOutcomeCallable PutActionRevisionCallable(const PutActionRevisionRequestT& request) const { return SubmitCallable(&CodePipelineClient::PutActionRevision, request); } /** * An Async wrapper for PutActionRevision that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PutActionRevisionAsync(const PutActionRevisionRequestT& request, const PutActionRevisionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::PutActionRevision, request, handler, context); } /** *

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

See Also:

AWS * API Reference

*/ virtual Model::PutApprovalResultOutcome PutApprovalResult(const Model::PutApprovalResultRequest& request) const; /** * A Callable wrapper for PutApprovalResult that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PutApprovalResultOutcomeCallable PutApprovalResultCallable(const PutApprovalResultRequestT& request) const { return SubmitCallable(&CodePipelineClient::PutApprovalResult, request); } /** * An Async wrapper for PutApprovalResult that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PutApprovalResultAsync(const PutApprovalResultRequestT& request, const PutApprovalResultResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::PutApprovalResult, request, handler, context); } /** *

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

See Also:

AWS * API Reference

*/ virtual Model::PutJobFailureResultOutcome PutJobFailureResult(const Model::PutJobFailureResultRequest& request) const; /** * A Callable wrapper for PutJobFailureResult that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PutJobFailureResultOutcomeCallable PutJobFailureResultCallable(const PutJobFailureResultRequestT& request) const { return SubmitCallable(&CodePipelineClient::PutJobFailureResult, request); } /** * An Async wrapper for PutJobFailureResult that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PutJobFailureResultAsync(const PutJobFailureResultRequestT& request, const PutJobFailureResultResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::PutJobFailureResult, request, handler, context); } /** *

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

See Also:

AWS * API Reference

*/ virtual Model::PutJobSuccessResultOutcome PutJobSuccessResult(const Model::PutJobSuccessResultRequest& request) const; /** * A Callable wrapper for PutJobSuccessResult that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PutJobSuccessResultOutcomeCallable PutJobSuccessResultCallable(const PutJobSuccessResultRequestT& request) const { return SubmitCallable(&CodePipelineClient::PutJobSuccessResult, request); } /** * An Async wrapper for PutJobSuccessResult that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PutJobSuccessResultAsync(const PutJobSuccessResultRequestT& request, const PutJobSuccessResultResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::PutJobSuccessResult, request, handler, context); } /** *

Represents the failure of a third party job as returned to the pipeline by a * job worker. Used for partner actions only.

See Also:

AWS * API Reference

*/ virtual Model::PutThirdPartyJobFailureResultOutcome PutThirdPartyJobFailureResult(const Model::PutThirdPartyJobFailureResultRequest& request) const; /** * A Callable wrapper for PutThirdPartyJobFailureResult that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PutThirdPartyJobFailureResultOutcomeCallable PutThirdPartyJobFailureResultCallable(const PutThirdPartyJobFailureResultRequestT& request) const { return SubmitCallable(&CodePipelineClient::PutThirdPartyJobFailureResult, request); } /** * An Async wrapper for PutThirdPartyJobFailureResult that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PutThirdPartyJobFailureResultAsync(const PutThirdPartyJobFailureResultRequestT& request, const PutThirdPartyJobFailureResultResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::PutThirdPartyJobFailureResult, request, handler, context); } /** *

Represents the success of a third party job as returned to the pipeline by a * job worker. Used for partner actions only.

See Also:

AWS * API Reference

*/ virtual Model::PutThirdPartyJobSuccessResultOutcome PutThirdPartyJobSuccessResult(const Model::PutThirdPartyJobSuccessResultRequest& request) const; /** * A Callable wrapper for PutThirdPartyJobSuccessResult that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PutThirdPartyJobSuccessResultOutcomeCallable PutThirdPartyJobSuccessResultCallable(const PutThirdPartyJobSuccessResultRequestT& request) const { return SubmitCallable(&CodePipelineClient::PutThirdPartyJobSuccessResult, request); } /** * An Async wrapper for PutThirdPartyJobSuccessResult that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PutThirdPartyJobSuccessResultAsync(const PutThirdPartyJobSuccessResultRequestT& request, const PutThirdPartyJobSuccessResultResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::PutThirdPartyJobSuccessResult, request, handler, context); } /** *

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.

See Also:

AWS * API Reference

*/ virtual Model::PutWebhookOutcome PutWebhook(const Model::PutWebhookRequest& request) const; /** * A Callable wrapper for PutWebhook that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PutWebhookOutcomeCallable PutWebhookCallable(const PutWebhookRequestT& request) const { return SubmitCallable(&CodePipelineClient::PutWebhook, request); } /** * An Async wrapper for PutWebhook that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PutWebhookAsync(const PutWebhookRequestT& request, const PutWebhookResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::PutWebhook, request, handler, context); } /** *

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

See Also:

AWS * API Reference

*/ virtual Model::RegisterWebhookWithThirdPartyOutcome RegisterWebhookWithThirdParty(const Model::RegisterWebhookWithThirdPartyRequest& request) const; /** * A Callable wrapper for RegisterWebhookWithThirdParty that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::RegisterWebhookWithThirdPartyOutcomeCallable RegisterWebhookWithThirdPartyCallable(const RegisterWebhookWithThirdPartyRequestT& request) const { return SubmitCallable(&CodePipelineClient::RegisterWebhookWithThirdParty, request); } /** * An Async wrapper for RegisterWebhookWithThirdParty that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void RegisterWebhookWithThirdPartyAsync(const RegisterWebhookWithThirdPartyRequestT& request, const RegisterWebhookWithThirdPartyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::RegisterWebhookWithThirdParty, request, handler, context); } /** *

Resumes the pipeline execution by retrying the last failed actions in a * stage. You can retry a stage immediately if any of the actions in the stage * fail. When you retry, all actions that are still in progress continue working, * and failed actions are triggered again.

See Also:

AWS * API Reference

*/ virtual Model::RetryStageExecutionOutcome RetryStageExecution(const Model::RetryStageExecutionRequest& request) const; /** * A Callable wrapper for RetryStageExecution that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::RetryStageExecutionOutcomeCallable RetryStageExecutionCallable(const RetryStageExecutionRequestT& request) const { return SubmitCallable(&CodePipelineClient::RetryStageExecution, request); } /** * An Async wrapper for RetryStageExecution that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void RetryStageExecutionAsync(const RetryStageExecutionRequestT& request, const RetryStageExecutionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::RetryStageExecution, request, handler, context); } /** *

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

See * Also:

AWS * API Reference

*/ virtual Model::StartPipelineExecutionOutcome StartPipelineExecution(const Model::StartPipelineExecutionRequest& request) const; /** * A Callable wrapper for StartPipelineExecution that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StartPipelineExecutionOutcomeCallable StartPipelineExecutionCallable(const StartPipelineExecutionRequestT& request) const { return SubmitCallable(&CodePipelineClient::StartPipelineExecution, request); } /** * An Async wrapper for StartPipelineExecution that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StartPipelineExecutionAsync(const StartPipelineExecutionRequestT& request, const StartPipelineExecutionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::StartPipelineExecution, request, handler, context); } /** *

Stops the specified pipeline execution. You choose to either stop the * pipeline execution by completing in-progress actions without starting subsequent * actions, or by abandoning in-progress actions. While completing or abandoning * in-progress actions, the pipeline execution is in a Stopping state. * After all in-progress actions are completed or abandoned, the pipeline execution * is in a Stopped state.

See Also:

AWS * API Reference

*/ virtual Model::StopPipelineExecutionOutcome StopPipelineExecution(const Model::StopPipelineExecutionRequest& request) const; /** * A Callable wrapper for StopPipelineExecution that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StopPipelineExecutionOutcomeCallable StopPipelineExecutionCallable(const StopPipelineExecutionRequestT& request) const { return SubmitCallable(&CodePipelineClient::StopPipelineExecution, request); } /** * An Async wrapper for StopPipelineExecution that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StopPipelineExecutionAsync(const StopPipelineExecutionRequestT& request, const StopPipelineExecutionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::StopPipelineExecution, request, handler, context); } /** *

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

See Also:

AWS * API Reference

*/ virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest& request) const; /** * A Callable wrapper for TagResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT& request) const { return SubmitCallable(&CodePipelineClient::TagResource, request); } /** * An Async wrapper for TagResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void TagResourceAsync(const TagResourceRequestT& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::TagResource, request, handler, context); } /** *

Removes tags from an Amazon Web Services resource.

See Also:

* AWS * API Reference

*/ virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest& request) const; /** * A Callable wrapper for UntagResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT& request) const { return SubmitCallable(&CodePipelineClient::UntagResource, request); } /** * An Async wrapper for UntagResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UntagResourceAsync(const UntagResourceRequestT& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::UntagResource, request, handler, context); } /** *

Updates an action type that was created with any supported integration model, * where the action type is to be used by customers of the action type provider. * Use a JSON file with the action definition and UpdateActionType to * provide the full structure.

See Also:

AWS * API Reference

*/ virtual Model::UpdateActionTypeOutcome UpdateActionType(const Model::UpdateActionTypeRequest& request) const; /** * A Callable wrapper for UpdateActionType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateActionTypeOutcomeCallable UpdateActionTypeCallable(const UpdateActionTypeRequestT& request) const { return SubmitCallable(&CodePipelineClient::UpdateActionType, request); } /** * An Async wrapper for UpdateActionType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateActionTypeAsync(const UpdateActionTypeRequestT& request, const UpdateActionTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::UpdateActionType, request, handler, context); } /** *

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 Reference

*/ virtual Model::UpdatePipelineOutcome UpdatePipeline(const Model::UpdatePipelineRequest& request) const; /** * A Callable wrapper for UpdatePipeline that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdatePipelineOutcomeCallable UpdatePipelineCallable(const UpdatePipelineRequestT& request) const { return SubmitCallable(&CodePipelineClient::UpdatePipeline, request); } /** * An Async wrapper for UpdatePipeline that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdatePipelineAsync(const UpdatePipelineRequestT& request, const UpdatePipelineResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&CodePipelineClient::UpdatePipeline, request, handler, context); } void OverrideEndpoint(const Aws::String& endpoint); std::shared_ptr& accessEndpointProvider(); private: friend class Aws::Client::ClientWithAsyncTemplateMethods; void init(const CodePipelineClientConfiguration& clientConfiguration); CodePipelineClientConfiguration m_clientConfiguration; std::shared_ptr m_executor; std::shared_ptr m_endpointProvider; }; } // namespace CodePipeline } // namespace Aws