/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace Http { class HttpClient; class HttpClientFactory; } // namespace Http namespace Utils { template< typename R, typename E> class Outcome; namespace Threading { class Executor; } // namespace Threading } // namespace Utils namespace Auth { class AWSCredentials; class AWSCredentialsProvider; } // namespace Auth namespace Client { class RetryStrategy; } // namespace Client namespace CodeDeploy { namespace Model { class AddTagsToOnPremisesInstancesRequest; class BatchGetApplicationRevisionsRequest; class BatchGetApplicationsRequest; class BatchGetDeploymentGroupsRequest; class BatchGetDeploymentTargetsRequest; class BatchGetDeploymentsRequest; class BatchGetOnPremisesInstancesRequest; class ContinueDeploymentRequest; class CreateApplicationRequest; class CreateDeploymentRequest; class CreateDeploymentConfigRequest; class CreateDeploymentGroupRequest; class DeleteApplicationRequest; class DeleteDeploymentConfigRequest; class DeleteDeploymentGroupRequest; class DeleteGitHubAccountTokenRequest; class DeleteResourcesByExternalIdRequest; class DeregisterOnPremisesInstanceRequest; class GetApplicationRequest; class GetApplicationRevisionRequest; class GetDeploymentRequest; class GetDeploymentConfigRequest; class GetDeploymentGroupRequest; class GetDeploymentTargetRequest; class GetOnPremisesInstanceRequest; class ListApplicationRevisionsRequest; class ListApplicationsRequest; class ListDeploymentConfigsRequest; class ListDeploymentGroupsRequest; class ListDeploymentTargetsRequest; class ListDeploymentsRequest; class ListGitHubAccountTokenNamesRequest; class ListOnPremisesInstancesRequest; class ListTagsForResourceRequest; class PutLifecycleEventHookExecutionStatusRequest; class RegisterApplicationRevisionRequest; class RegisterOnPremisesInstanceRequest; class RemoveTagsFromOnPremisesInstancesRequest; class StopDeploymentRequest; class TagResourceRequest; class UntagResourceRequest; class UpdateApplicationRequest; class UpdateDeploymentGroupRequest; typedef Aws::Utils::Outcome AddTagsToOnPremisesInstancesOutcome; typedef Aws::Utils::Outcome BatchGetApplicationRevisionsOutcome; typedef Aws::Utils::Outcome BatchGetApplicationsOutcome; typedef Aws::Utils::Outcome BatchGetDeploymentGroupsOutcome; typedef Aws::Utils::Outcome BatchGetDeploymentTargetsOutcome; typedef Aws::Utils::Outcome BatchGetDeploymentsOutcome; typedef Aws::Utils::Outcome BatchGetOnPremisesInstancesOutcome; typedef Aws::Utils::Outcome ContinueDeploymentOutcome; typedef Aws::Utils::Outcome CreateApplicationOutcome; typedef Aws::Utils::Outcome CreateDeploymentOutcome; typedef Aws::Utils::Outcome CreateDeploymentConfigOutcome; typedef Aws::Utils::Outcome CreateDeploymentGroupOutcome; typedef Aws::Utils::Outcome DeleteApplicationOutcome; typedef Aws::Utils::Outcome DeleteDeploymentConfigOutcome; typedef Aws::Utils::Outcome DeleteDeploymentGroupOutcome; typedef Aws::Utils::Outcome DeleteGitHubAccountTokenOutcome; typedef Aws::Utils::Outcome DeleteResourcesByExternalIdOutcome; typedef Aws::Utils::Outcome DeregisterOnPremisesInstanceOutcome; typedef Aws::Utils::Outcome GetApplicationOutcome; typedef Aws::Utils::Outcome GetApplicationRevisionOutcome; typedef Aws::Utils::Outcome GetDeploymentOutcome; typedef Aws::Utils::Outcome GetDeploymentConfigOutcome; typedef Aws::Utils::Outcome GetDeploymentGroupOutcome; typedef Aws::Utils::Outcome GetDeploymentTargetOutcome; typedef Aws::Utils::Outcome GetOnPremisesInstanceOutcome; typedef Aws::Utils::Outcome ListApplicationRevisionsOutcome; typedef Aws::Utils::Outcome ListApplicationsOutcome; typedef Aws::Utils::Outcome ListDeploymentConfigsOutcome; typedef Aws::Utils::Outcome ListDeploymentGroupsOutcome; typedef Aws::Utils::Outcome ListDeploymentTargetsOutcome; typedef Aws::Utils::Outcome ListDeploymentsOutcome; typedef Aws::Utils::Outcome ListGitHubAccountTokenNamesOutcome; typedef Aws::Utils::Outcome ListOnPremisesInstancesOutcome; typedef Aws::Utils::Outcome ListTagsForResourceOutcome; typedef Aws::Utils::Outcome PutLifecycleEventHookExecutionStatusOutcome; typedef Aws::Utils::Outcome RegisterApplicationRevisionOutcome; typedef Aws::Utils::Outcome RegisterOnPremisesInstanceOutcome; typedef Aws::Utils::Outcome RemoveTagsFromOnPremisesInstancesOutcome; typedef Aws::Utils::Outcome StopDeploymentOutcome; typedef Aws::Utils::Outcome TagResourceOutcome; typedef Aws::Utils::Outcome UntagResourceOutcome; typedef Aws::Utils::Outcome UpdateApplicationOutcome; typedef Aws::Utils::Outcome UpdateDeploymentGroupOutcome; typedef std::future AddTagsToOnPremisesInstancesOutcomeCallable; typedef std::future BatchGetApplicationRevisionsOutcomeCallable; typedef std::future BatchGetApplicationsOutcomeCallable; typedef std::future BatchGetDeploymentGroupsOutcomeCallable; typedef std::future BatchGetDeploymentTargetsOutcomeCallable; typedef std::future BatchGetDeploymentsOutcomeCallable; typedef std::future BatchGetOnPremisesInstancesOutcomeCallable; typedef std::future ContinueDeploymentOutcomeCallable; typedef std::future CreateApplicationOutcomeCallable; typedef std::future CreateDeploymentOutcomeCallable; typedef std::future CreateDeploymentConfigOutcomeCallable; typedef std::future CreateDeploymentGroupOutcomeCallable; typedef std::future DeleteApplicationOutcomeCallable; typedef std::future DeleteDeploymentConfigOutcomeCallable; typedef std::future DeleteDeploymentGroupOutcomeCallable; typedef std::future DeleteGitHubAccountTokenOutcomeCallable; typedef std::future DeleteResourcesByExternalIdOutcomeCallable; typedef std::future DeregisterOnPremisesInstanceOutcomeCallable; typedef std::future GetApplicationOutcomeCallable; typedef std::future GetApplicationRevisionOutcomeCallable; typedef std::future GetDeploymentOutcomeCallable; typedef std::future GetDeploymentConfigOutcomeCallable; typedef std::future GetDeploymentGroupOutcomeCallable; typedef std::future GetDeploymentTargetOutcomeCallable; typedef std::future GetOnPremisesInstanceOutcomeCallable; typedef std::future ListApplicationRevisionsOutcomeCallable; typedef std::future ListApplicationsOutcomeCallable; typedef std::future ListDeploymentConfigsOutcomeCallable; typedef std::future ListDeploymentGroupsOutcomeCallable; typedef std::future ListDeploymentTargetsOutcomeCallable; typedef std::future ListDeploymentsOutcomeCallable; typedef std::future ListGitHubAccountTokenNamesOutcomeCallable; typedef std::future ListOnPremisesInstancesOutcomeCallable; typedef std::future ListTagsForResourceOutcomeCallable; typedef std::future PutLifecycleEventHookExecutionStatusOutcomeCallable; typedef std::future RegisterApplicationRevisionOutcomeCallable; typedef std::future RegisterOnPremisesInstanceOutcomeCallable; typedef std::future RemoveTagsFromOnPremisesInstancesOutcomeCallable; typedef std::future StopDeploymentOutcomeCallable; typedef std::future TagResourceOutcomeCallable; typedef std::future UntagResourceOutcomeCallable; typedef std::future UpdateApplicationOutcomeCallable; typedef std::future UpdateDeploymentGroupOutcomeCallable; } // namespace Model class CodeDeployClient; typedef std::function&) > AddTagsToOnPremisesInstancesResponseReceivedHandler; typedef std::function&) > BatchGetApplicationRevisionsResponseReceivedHandler; typedef std::function&) > BatchGetApplicationsResponseReceivedHandler; typedef std::function&) > BatchGetDeploymentGroupsResponseReceivedHandler; typedef std::function&) > BatchGetDeploymentTargetsResponseReceivedHandler; typedef std::function&) > BatchGetDeploymentsResponseReceivedHandler; typedef std::function&) > BatchGetOnPremisesInstancesResponseReceivedHandler; typedef std::function&) > ContinueDeploymentResponseReceivedHandler; typedef std::function&) > CreateApplicationResponseReceivedHandler; typedef std::function&) > CreateDeploymentResponseReceivedHandler; typedef std::function&) > CreateDeploymentConfigResponseReceivedHandler; typedef std::function&) > CreateDeploymentGroupResponseReceivedHandler; typedef std::function&) > DeleteApplicationResponseReceivedHandler; typedef std::function&) > DeleteDeploymentConfigResponseReceivedHandler; typedef std::function&) > DeleteDeploymentGroupResponseReceivedHandler; typedef std::function&) > DeleteGitHubAccountTokenResponseReceivedHandler; typedef std::function&) > DeleteResourcesByExternalIdResponseReceivedHandler; typedef std::function&) > DeregisterOnPremisesInstanceResponseReceivedHandler; typedef std::function&) > GetApplicationResponseReceivedHandler; typedef std::function&) > GetApplicationRevisionResponseReceivedHandler; typedef std::function&) > GetDeploymentResponseReceivedHandler; typedef std::function&) > GetDeploymentConfigResponseReceivedHandler; typedef std::function&) > GetDeploymentGroupResponseReceivedHandler; typedef std::function&) > GetDeploymentTargetResponseReceivedHandler; typedef std::function&) > GetOnPremisesInstanceResponseReceivedHandler; typedef std::function&) > ListApplicationRevisionsResponseReceivedHandler; typedef std::function&) > ListApplicationsResponseReceivedHandler; typedef std::function&) > ListDeploymentConfigsResponseReceivedHandler; typedef std::function&) > ListDeploymentGroupsResponseReceivedHandler; typedef std::function&) > ListDeploymentTargetsResponseReceivedHandler; typedef std::function&) > ListDeploymentsResponseReceivedHandler; typedef std::function&) > ListGitHubAccountTokenNamesResponseReceivedHandler; typedef std::function&) > ListOnPremisesInstancesResponseReceivedHandler; typedef std::function&) > ListTagsForResourceResponseReceivedHandler; typedef std::function&) > PutLifecycleEventHookExecutionStatusResponseReceivedHandler; typedef std::function&) > RegisterApplicationRevisionResponseReceivedHandler; typedef std::function&) > RegisterOnPremisesInstanceResponseReceivedHandler; typedef std::function&) > RemoveTagsFromOnPremisesInstancesResponseReceivedHandler; typedef std::function&) > StopDeploymentResponseReceivedHandler; typedef std::function&) > TagResourceResponseReceivedHandler; typedef std::function&) > UntagResourceResponseReceivedHandler; typedef std::function&) > UpdateApplicationResponseReceivedHandler; typedef std::function&) > UpdateDeploymentGroupResponseReceivedHandler; /** * AWS CodeDeploy

