StartDeployment
Starts a deployment.
Request Syntax
POST /applications/ApplicationId
/environments/EnvironmentId
/deployments HTTP/1.1
Content-type: application/json
{
"ConfigurationProfileId": "string
",
"ConfigurationVersion": "string
",
"DeploymentStrategyId": "string
",
"Description": "string
",
"Tags": {
"string
" : "string
"
}
}
URI Request Parameters
The request uses the following URI parameters.
- ApplicationId
-
The application ID.
Pattern:
[a-z0-9]{4,7}
Required: Yes
- EnvironmentId
-
The environment ID.
Pattern:
[a-z0-9]{4,7}
Required: Yes
Request Body
The request accepts the following data in JSON format.
- ConfigurationProfileId
-
The configuration profile ID.
Type: String
Pattern:
[a-z0-9]{4,7}
Required: Yes
- ConfigurationVersion
-
The configuration version to deploy.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 1024.
Required: Yes
- DeploymentStrategyId
-
The deployment strategy ID.
Type: String
Pattern:
(^[a-z0-9]{4,7}$|^AppConfig\.[A-Za-z0-9]{9,40}$)
Required: Yes
- Description
-
A description of the deployment.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 1024.
Required: No
- 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.
Type: String to string map
Map Entries: Minimum number of 0 items. Maximum number of 50 items.
Key Length Constraints: Minimum length of 1. Maximum length of 128.
Value Length Constraints: Maximum length of 256.
Required: No
Response Syntax
HTTP/1.1 201
Content-type: application/json
{
"ApplicationId": "string",
"CompletedAt": number,
"ConfigurationLocationUri": "string",
"ConfigurationName": "string",
"ConfigurationProfileId": "string",
"ConfigurationVersion": "string",
"DeploymentDurationInMinutes": number,
"DeploymentNumber": number,
"DeploymentStrategyId": "string",
"Description": "string",
"EnvironmentId": "string",
"EventLog": [
{
"Description": "string",
"EventType": "string",
"OccurredAt": number,
"TriggeredBy": "string"
}
],
"FinalBakeTimeInMinutes": number,
"GrowthFactor": number,
"GrowthType": "string",
"PercentageComplete": number,
"StartedAt": number,
"State": "string"
}
Response Elements
If the action is successful, the service sends back an HTTP 201 response.
The following data is returned in JSON format by the service.
- ApplicationId
-
The ID of the application that was deployed.
Type: String
Pattern:
[a-z0-9]{4,7}
- CompletedAt
-
The time the deployment completed.
Type: Timestamp
- ConfigurationLocationUri
-
Information about the source location of the configuration.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 2048.
- ConfigurationName
-
The name of the configuration.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 64.
- ConfigurationProfileId
-
The ID of the configuration profile that was deployed.
Type: String
Pattern:
[a-z0-9]{4,7}
- ConfigurationVersion
-
The configuration version that was deployed.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 1024.
- DeploymentDurationInMinutes
-
Total amount of time the deployment lasted.
Type: Integer
Valid Range: Minimum value of 0. Maximum value of 1440.
- DeploymentNumber
-
The sequence number of the deployment.
Type: Integer
- DeploymentStrategyId
-
The ID of the deployment strategy that was deployed.
Type: String
Pattern:
[a-z0-9]{4,7}
- Description
-
The description of the deployment.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 1024.
- EnvironmentId
-
The ID of the environment that was deployed.
Type: String
Pattern:
[a-z0-9]{4,7}
- EventLog
-
A list containing all events related to a deployment. The most recent events are displayed first.
Type: Array of DeploymentEvent objects
- FinalBakeTimeInMinutes
-
The amount of time that AWS AppConfig monitored for alarms before considering the deployment to be complete and no longer eligible for automatic rollback.
Type: Integer
Valid Range: Minimum value of 0. Maximum value of 1440.
- GrowthFactor
-
The percentage of targets to receive a deployed configuration during each interval.
Type: Float
Valid Range: Minimum value of 1.0. Maximum value of 100.0.
- GrowthType
-
The algorithm used to define how percentage grew over time.
Type: String
Valid Values:
LINEAR | EXPONENTIAL
- PercentageComplete
-
The percentage of targets for which the deployment is available.
Type: Float
Valid Range: Minimum value of 1.0. Maximum value of 100.0.
- StartedAt
-
The time the deployment started.
Type: Timestamp
- State
-
The state of the deployment.
Type: String
Valid Values:
BAKING | VALIDATING | DEPLOYING | COMPLETE | ROLLING_BACK | ROLLED_BACK
Errors
For information about the errors that are common to all actions, see Common Errors.
- BadRequestException
-
The input fails to satisfy the constraints specified by an AWS service.
HTTP Status Code: 400
- ConflictException
-
The request could not be processed because of conflict in the current state of the resource.
HTTP Status Code: 409
- InternalServerException
-
There was an internal failure in the AWS AppConfig service.
HTTP Status Code: 500
- ResourceNotFoundException
-
The requested resource could not be found.
HTTP Status Code: 404
Examples
Example
This example illustrates one usage of StartDeployment.
Sample Request
POST /applications/abc1234/environments/54j1r29/deployments HTTP/1.1
Host: appconfig.us-east-1.amazonaws.com
Accept-Encoding: identity
User-Agent: aws-cli/2.2.4 Python/3.8.8 Linux/5.4.134-73.228.amzn2int.x86_64 exe/x86_64.amzn.2 prompt/off command/appconfig.start-deployment
X-Amz-Date: 20210917T214353Z
Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20210917/us-east-1/appconfig/aws4_request, SignedHeaders=host;x-amz-date, Signature=39c3b3042cd2aEXAMPLE
Content-Length: 101
{
"DeploymentStrategyId": "1225qzk",
"ConfigurationProfileId": "ur8hx2f",
"ConfigurationVersion": "1"
}
Sample Response
{
"ApplicationId": "abc1234",
"EnvironmentId": "54j1r29",
"DeploymentStrategyId": "1225qzk",
"ConfigurationProfileId": "ur8hx2f",
"DeploymentNumber": 1,
"ConfigurationName": "Example-Configuration-Profile",
"ConfigurationLocationUri": "ssm-parameter://Example-Parameter",
"ConfigurationVersion": "1",
"DeploymentDurationInMinutes": 15,
"GrowthType": "LINEAR",
"GrowthFactor": 25.0,
"FinalBakeTimeInMinutes": 0,
"State": "DEPLOYING",
"EventLog": [
{
"EventType": "DEPLOYMENT_STARTED",
"TriggeredBy": "USER",
"Description": "Deployment started",
"OccurredAt": "2021-09-17T21:43:54.205000+00:00"
}
],
"PercentageComplete": 0.0,
"StartedAt": "2021-09-17T21:43:54.205000+00:00"
}
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: