CodeDeploy
public struct CodeDeploy
Client object for interacting with AWS CodeDeploy service.
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 AWS CodeDeploy User Guide AWS CodeDeploy API Reference Guide AWS CLI Reference for AWS CodeDeploy AWS CodeDeploy Developer Forum
-
Undocumented
Declaration
Swift
public let client: AWSClient
-
Initialize the CodeDeploy client
Declaration
Swift
public init(accessKeyId: String? = nil, secretAccessKey: String? = nil, sessionToken: String? = nil, region: AWSSDKSwiftCore.Region? = nil, endpoint: String? = nil, middlewares: [AWSServiceMiddleware] = [], eventLoopGroupProvider: AWSClient.EventLoopGroupProvider = .useAWSClientShared)
Parameters
accessKeyId
Public access key provided by AWS
secretAccessKey
Private access key provided by AWS
sessionToken
Token provided by STS.AssumeRole() which allows access to another AWS account
region
Region of server you want to communicate with
endpoint
Custom endpoint URL to use instead of standard AWS servers
middlewares
Array of middlewares to apply to requests and responses
eventLoopGroupProvider
EventLoopGroup to use. Use
useAWSClientShared
if the client shall manage its own EventLoopGroup.
-
Adds tags to on-premises instances.
Declaration
Swift
@discardableResult public func addTagsToOnPremisesInstances(_ input: AddTagsToOnPremisesInstancesInput) -> EventLoopFuture<Void>
-
Gets information about one or more application revisions. The maximum number of application revisions that can be returned is 25.
Declaration
Swift
public func batchGetApplicationRevisions(_ input: BatchGetApplicationRevisionsInput) -> EventLoopFuture<BatchGetApplicationRevisionsOutput>
-
Gets information about one or more applications. The maximum number of applications that can be returned is 100.
Declaration
Swift
public func batchGetApplications(_ input: BatchGetApplicationsInput) -> EventLoopFuture<BatchGetApplicationsOutput>
-
Gets information about one or more deployment groups.
Declaration
Swift
public func batchGetDeploymentGroups(_ input: BatchGetDeploymentGroupsInput) -> EventLoopFuture<BatchGetDeploymentGroupsOutput>
-
This method works, but is deprecated. Use BatchGetDeploymentTargets instead. Returns an array of one or more instances associated with a deployment. This method works with EC2/On-premises and AWS Lambda compute platforms. The newer BatchGetDeploymentTargets works with all compute platforms. The maximum number of instances that can be returned is 25.
Declaration
Swift
@available(*, deprecated, message: "This operation is deprecated, use BatchGetDeploymentTargets instead.") public func batchGetDeploymentInstances(_ input: BatchGetDeploymentInstancesInput) -> EventLoopFuture<BatchGetDeploymentInstancesOutput>
-
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.
Declaration
Swift
public func batchGetDeploymentTargets(_ input: BatchGetDeploymentTargetsInput) -> EventLoopFuture<BatchGetDeploymentTargetsOutput>
-
Gets information about one or more deployments. The maximum number of deployments that can be returned is 25.
Declaration
Swift
public func batchGetDeployments(_ input: BatchGetDeploymentsInput) -> EventLoopFuture<BatchGetDeploymentsOutput>
-
Gets information about one or more on-premises instances. The maximum number of on-premises instances that can be returned is 25.
Declaration
Swift
public func batchGetOnPremisesInstances(_ input: BatchGetOnPremisesInstancesInput) -> EventLoopFuture<BatchGetOnPremisesInstancesOutput>
-
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.)
Declaration
Swift
@discardableResult public func continueDeployment(_ input: ContinueDeploymentInput) -> EventLoopFuture<Void>
-
Creates an application.
Declaration
Swift
public func createApplication(_ input: CreateApplicationInput) -> EventLoopFuture<CreateApplicationOutput>
-
Deploys an application revision through the specified deployment group.
Declaration
Swift
public func createDeployment(_ input: CreateDeploymentInput) -> EventLoopFuture<CreateDeploymentOutput>
-
Creates a deployment configuration.
Declaration
Swift
public func createDeploymentConfig(_ input: CreateDeploymentConfigInput) -> EventLoopFuture<CreateDeploymentConfigOutput>
-
Creates a deployment group to which application revisions are deployed.
Declaration
Swift
public func createDeploymentGroup(_ input: CreateDeploymentGroupInput) -> EventLoopFuture<CreateDeploymentGroupOutput>
-
Deletes an application.
Declaration
Swift
@discardableResult public func deleteApplication(_ input: DeleteApplicationInput) -> EventLoopFuture<Void>
-
Deletes a deployment configuration. A deployment configuration cannot be deleted if it is currently in use. Predefined configurations cannot be deleted.
Declaration
Swift
@discardableResult public func deleteDeploymentConfig(_ input: DeleteDeploymentConfigInput) -> EventLoopFuture<Void>
-
Deletes a deployment group.
Declaration
Swift
public func deleteDeploymentGroup(_ input: DeleteDeploymentGroupInput) -> EventLoopFuture<DeleteDeploymentGroupOutput>
-
Deletes a GitHub account connection.
Declaration
Swift
public func deleteGitHubAccountToken(_ input: DeleteGitHubAccountTokenInput) -> EventLoopFuture<DeleteGitHubAccountTokenOutput>
-
Deletes resources linked to an external ID.
Declaration
Swift
public func deleteResourcesByExternalId(_ input: DeleteResourcesByExternalIdInput) -> EventLoopFuture<DeleteResourcesByExternalIdOutput>
-
Deregisters an on-premises instance.
Declaration
Swift
@discardableResult public func deregisterOnPremisesInstance(_ input: DeregisterOnPremisesInstanceInput) -> EventLoopFuture<Void>
-
Gets information about an application.
Declaration
Swift
public func getApplication(_ input: GetApplicationInput) -> EventLoopFuture<GetApplicationOutput>
-
Gets information about an application revision.
Declaration
Swift
public func getApplicationRevision(_ input: GetApplicationRevisionInput) -> EventLoopFuture<GetApplicationRevisionOutput>
-
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.
Declaration
Swift
public func getDeployment(_ input: GetDeploymentInput) -> EventLoopFuture<GetDeploymentOutput>
-
Gets information about a deployment configuration.
Declaration
Swift
public func getDeploymentConfig(_ input: GetDeploymentConfigInput) -> EventLoopFuture<GetDeploymentConfigOutput>
-
Gets information about a deployment group.
Declaration
Swift
public func getDeploymentGroup(_ input: GetDeploymentGroupInput) -> EventLoopFuture<GetDeploymentGroupOutput>
-
Gets information about an instance as part of a deployment.
Declaration
Swift
@available(*, deprecated, message: "This operation is deprecated, use GetDeploymentTarget instead.") public func getDeploymentInstance(_ input: GetDeploymentInstanceInput) -> EventLoopFuture<GetDeploymentInstanceOutput>
-
Returns information about a deployment target.
Declaration
Swift
public func getDeploymentTarget(_ input: GetDeploymentTargetInput) -> EventLoopFuture<GetDeploymentTargetOutput>
-
Gets information about an on-premises instance.
Declaration
Swift
public func getOnPremisesInstance(_ input: GetOnPremisesInstanceInput) -> EventLoopFuture<GetOnPremisesInstanceOutput>
-
Lists information about revisions for an application.
Declaration
Swift
public func listApplicationRevisions(_ input: ListApplicationRevisionsInput) -> EventLoopFuture<ListApplicationRevisionsOutput>
-
Lists the applications registered with the IAM user or AWS account.
Declaration
Swift
public func listApplications(_ input: ListApplicationsInput) -> EventLoopFuture<ListApplicationsOutput>
-
Lists the deployment configurations with the IAM user or AWS account.
Declaration
Swift
public func listDeploymentConfigs(_ input: ListDeploymentConfigsInput) -> EventLoopFuture<ListDeploymentConfigsOutput>
-
Lists the deployment groups for an application registered with the IAM user or AWS account.
Declaration
Swift
public func listDeploymentGroups(_ input: ListDeploymentGroupsInput) -> EventLoopFuture<ListDeploymentGroupsOutput>
-
The newer BatchGetDeploymentTargets should be used instead because it works with all compute types. ListDeploymentInstances throws an exception if it is used with a compute platform other than EC2/On-premises or AWS Lambda. Lists the instance for a deployment associated with the IAM user or AWS account.
Declaration
Swift
@available(*, deprecated, message: "This operation is deprecated, use ListDeploymentTargets instead.") public func listDeploymentInstances(_ input: ListDeploymentInstancesInput) -> EventLoopFuture<ListDeploymentInstancesOutput>
-
Returns an array of target IDs that are associated a deployment.
Declaration
Swift
public func listDeploymentTargets(_ input: ListDeploymentTargetsInput) -> EventLoopFuture<ListDeploymentTargetsOutput>
-
Lists the deployments in a deployment group for an application registered with the IAM user or AWS account.
Declaration
Swift
public func listDeployments(_ input: ListDeploymentsInput) -> EventLoopFuture<ListDeploymentsOutput>
-
Lists the names of stored connections to GitHub accounts.
Declaration
Swift
public func listGitHubAccountTokenNames(_ input: ListGitHubAccountTokenNamesInput) -> EventLoopFuture<ListGitHubAccountTokenNamesOutput>
-
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.
Declaration
Swift
public func listOnPremisesInstances(_ input: ListOnPremisesInstancesInput) -> EventLoopFuture<ListOnPremisesInstancesOutput>
-
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.
Declaration
Swift
public func listTagsForResource(_ input: ListTagsForResourceInput) -> EventLoopFuture<ListTagsForResourceOutput>
-
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.
Declaration
Swift
public func putLifecycleEventHookExecutionStatus(_ input: PutLifecycleEventHookExecutionStatusInput) -> EventLoopFuture<PutLifecycleEventHookExecutionStatusOutput>
-
Registers with AWS CodeDeploy a revision for the specified application.
Declaration
Swift
@discardableResult public func registerApplicationRevision(_ input: RegisterApplicationRevisionInput) -> EventLoopFuture<Void>
-
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.
Declaration
Swift
@discardableResult public func registerOnPremisesInstance(_ input: RegisterOnPremisesInstanceInput) -> EventLoopFuture<Void>
-
Removes one or more tags from one or more on-premises instances.
Declaration
Swift
@discardableResult public func removeTagsFromOnPremisesInstances(_ input: RemoveTagsFromOnPremisesInstancesInput) -> EventLoopFuture<Void>
-
In a blue/green deployment, overrides any specified wait time and starts terminating instances immediately after the traffic routing is complete.
Declaration
Swift
@available(*, deprecated, message: "This operation is deprecated, use ContinueDeployment with DeploymentWaitType instead.") @discardableResult public func skipWaitTimeForInstanceTermination(_ input: SkipWaitTimeForInstanceTerminationInput) -> EventLoopFuture<Void>
-
Attempts to stop an ongoing deployment.
Declaration
Swift
public func stopDeployment(_ input: StopDeploymentInput) -> EventLoopFuture<StopDeploymentOutput>
-
Associates the list of tags in the input Tags parameter with the resource identified by the ResourceArn input parameter.
Declaration
Swift
public func tagResource(_ input: TagResourceInput) -> EventLoopFuture<TagResourceOutput>
-
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.
Declaration
Swift
public func untagResource(_ input: UntagResourceInput) -> EventLoopFuture<UntagResourceOutput>
-
Changes the name of an application.
Declaration
Swift
@discardableResult public func updateApplication(_ input: UpdateApplicationInput) -> EventLoopFuture<Void>
-
Changes information about a deployment group.
Declaration
Swift
public func updateDeploymentGroup(_ input: UpdateDeploymentGroupInput) -> EventLoopFuture<UpdateDeploymentGroupOutput>
-
Lists information about revisions for an application.
Declaration
Swift
public func listApplicationRevisionsPaginator(_ input: ListApplicationRevisionsInput, onPage: @escaping (ListApplicationRevisionsOutput, EventLoop) -> EventLoopFuture<Bool>) -> EventLoopFuture<Void>
-
Lists the applications registered with the IAM user or AWS account.
Declaration
Swift
public func listApplicationsPaginator(_ input: ListApplicationsInput, onPage: @escaping (ListApplicationsOutput, EventLoop) -> EventLoopFuture<Bool>) -> EventLoopFuture<Void>
-
Lists the deployment configurations with the IAM user or AWS account.
Declaration
Swift
public func listDeploymentConfigsPaginator(_ input: ListDeploymentConfigsInput, onPage: @escaping (ListDeploymentConfigsOutput, EventLoop) -> EventLoopFuture<Bool>) -> EventLoopFuture<Void>
-
Lists the deployment groups for an application registered with the IAM user or AWS account.
Declaration
Swift
public func listDeploymentGroupsPaginator(_ input: ListDeploymentGroupsInput, onPage: @escaping (ListDeploymentGroupsOutput, EventLoop) -> EventLoopFuture<Bool>) -> EventLoopFuture<Void>
-
The newer BatchGetDeploymentTargets should be used instead because it works with all compute types. ListDeploymentInstances throws an exception if it is used with a compute platform other than EC2/On-premises or AWS Lambda. Lists the instance for a deployment associated with the IAM user or AWS account.
Declaration
Swift
@available(*, deprecated, message: "This operation is deprecated, use ListDeploymentTargets instead.") public func listDeploymentInstancesPaginator(_ input: ListDeploymentInstancesInput, onPage: @escaping (ListDeploymentInstancesOutput, EventLoop) -> EventLoopFuture<Bool>) -> EventLoopFuture<Void>
-
Lists the deployments in a deployment group for an application registered with the IAM user or AWS account.
Declaration
Swift
public func listDeploymentsPaginator(_ input: ListDeploymentsInput, onPage: @escaping (ListDeploymentsOutput, EventLoop) -> EventLoopFuture<Bool>) -> EventLoopFuture<Void>
-
Undocumented
See moreDeclaration
Swift
public struct ListApplicationRevisionsInput : AWSShape
extension CodeDeploy.ListApplicationRevisionsInput: AWSPaginateStringToken
-
Undocumented
See moreDeclaration
Swift
public struct ListApplicationsInput : AWSShape
extension CodeDeploy.ListApplicationsInput: AWSPaginateStringToken
-
Undocumented
See moreDeclaration
Swift
public struct ListDeploymentConfigsInput : AWSShape
extension CodeDeploy.ListDeploymentConfigsInput: AWSPaginateStringToken
-
Undocumented
See moreDeclaration
Swift
public struct ListDeploymentGroupsInput : AWSShape
extension CodeDeploy.ListDeploymentGroupsInput: AWSPaginateStringToken
-
Undocumented
See moreDeclaration
Swift
public struct ListDeploymentInstancesInput : AWSShape
extension CodeDeploy.ListDeploymentInstancesInput: AWSPaginateStringToken
-
Undocumented
See moreDeclaration
Swift
public struct ListDeploymentsInput : AWSShape
extension CodeDeploy.ListDeploymentsInput: AWSPaginateStringToken
-
Undocumented
See moreDeclaration
Swift
public enum ApplicationRevisionSortBy : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum AutoRollbackEvent : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum BundleType : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum ComputePlatform : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum DeploymentCreator : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum DeploymentOption : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum DeploymentReadyAction : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum DeploymentStatus : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum DeploymentTargetType : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum DeploymentType : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum DeploymentWaitType : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum EC2TagFilterType : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum ErrorCode : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum FileExistsBehavior : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum GreenFleetProvisioningAction : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum InstanceAction : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum InstanceStatus : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum InstanceType : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum LifecycleErrorCode : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum LifecycleEventStatus : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum ListStateFilterAction : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum MinimumHealthyHostsType : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum RegistrationStatus : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum RevisionLocationType : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum SortOrder : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum StopStatus : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum TagFilterType : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum TargetFilterName : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum TargetLabel : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum TargetStatus : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum TrafficRoutingType : String, CustomStringConvertible, Codable
-
Undocumented
See moreDeclaration
Swift
public enum TriggerEventType : String, CustomStringConvertible, Codable