AWS CodeDeploy is a deployment service * that automates application deployments to Amazon EC2 instances, on-premises * instances running in your own facility, serverless AWS Lambda functions, or * applications in an Amazon ECS service.

You can deploy a nearly unlimited * variety of application content, such as an updated Lambda function, updated * applications in an Amazon ECS service, code, web and configuration files, * executables, packages, scripts, multimedia files, and so on. AWS CodeDeploy can * deploy application content stored in Amazon S3 buckets, GitHub repositories, or * Bitbucket repositories. You do not need to make changes to your existing code * before you can use AWS CodeDeploy.

AWS CodeDeploy makes it easier for you * to rapidly release new features, helps you avoid downtime during application * deployment, and handles the complexity of updating your applications, without * many of the risks associated with error-prone manual deployments.

AWS * CodeDeploy Components

Use the information in this guide to help you * work with the following AWS CodeDeploy components:

  • * Application: A name that uniquely identifies the application you want to * deploy. AWS CodeDeploy uses this name, which functions as a container, to ensure * the correct combination of revision, deployment configuration, and deployment * group are referenced during a deployment.

  • Deployment * group: A set of individual instances, CodeDeploy Lambda deployment * configuration settings, or an Amazon ECS service and network details. A Lambda * deployment group specifies how to route traffic to a new version of a Lambda * function. An Amazon ECS deployment group specifies the service created in Amazon * ECS to deploy, a load balancer, and a listener to reroute production traffic to * an updated containerized application. An EC2/On-premises deployment group * contains individually tagged instances, Amazon EC2 instances in Amazon EC2 Auto * Scaling groups, or both. All deployment groups can specify optional trigger, * alarm, and rollback settings.

  • Deployment * configuration: A set of deployment rules and deployment success and failure * conditions used by AWS CodeDeploy during a deployment.

  • * Deployment: The process and the components used when updating a Lambda * function, a containerized application in an Amazon ECS service, or of installing * content on one or more instances.

  • Application * revisions: For an AWS Lambda deployment, this is an AppSpec file that * specifies the Lambda function to be updated and one or more functions to * validate deployment lifecycle events. For an Amazon ECS deployment, this is an * AppSpec file that specifies the Amazon ECS task definition, container, and port * where production traffic is rerouted. For an EC2/On-premises deployment, this is * an archive file that contains source content—source code, webpages, executable * files, and deployment scripts—along with an AppSpec file. Revisions are stored * in Amazon S3 buckets or GitHub repositories. For Amazon S3, a revision is * uniquely identified by its Amazon S3 object key and its ETag, version, or both. * For GitHub, a revision is uniquely identified by its commit ID.

