AWS::AppConfig::Deployment - AWS CloudFormation

AWS::AppConfig::Deployment

The AWS::AppConfig::Deployment resource starts a deployment. Starting a deployment in AWS AppConfig calls the StartDeployment API action. This call includes the IDs of the AppConfig application, the environment, the configuration profile, and (optionally) the configuration data version to deploy. The call also includes the ID of the deployment strategy to use, which determines how the configuration data is deployed.

AppConfig monitors the distribution to all hosts and reports status. If a distribution fails, then AppConfig rolls back the configuration.

AppConfig requires that you create resources and deploy a configuration in the following order:

  1. Create an application

  2. Create an environment

  3. Create a configuration profile

  4. Create a deployment strategy

  5. Deploy the configuration

For more information, see AWS AppConfig in the AWS Systems Manager User Guide.

Syntax

To declare this entity in your AWS CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::AppConfig::Deployment", "Properties" : { "ApplicationId" : String, "ConfigurationProfileId" : String, "ConfigurationVersion" : String, "DeploymentStrategyId" : String, "Description" : String, "EnvironmentId" : String, "Tags" : [ Tags, ... ] } }

YAML

Type: AWS::AppConfig::Deployment Properties: ApplicationId: String ConfigurationProfileId: String ConfigurationVersion: String DeploymentStrategyId: String Description: String EnvironmentId: String Tags: - Tags

Properties

ApplicationId

The application ID.

Required: Yes

Type: String

Pattern: [a-z0-9]{4,7}

Update requires: Replacement

ConfigurationProfileId

The configuration profile ID.

Required: Yes

Type: String

Pattern: [a-z0-9]{4,7}

Update requires: Replacement

ConfigurationVersion

The configuration version to deploy.

Required: Yes

Type: String

Minimum: 1

Maximum: 1024

Update requires: Replacement

DeploymentStrategyId

The deployment strategy ID.

Required: Yes

Type: String

Pattern: [a-z0-9]{4,7}

Update requires: Replacement

Description

A description of the deployment.

Required: No

Type: String

Minimum: 0

Maximum: 1024

Update requires: Replacement

EnvironmentId

The environment ID.

Required: Yes

Type: String

Pattern: [a-z0-9]{4,7}

Update requires: Replacement

Tags

Metadata to assign to the deployment. Tags help organize and categorize your AWS AppConfig resources. Each tag consists of a key and an optional value, both of which you define.

Required: No

Type: List of Tags

Update requires: No interruption

Return values

Ref

Examples

AWS AppConfig Deployment Example

The following example creates an AWS AppConfig deployment. Starting a deployment in AWS AppConfig calls the StartDeployment API action. This call includes the IDs of the AppConfig application, the environment, the configuration profile, and (optionally) the configuration data version to deploy. The call also includes the ID of the deployment strategy to use, which determines how the configuration data is deployed.

AppConfig monitors the distribution to all hosts and reports status. If a distribution fails, then AppConfig rolls back the configuration.

JSON

Resources": { "BasicDeployment": { "Type": "AWS::AppConfig::Deployment", "DependsOn": [ "MyTestApplication", "MyTestConfigurationProfile", "MyTestEnvironment", "MyTestDeploymentStrategy" ], "Properties": { "ApplicationId": 12345, "EnvironmentId": 12345, "DeploymentStrategyId": 12345, "ConfigurationProfileId": 12345, "ConfigurationVersion": "1", "Description": "My test deployment", "Tags": [ { "Key": "Env", "Value": "test" } ] } } } }

YAML

Resources: BasicDeployment: Type: AWS::AppConfig::Deployment Properties: ApplicationId: !Ref MyTestApplication EnvironmentId: !Ref MyTestEnvironment DeploymentStrategyId: !Ref MyTestDeploymentStrategy ConfigurationProfileId: !Ref MyTestConfigurationProfile ConfigurationVersion: '1' Description: 'My test deployment' Tags: - Key: Env Value: test

See also