*

This guide also contains information to help you get details about the * instances in your deployments, to make on-premises instances available for AWS * CodeDeploy deployments, to get details about a Lambda function deployment, and * to get details about Amazon ECS service deployments.

AWS CodeDeploy * Information Resources

*/ class AWS_CODEDEPLOY_API CodeDeployClient : public Aws::Client::AWSJsonClient { public: typedef Aws::Client::AWSJsonClient BASECLASS; /** * 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. */ CodeDeployClient(const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::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. */ CodeDeployClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::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 */ CodeDeployClient(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); virtual ~CodeDeployClient(); /** *

Adds tags to on-premises instances.

See Also:

AWS * API Reference

*/ virtual Model::AddTagsToOnPremisesInstancesOutcome AddTagsToOnPremisesInstances(const Model::AddTagsToOnPremisesInstancesRequest& request) const; /** *

Adds tags to on-premises instances.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AddTagsToOnPremisesInstancesOutcomeCallable AddTagsToOnPremisesInstancesCallable(const Model::AddTagsToOnPremisesInstancesRequest& request) const; /** *

Adds tags to on-premises instances.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AddTagsToOnPremisesInstancesAsync(const Model::AddTagsToOnPremisesInstancesRequest& request, const AddTagsToOnPremisesInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about one or more application revisions. The maximum number * of application revisions that can be returned is 25.

See Also:

* AWS * API Reference

*/ virtual Model::BatchGetApplicationRevisionsOutcome BatchGetApplicationRevisions(const Model::BatchGetApplicationRevisionsRequest& request) const; /** *

Gets information about one or more application revisions. The maximum number * of application revisions that can be returned is 25.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::BatchGetApplicationRevisionsOutcomeCallable BatchGetApplicationRevisionsCallable(const Model::BatchGetApplicationRevisionsRequest& request) const; /** *

Gets information about one or more application revisions. The maximum number * of application revisions that can be returned is 25.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void BatchGetApplicationRevisionsAsync(const Model::BatchGetApplicationRevisionsRequest& request, const BatchGetApplicationRevisionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about one or more applications. The maximum number of * applications that can be returned is 100.

See Also:

AWS * API Reference

*/ virtual Model::BatchGetApplicationsOutcome BatchGetApplications(const Model::BatchGetApplicationsRequest& request) const; /** *

Gets information about one or more applications. The maximum number of * applications that can be returned is 100.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::BatchGetApplicationsOutcomeCallable BatchGetApplicationsCallable(const Model::BatchGetApplicationsRequest& request) const; /** *

Gets information about one or more applications. The maximum number of * applications that can be returned is 100.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void BatchGetApplicationsAsync(const Model::BatchGetApplicationsRequest& request, const BatchGetApplicationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about one or more deployment groups.

See * Also:

AWS * API Reference

*/ virtual Model::BatchGetDeploymentGroupsOutcome BatchGetDeploymentGroups(const Model::BatchGetDeploymentGroupsRequest& request) const; /** *

Gets information about one or more deployment groups.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::BatchGetDeploymentGroupsOutcomeCallable BatchGetDeploymentGroupsCallable(const Model::BatchGetDeploymentGroupsRequest& request) const; /** *

Gets information about one or more deployment groups.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void BatchGetDeploymentGroupsAsync(const Model::BatchGetDeploymentGroupsRequest& request, const BatchGetDeploymentGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns an array of one or more targets associated with a deployment. This * method works with all compute types and should be used instead of the deprecated * BatchGetDeploymentInstances. The maximum number of targets that can * be returned is 25.

The type of targets returned depends on the * deployment's compute platform or deployment method:

  • * EC2/On-premises: Information about EC2 instance targets.

  • *

    AWS Lambda: Information about Lambda functions targets.

  • *
  • Amazon ECS: Information about Amazon ECS service targets.

    *
  • CloudFormation: Information about targets of blue/green * deployments initiated by a CloudFormation stack update.

  • *

See Also:

AWS * API Reference

*/ virtual Model::BatchGetDeploymentTargetsOutcome BatchGetDeploymentTargets(const Model::BatchGetDeploymentTargetsRequest& request) const; /** *

Returns an array of one or more targets associated with a deployment. This * method works with all compute types and should be used instead of the deprecated * BatchGetDeploymentInstances. The maximum number of targets that can * be returned is 25.

The type of targets returned depends on the * deployment's compute platform or deployment method:

  • * EC2/On-premises: Information about EC2 instance targets.

  • *

    AWS Lambda: Information about Lambda functions targets.

  • *
  • Amazon ECS: Information about Amazon ECS service targets.

    *
  • CloudFormation: Information about targets of blue/green * deployments initiated by a CloudFormation stack update.

  • *

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::BatchGetDeploymentTargetsOutcomeCallable BatchGetDeploymentTargetsCallable(const Model::BatchGetDeploymentTargetsRequest& request) const; /** *

Returns an array of one or more targets associated with a deployment. This * method works with all compute types and should be used instead of the deprecated * BatchGetDeploymentInstances. The maximum number of targets that can * be returned is 25.

The type of targets returned depends on the * deployment's compute platform or deployment method:

  • * EC2/On-premises: Information about EC2 instance targets.

  • *

    AWS Lambda: Information about Lambda functions targets.

  • *
  • Amazon ECS: Information about Amazon ECS service targets.

    *
  • CloudFormation: Information about targets of blue/green * deployments initiated by a CloudFormation stack update.

  • *

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void BatchGetDeploymentTargetsAsync(const Model::BatchGetDeploymentTargetsRequest& request, const BatchGetDeploymentTargetsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about one or more deployments. The maximum number of * deployments that can be returned is 25.

See Also:

AWS * API Reference

*/ virtual Model::BatchGetDeploymentsOutcome BatchGetDeployments(const Model::BatchGetDeploymentsRequest& request) const; /** *

Gets information about one or more deployments. The maximum number of * deployments that can be returned is 25.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::BatchGetDeploymentsOutcomeCallable BatchGetDeploymentsCallable(const Model::BatchGetDeploymentsRequest& request) const; /** *

Gets information about one or more deployments. The maximum number of * deployments that can be returned is 25.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void BatchGetDeploymentsAsync(const Model::BatchGetDeploymentsRequest& request, const BatchGetDeploymentsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about one or more on-premises instances. The maximum number * of on-premises instances that can be returned is 25.

See Also:

* AWS * API Reference

*/ virtual Model::BatchGetOnPremisesInstancesOutcome BatchGetOnPremisesInstances(const Model::BatchGetOnPremisesInstancesRequest& request) const; /** *

Gets information about one or more on-premises instances. The maximum number * of on-premises instances that can be returned is 25.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::BatchGetOnPremisesInstancesOutcomeCallable BatchGetOnPremisesInstancesCallable(const Model::BatchGetOnPremisesInstancesRequest& request) const; /** *

Gets information about one or more on-premises instances. The maximum number * of on-premises instances that can be returned is 25.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void BatchGetOnPremisesInstancesAsync(const Model::BatchGetOnPremisesInstancesRequest& request, const BatchGetOnPremisesInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

For a blue/green deployment, starts the process of rerouting traffic from * instances in the original environment to instances in the replacement * environment without waiting for a specified wait time to elapse. (Traffic * rerouting, which is achieved by registering instances in the replacement * environment with the load balancer, can start as soon as all instances have a * status of Ready.)

See Also:

AWS * API Reference

*/ virtual Model::ContinueDeploymentOutcome ContinueDeployment(const Model::ContinueDeploymentRequest& request) const; /** *

For a blue/green deployment, starts the process of rerouting traffic from * instances in the original environment to instances in the replacement * environment without waiting for a specified wait time to elapse. (Traffic * rerouting, which is achieved by registering instances in the replacement * environment with the load balancer, can start as soon as all instances have a * status of Ready.)

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ContinueDeploymentOutcomeCallable ContinueDeploymentCallable(const Model::ContinueDeploymentRequest& request) const; /** *

For a blue/green deployment, starts the process of rerouting traffic from * instances in the original environment to instances in the replacement * environment without waiting for a specified wait time to elapse. (Traffic * rerouting, which is achieved by registering instances in the replacement * environment with the load balancer, can start as soon as all instances have a * status of Ready.)

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ContinueDeploymentAsync(const Model::ContinueDeploymentRequest& request, const ContinueDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates an application.

See Also:

AWS * API Reference

*/ virtual Model::CreateApplicationOutcome CreateApplication(const Model::CreateApplicationRequest& request) const; /** *

Creates an application.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateApplicationOutcomeCallable CreateApplicationCallable(const Model::CreateApplicationRequest& request) const; /** *

Creates an application.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateApplicationAsync(const Model::CreateApplicationRequest& request, const CreateApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deploys an application revision through the specified deployment * group.

See Also:

AWS * API Reference

*/ virtual Model::CreateDeploymentOutcome CreateDeployment(const Model::CreateDeploymentRequest& request) const; /** *

Deploys an application revision through the specified deployment * group.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateDeploymentOutcomeCallable CreateDeploymentCallable(const Model::CreateDeploymentRequest& request) const; /** *

Deploys an application revision through the specified deployment * group.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateDeploymentAsync(const Model::CreateDeploymentRequest& request, const CreateDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a deployment configuration.

See Also:

AWS * API Reference

*/ virtual Model::CreateDeploymentConfigOutcome CreateDeploymentConfig(const Model::CreateDeploymentConfigRequest& request) const; /** *

Creates a deployment configuration.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateDeploymentConfigOutcomeCallable CreateDeploymentConfigCallable(const Model::CreateDeploymentConfigRequest& request) const; /** *

Creates a deployment configuration.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateDeploymentConfigAsync(const Model::CreateDeploymentConfigRequest& request, const CreateDeploymentConfigResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a deployment group to which application revisions are * deployed.

See Also:

AWS * API Reference

*/ virtual Model::CreateDeploymentGroupOutcome CreateDeploymentGroup(const Model::CreateDeploymentGroupRequest& request) const; /** *

Creates a deployment group to which application revisions are * deployed.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateDeploymentGroupOutcomeCallable CreateDeploymentGroupCallable(const Model::CreateDeploymentGroupRequest& request) const; /** *

Creates a deployment group to which application revisions are * deployed.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateDeploymentGroupAsync(const Model::CreateDeploymentGroupRequest& request, const CreateDeploymentGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes an application.

See Also:

AWS * API Reference

*/ virtual Model::DeleteApplicationOutcome DeleteApplication(const Model::DeleteApplicationRequest& request) const; /** *

Deletes an application.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteApplicationOutcomeCallable DeleteApplicationCallable(const Model::DeleteApplicationRequest& request) const; /** *

Deletes an application.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteApplicationAsync(const Model::DeleteApplicationRequest& request, const DeleteApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a deployment configuration.

A deployment configuration * cannot be deleted if it is currently in use. Predefined configurations cannot be * deleted.

See Also:

AWS * API Reference

*/ virtual Model::DeleteDeploymentConfigOutcome DeleteDeploymentConfig(const Model::DeleteDeploymentConfigRequest& request) const; /** *

Deletes a deployment configuration.

A deployment configuration * cannot be deleted if it is currently in use. Predefined configurations cannot be * deleted.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteDeploymentConfigOutcomeCallable DeleteDeploymentConfigCallable(const Model::DeleteDeploymentConfigRequest& request) const; /** *

Deletes a deployment configuration.

A deployment configuration * cannot be deleted if it is currently in use. Predefined configurations cannot be * deleted.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteDeploymentConfigAsync(const Model::DeleteDeploymentConfigRequest& request, const DeleteDeploymentConfigResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a deployment group.

See Also:

AWS * API Reference

*/ virtual Model::DeleteDeploymentGroupOutcome DeleteDeploymentGroup(const Model::DeleteDeploymentGroupRequest& request) const; /** *

Deletes a deployment group.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteDeploymentGroupOutcomeCallable DeleteDeploymentGroupCallable(const Model::DeleteDeploymentGroupRequest& request) const; /** *

Deletes a deployment group.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteDeploymentGroupAsync(const Model::DeleteDeploymentGroupRequest& request, const DeleteDeploymentGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a GitHub account connection.

See Also:

AWS * API Reference

*/ virtual Model::DeleteGitHubAccountTokenOutcome DeleteGitHubAccountToken(const Model::DeleteGitHubAccountTokenRequest& request) const; /** *

Deletes a GitHub account connection.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteGitHubAccountTokenOutcomeCallable DeleteGitHubAccountTokenCallable(const Model::DeleteGitHubAccountTokenRequest& request) const; /** *

Deletes a GitHub account connection.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteGitHubAccountTokenAsync(const Model::DeleteGitHubAccountTokenRequest& request, const DeleteGitHubAccountTokenResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes resources linked to an external ID.

See Also:

AWS * API Reference

*/ virtual Model::DeleteResourcesByExternalIdOutcome DeleteResourcesByExternalId(const Model::DeleteResourcesByExternalIdRequest& request) const; /** *

Deletes resources linked to an external ID.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteResourcesByExternalIdOutcomeCallable DeleteResourcesByExternalIdCallable(const Model::DeleteResourcesByExternalIdRequest& request) const; /** *

Deletes resources linked to an external ID.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteResourcesByExternalIdAsync(const Model::DeleteResourcesByExternalIdRequest& request, const DeleteResourcesByExternalIdResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deregisters an on-premises instance.

See Also:

AWS * API Reference

*/ virtual Model::DeregisterOnPremisesInstanceOutcome DeregisterOnPremisesInstance(const Model::DeregisterOnPremisesInstanceRequest& request) const; /** *

Deregisters an on-premises instance.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeregisterOnPremisesInstanceOutcomeCallable DeregisterOnPremisesInstanceCallable(const Model::DeregisterOnPremisesInstanceRequest& request) const; /** *

Deregisters an on-premises instance.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeregisterOnPremisesInstanceAsync(const Model::DeregisterOnPremisesInstanceRequest& request, const DeregisterOnPremisesInstanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about an application.

See Also:

AWS * API Reference

*/ virtual Model::GetApplicationOutcome GetApplication(const Model::GetApplicationRequest& request) const; /** *

Gets information about an application.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetApplicationOutcomeCallable GetApplicationCallable(const Model::GetApplicationRequest& request) const; /** *

Gets information about an application.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetApplicationAsync(const Model::GetApplicationRequest& request, const GetApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about an application revision.

See Also:

AWS * API Reference

*/ virtual Model::GetApplicationRevisionOutcome GetApplicationRevision(const Model::GetApplicationRevisionRequest& request) const; /** *

Gets information about an application revision.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetApplicationRevisionOutcomeCallable GetApplicationRevisionCallable(const Model::GetApplicationRevisionRequest& request) const; /** *

Gets information about an application revision.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetApplicationRevisionAsync(const Model::GetApplicationRevisionRequest& request, const GetApplicationRevisionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about a deployment.

The content * property of the appSpecContent object in the returned revision is * always null. Use GetApplicationRevision and the sha256 * property of the returned appSpecContent object to get the content * of the deployment’s AppSpec file.

See Also:

AWS * API Reference

*/ virtual Model::GetDeploymentOutcome GetDeployment(const Model::GetDeploymentRequest& request) const; /** *

Gets information about a deployment.

The content * property of the appSpecContent object in the returned revision is * always null. Use GetApplicationRevision and the sha256 * property of the returned appSpecContent object to get the content * of the deployment’s AppSpec file.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetDeploymentOutcomeCallable GetDeploymentCallable(const Model::GetDeploymentRequest& request) const; /** *

Gets information about a deployment.

The content * property of the appSpecContent object in the returned revision is * always null. Use GetApplicationRevision and the sha256 * property of the returned appSpecContent object to get the content * of the deployment’s AppSpec file.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetDeploymentAsync(const Model::GetDeploymentRequest& request, const GetDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about a deployment configuration.

See Also:

* AWS * API Reference

*/ virtual Model::GetDeploymentConfigOutcome GetDeploymentConfig(const Model::GetDeploymentConfigRequest& request) const; /** *

Gets information about a deployment configuration.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetDeploymentConfigOutcomeCallable GetDeploymentConfigCallable(const Model::GetDeploymentConfigRequest& request) const; /** *

Gets information about a deployment configuration.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetDeploymentConfigAsync(const Model::GetDeploymentConfigRequest& request, const GetDeploymentConfigResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about a deployment group.

See Also:

AWS * API Reference

*/ virtual Model::GetDeploymentGroupOutcome GetDeploymentGroup(const Model::GetDeploymentGroupRequest& request) const; /** *

Gets information about a deployment group.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetDeploymentGroupOutcomeCallable GetDeploymentGroupCallable(const Model::GetDeploymentGroupRequest& request) const; /** *

Gets information about a deployment group.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetDeploymentGroupAsync(const Model::GetDeploymentGroupRequest& request, const GetDeploymentGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns information about a deployment target.

See Also:

* AWS * API Reference

*/ virtual Model::GetDeploymentTargetOutcome GetDeploymentTarget(const Model::GetDeploymentTargetRequest& request) const; /** *

Returns information about a deployment target.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetDeploymentTargetOutcomeCallable GetDeploymentTargetCallable(const Model::GetDeploymentTargetRequest& request) const; /** *

Returns information about a deployment target.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetDeploymentTargetAsync(const Model::GetDeploymentTargetRequest& request, const GetDeploymentTargetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets information about an on-premises instance.

See Also:

* AWS * API Reference

*/ virtual Model::GetOnPremisesInstanceOutcome GetOnPremisesInstance(const Model::GetOnPremisesInstanceRequest& request) const; /** *

Gets information about an on-premises instance.

See Also:

* AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetOnPremisesInstanceOutcomeCallable GetOnPremisesInstanceCallable(const Model::GetOnPremisesInstanceRequest& request) const; /** *

Gets information about an on-premises instance.

See Also:

* AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetOnPremisesInstanceAsync(const Model::GetOnPremisesInstanceRequest& request, const GetOnPremisesInstanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Lists information about revisions for an application.

See * Also:

AWS * API Reference

*/ virtual Model::ListApplicationRevisionsOutcome ListApplicationRevisions(const Model::ListApplicationRevisionsRequest& request) const; /** *

Lists information about revisions for an application.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListApplicationRevisionsOutcomeCallable ListApplicationRevisionsCallable(const Model::ListApplicationRevisionsRequest& request) const; /** *

Lists information about revisions for an application.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListApplicationRevisionsAsync(const Model::ListApplicationRevisionsRequest& request, const ListApplicationRevisionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Lists the applications registered with the IAM user or AWS * account.

See Also:

AWS * API Reference

*/ virtual Model::ListApplicationsOutcome ListApplications(const Model::ListApplicationsRequest& request) const; /** *

Lists the applications registered with the IAM user or AWS * account.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListApplicationsOutcomeCallable ListApplicationsCallable(const Model::ListApplicationsRequest& request) const; /** *

Lists the applications registered with the IAM user or AWS * account.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListApplicationsAsync(const Model::ListApplicationsRequest& request, const ListApplicationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Lists the deployment configurations with the IAM user or AWS * account.

See Also:

AWS * API Reference

*/ virtual Model::ListDeploymentConfigsOutcome ListDeploymentConfigs(const Model::ListDeploymentConfigsRequest& request) const; /** *

Lists the deployment configurations with the IAM user or AWS * account.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListDeploymentConfigsOutcomeCallable ListDeploymentConfigsCallable(const Model::ListDeploymentConfigsRequest& request) const; /** *

Lists the deployment configurations with the IAM user or AWS * account.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListDeploymentConfigsAsync(const Model::ListDeploymentConfigsRequest& request, const ListDeploymentConfigsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Lists the deployment groups for an application registered with the IAM user * or AWS account.

See Also:

AWS * API Reference

*/ virtual Model::ListDeploymentGroupsOutcome ListDeploymentGroups(const Model::ListDeploymentGroupsRequest& request) const; /** *

Lists the deployment groups for an application registered with the IAM user * or AWS account.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListDeploymentGroupsOutcomeCallable ListDeploymentGroupsCallable(const Model::ListDeploymentGroupsRequest& request) const; /** *

Lists the deployment groups for an application registered with the IAM user * or AWS account.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListDeploymentGroupsAsync(const Model::ListDeploymentGroupsRequest& request, const ListDeploymentGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns an array of target IDs that are associated a deployment. *

See Also:

AWS * API Reference

*/ virtual Model::ListDeploymentTargetsOutcome ListDeploymentTargets(const Model::ListDeploymentTargetsRequest& request) const; /** *

Returns an array of target IDs that are associated a deployment. *

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListDeploymentTargetsOutcomeCallable ListDeploymentTargetsCallable(const Model::ListDeploymentTargetsRequest& request) const; /** *

Returns an array of target IDs that are associated a deployment. *

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListDeploymentTargetsAsync(const Model::ListDeploymentTargetsRequest& request, const ListDeploymentTargetsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Lists the deployments in a deployment group for an application registered * with the IAM user or AWS account.

See Also:

AWS * API Reference

*/ virtual Model::ListDeploymentsOutcome ListDeployments(const Model::ListDeploymentsRequest& request) const; /** *

Lists the deployments in a deployment group for an application registered * with the IAM user or AWS account.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListDeploymentsOutcomeCallable ListDeploymentsCallable(const Model::ListDeploymentsRequest& request) const; /** *

Lists the deployments in a deployment group for an application registered * with the IAM user or AWS account.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListDeploymentsAsync(const Model::ListDeploymentsRequest& request, const ListDeploymentsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Lists the names of stored connections to GitHub accounts.

See * Also:

AWS * API Reference

*/ virtual Model::ListGitHubAccountTokenNamesOutcome ListGitHubAccountTokenNames(const Model::ListGitHubAccountTokenNamesRequest& request) const; /** *

Lists the names of stored connections to GitHub accounts.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListGitHubAccountTokenNamesOutcomeCallable ListGitHubAccountTokenNamesCallable(const Model::ListGitHubAccountTokenNamesRequest& request) const; /** *

Lists the names of stored connections to GitHub accounts.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListGitHubAccountTokenNamesAsync(const Model::ListGitHubAccountTokenNamesRequest& request, const ListGitHubAccountTokenNamesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets a list of names for one or more on-premises instances.

Unless * otherwise specified, both registered and deregistered on-premises instance names * are listed. To list only registered or deregistered on-premises instance names, * use the registration status parameter.

See Also:

AWS * API Reference

*/ virtual Model::ListOnPremisesInstancesOutcome ListOnPremisesInstances(const Model::ListOnPremisesInstancesRequest& request) const; /** *

Gets a list of names for one or more on-premises instances.

Unless * otherwise specified, both registered and deregistered on-premises instance names * are listed. To list only registered or deregistered on-premises instance names, * use the registration status parameter.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListOnPremisesInstancesOutcomeCallable ListOnPremisesInstancesCallable(const Model::ListOnPremisesInstancesRequest& request) const; /** *

Gets a list of names for one or more on-premises instances.

Unless * otherwise specified, both registered and deregistered on-premises instance names * are listed. To list only registered or deregistered on-premises instance names, * use the registration status parameter.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListOnPremisesInstancesAsync(const Model::ListOnPremisesInstancesRequest& request, const ListOnPremisesInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a list of tags for the resource identified by a specified Amazon * Resource Name (ARN). Tags are used to organize and categorize your CodeDeploy * resources.

See Also:

AWS * API Reference

*/ virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const; /** *

Returns a list of tags for the resource identified by a specified Amazon * Resource Name (ARN). Tags are used to organize and categorize your CodeDeploy * resources.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const Model::ListTagsForResourceRequest& request) const; /** *

Returns a list of tags for the resource identified by a specified Amazon * Resource Name (ARN). Tags are used to organize and categorize your CodeDeploy * resources.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ListTagsForResourceAsync(const Model::ListTagsForResourceRequest& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Sets the result of a Lambda validation function. The function validates * lifecycle hooks during a deployment that uses the AWS Lambda or Amazon ECS * compute platform. For AWS Lambda deployments, the available lifecycle hooks are * BeforeAllowTraffic and AfterAllowTraffic. For Amazon * ECS deployments, the available lifecycle hooks are BeforeInstall, * AfterInstall, AfterAllowTestTraffic, * BeforeAllowTraffic, and AfterAllowTraffic. Lambda * validation functions return Succeeded or Failed. For * more information, see AppSpec * 'hooks' Section for an AWS Lambda Deployment and AppSpec * 'hooks' Section for an Amazon ECS Deployment.

See Also:

AWS * API Reference

*/ virtual Model::PutLifecycleEventHookExecutionStatusOutcome PutLifecycleEventHookExecutionStatus(const Model::PutLifecycleEventHookExecutionStatusRequest& request) const; /** *

Sets the result of a Lambda validation function. The function validates * lifecycle hooks during a deployment that uses the AWS Lambda or Amazon ECS * compute platform. For AWS Lambda deployments, the available lifecycle hooks are * BeforeAllowTraffic and AfterAllowTraffic. For Amazon * ECS deployments, the available lifecycle hooks are BeforeInstall, * AfterInstall, AfterAllowTestTraffic, * BeforeAllowTraffic, and AfterAllowTraffic. Lambda * validation functions return Succeeded or Failed. For * more information, see AppSpec * 'hooks' Section for an AWS Lambda Deployment and AppSpec * 'hooks' Section for an Amazon ECS Deployment.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::PutLifecycleEventHookExecutionStatusOutcomeCallable PutLifecycleEventHookExecutionStatusCallable(const Model::PutLifecycleEventHookExecutionStatusRequest& request) const; /** *

Sets the result of a Lambda validation function. The function validates * lifecycle hooks during a deployment that uses the AWS Lambda or Amazon ECS * compute platform. For AWS Lambda deployments, the available lifecycle hooks are * BeforeAllowTraffic and AfterAllowTraffic. For Amazon * ECS deployments, the available lifecycle hooks are BeforeInstall, * AfterInstall, AfterAllowTestTraffic, * BeforeAllowTraffic, and AfterAllowTraffic. Lambda * validation functions return Succeeded or Failed. For * more information, see AppSpec * 'hooks' Section for an AWS Lambda Deployment and AppSpec * 'hooks' Section for an Amazon ECS Deployment.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void PutLifecycleEventHookExecutionStatusAsync(const Model::PutLifecycleEventHookExecutionStatusRequest& request, const PutLifecycleEventHookExecutionStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Registers with AWS CodeDeploy a revision for the specified * application.

See Also:

AWS * API Reference

*/ virtual Model::RegisterApplicationRevisionOutcome RegisterApplicationRevision(const Model::RegisterApplicationRevisionRequest& request) const; /** *

Registers with AWS CodeDeploy a revision for the specified * application.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RegisterApplicationRevisionOutcomeCallable RegisterApplicationRevisionCallable(const Model::RegisterApplicationRevisionRequest& request) const; /** *

Registers with AWS CodeDeploy a revision for the specified * application.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RegisterApplicationRevisionAsync(const Model::RegisterApplicationRevisionRequest& request, const RegisterApplicationRevisionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Registers an on-premises instance.

Only one IAM ARN (an IAM * session ARN or IAM user ARN) is supported in the request. You cannot use * both.

See Also:

AWS * API Reference

*/ virtual Model::RegisterOnPremisesInstanceOutcome RegisterOnPremisesInstance(const Model::RegisterOnPremisesInstanceRequest& request) const; /** *

Registers an on-premises instance.

Only one IAM ARN (an IAM * session ARN or IAM user ARN) is supported in the request. You cannot use * both.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RegisterOnPremisesInstanceOutcomeCallable RegisterOnPremisesInstanceCallable(const Model::RegisterOnPremisesInstanceRequest& request) const; /** *

Registers an on-premises instance.

Only one IAM ARN (an IAM * session ARN or IAM user ARN) is supported in the request. You cannot use * both.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RegisterOnPremisesInstanceAsync(const Model::RegisterOnPremisesInstanceRequest& request, const RegisterOnPremisesInstanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Removes one or more tags from one or more on-premises * instances.

See Also:

AWS * API Reference

*/ virtual Model::RemoveTagsFromOnPremisesInstancesOutcome RemoveTagsFromOnPremisesInstances(const Model::RemoveTagsFromOnPremisesInstancesRequest& request) const; /** *

Removes one or more tags from one or more on-premises * instances.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RemoveTagsFromOnPremisesInstancesOutcomeCallable RemoveTagsFromOnPremisesInstancesCallable(const Model::RemoveTagsFromOnPremisesInstancesRequest& request) const; /** *

Removes one or more tags from one or more on-premises * instances.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RemoveTagsFromOnPremisesInstancesAsync(const Model::RemoveTagsFromOnPremisesInstancesRequest& request, const RemoveTagsFromOnPremisesInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Attempts to stop an ongoing deployment.

See Also:

AWS * API Reference

*/ virtual Model::StopDeploymentOutcome StopDeployment(const Model::StopDeploymentRequest& request) const; /** *

Attempts to stop an ongoing deployment.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::StopDeploymentOutcomeCallable StopDeploymentCallable(const Model::StopDeploymentRequest& request) const; /** *

Attempts to stop an ongoing deployment.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void StopDeploymentAsync(const Model::StopDeploymentRequest& request, const StopDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Associates the list of tags in the input Tags parameter with * the resource identified by the ResourceArn input parameter. *

See Also:

AWS * API Reference

*/ virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest& request) const; /** *

Associates the list of tags in the input Tags parameter with * the resource identified by the ResourceArn input parameter. *

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::TagResourceOutcomeCallable TagResourceCallable(const Model::TagResourceRequest& request) const; /** *

Associates the list of tags in the input Tags parameter with * the resource identified by the ResourceArn input parameter. *

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void TagResourceAsync(const Model::TagResourceRequest& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disassociates a resource from a list of tags. The resource is identified by * the ResourceArn input parameter. The tags are identified by the * list of keys in the TagKeys input parameter.

See * Also:

AWS * API Reference

*/ virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest& request) const; /** *

Disassociates a resource from a list of tags. The resource is identified by * the ResourceArn input parameter. The tags are identified by the * list of keys in the TagKeys input parameter.

See * Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::UntagResourceOutcomeCallable UntagResourceCallable(const Model::UntagResourceRequest& request) const; /** *

Disassociates a resource from a list of tags. The resource is identified by * the ResourceArn input parameter. The tags are identified by the * list of keys in the TagKeys input parameter.

See * Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UntagResourceAsync(const Model::UntagResourceRequest& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Changes the name of an application.

See Also:

AWS * API Reference

*/ virtual Model::UpdateApplicationOutcome UpdateApplication(const Model::UpdateApplicationRequest& request) const; /** *

Changes the name of an application.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::UpdateApplicationOutcomeCallable UpdateApplicationCallable(const Model::UpdateApplicationRequest& request) const; /** *

Changes the name of an application.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UpdateApplicationAsync(const Model::UpdateApplicationRequest& request, const UpdateApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Changes information about a deployment group.

See Also:

AWS * API Reference

*/ virtual Model::UpdateDeploymentGroupOutcome UpdateDeploymentGroup(const Model::UpdateDeploymentGroupRequest& request) const; /** *

Changes information about a deployment group.

See Also:

AWS * API Reference

* * returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::UpdateDeploymentGroupOutcomeCallable UpdateDeploymentGroupCallable(const Model::UpdateDeploymentGroupRequest& request) const; /** *

Changes information about a deployment group.

See Also:

AWS * API Reference

* * Queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UpdateDeploymentGroupAsync(const Model::UpdateDeploymentGroupRequest& request, const UpdateDeploymentGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; void OverrideEndpoint(const Aws::String& endpoint); private: void init(const Aws::Client::ClientConfiguration& clientConfiguration); void AddTagsToOnPremisesInstancesAsyncHelper(const Model::AddTagsToOnPremisesInstancesRequest& request, const AddTagsToOnPremisesInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void BatchGetApplicationRevisionsAsyncHelper(const Model::BatchGetApplicationRevisionsRequest& request, const BatchGetApplicationRevisionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void BatchGetApplicationsAsyncHelper(const Model::BatchGetApplicationsRequest& request, const BatchGetApplicationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void BatchGetDeploymentGroupsAsyncHelper(const Model::BatchGetDeploymentGroupsRequest& request, const BatchGetDeploymentGroupsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void BatchGetDeploymentTargetsAsyncHelper(const Model::BatchGetDeploymentTargetsRequest& request, const BatchGetDeploymentTargetsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void BatchGetDeploymentsAsyncHelper(const Model::BatchGetDeploymentsRequest& request, const BatchGetDeploymentsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void BatchGetOnPremisesInstancesAsyncHelper(const Model::BatchGetOnPremisesInstancesRequest& request, const BatchGetOnPremisesInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ContinueDeploymentAsyncHelper(const Model::ContinueDeploymentRequest& request, const ContinueDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateApplicationAsyncHelper(const Model::CreateApplicationRequest& request, const CreateApplicationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateDeploymentAsyncHelper(const Model::CreateDeploymentRequest& request, const CreateDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateDeploymentConfigAsyncHelper(const Model::CreateDeploymentConfigRequest& request, const CreateDeploymentConfigResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateDeploymentGroupAsyncHelper(const Model::CreateDeploymentGroupRequest& request, const CreateDeploymentGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteApplicationAsyncHelper(const Model::DeleteApplicationRequest& request, const DeleteApplicationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteDeploymentConfigAsyncHelper(const Model::DeleteDeploymentConfigRequest& request, const DeleteDeploymentConfigResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteDeploymentGroupAsyncHelper(const Model::DeleteDeploymentGroupRequest& request, const DeleteDeploymentGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteGitHubAccountTokenAsyncHelper(const Model::DeleteGitHubAccountTokenRequest& request, const DeleteGitHubAccountTokenResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteResourcesByExternalIdAsyncHelper(const Model::DeleteResourcesByExternalIdRequest& request, const DeleteResourcesByExternalIdResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeregisterOnPremisesInstanceAsyncHelper(const Model::DeregisterOnPremisesInstanceRequest& request, const DeregisterOnPremisesInstanceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetApplicationAsyncHelper(const Model::GetApplicationRequest& request, const GetApplicationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetApplicationRevisionAsyncHelper(const Model::GetApplicationRevisionRequest& request, const GetApplicationRevisionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetDeploymentAsyncHelper(const Model::GetDeploymentRequest& request, const GetDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetDeploymentConfigAsyncHelper(const Model::GetDeploymentConfigRequest& request, const GetDeploymentConfigResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetDeploymentGroupAsyncHelper(const Model::GetDeploymentGroupRequest& request, const GetDeploymentGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetDeploymentTargetAsyncHelper(const Model::GetDeploymentTargetRequest& request, const GetDeploymentTargetResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetOnPremisesInstanceAsyncHelper(const Model::GetOnPremisesInstanceRequest& request, const GetOnPremisesInstanceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListApplicationRevisionsAsyncHelper(const Model::ListApplicationRevisionsRequest& request, const ListApplicationRevisionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListApplicationsAsyncHelper(const Model::ListApplicationsRequest& request, const ListApplicationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListDeploymentConfigsAsyncHelper(const Model::ListDeploymentConfigsRequest& request, const ListDeploymentConfigsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListDeploymentGroupsAsyncHelper(const Model::ListDeploymentGroupsRequest& request, const ListDeploymentGroupsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListDeploymentTargetsAsyncHelper(const Model::ListDeploymentTargetsRequest& request, const ListDeploymentTargetsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListDeploymentsAsyncHelper(const Model::ListDeploymentsRequest& request, const ListDeploymentsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListGitHubAccountTokenNamesAsyncHelper(const Model::ListGitHubAccountTokenNamesRequest& request, const ListGitHubAccountTokenNamesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListOnPremisesInstancesAsyncHelper(const Model::ListOnPremisesInstancesRequest& request, const ListOnPremisesInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListTagsForResourceAsyncHelper(const Model::ListTagsForResourceRequest& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void PutLifecycleEventHookExecutionStatusAsyncHelper(const Model::PutLifecycleEventHookExecutionStatusRequest& request, const PutLifecycleEventHookExecutionStatusResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RegisterApplicationRevisionAsyncHelper(const Model::RegisterApplicationRevisionRequest& request, const RegisterApplicationRevisionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RegisterOnPremisesInstanceAsyncHelper(const Model::RegisterOnPremisesInstanceRequest& request, const RegisterOnPremisesInstanceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RemoveTagsFromOnPremisesInstancesAsyncHelper(const Model::RemoveTagsFromOnPremisesInstancesRequest& request, const RemoveTagsFromOnPremisesInstancesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void StopDeploymentAsyncHelper(const Model::StopDeploymentRequest& request, const StopDeploymentResponseReceivedHandler& handler, const std::shared_ptr& context) const; void TagResourceAsyncHelper(const Model::TagResourceRequest& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UntagResourceAsyncHelper(const Model::UntagResourceRequest& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UpdateApplicationAsyncHelper(const Model::UpdateApplicationRequest& request, const UpdateApplicationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UpdateDeploymentGroupAsyncHelper(const Model::UpdateDeploymentGroupRequest& request, const UpdateDeploymentGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; Aws::String m_uri; Aws::String m_configScheme; std::shared_ptr m_executor; }; } // namespace CodeDeploy } // namespace Aws