This is the new AWS CloudFormation Template Reference Guide. Please update your bookmarks and links. For help getting started with CloudFormation, see the AWS CloudFormation User Guide.
AWS::ECS::Service CanaryConfiguration
Configuration for a canary deployment strategy that shifts a fixed percentage of traffic to the new service revision, waits for a specified bake time, then shifts the remaining traffic.
The following validation applies only to Canary deployments created through AWS CloudFormation. AWS CloudFormation operations time out after 36 hours. Canary deployments can approach this limit because of their extended duration. This can cause AWS CloudFormation to roll back the deployment. To prevent timeout-related rollbacks, AWS CloudFormation rejects deployments when the calculated deployment time exceeds 33 hours based on your template configuration:
                BakeTimeInMinutes + CanaryBakeTimeInMinutes
            
Additional backend processes (such as task scaling and running lifecycle hooks) can extend deployment time beyond these calculations. Even deployments under the 33-hour threshold might still time out if these processes cause the total duration to exceed 36 hours.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "CanaryBakeTimeInMinutes" :Integer, "CanaryPercent" :Number}
YAML
CanaryBakeTimeInMinutes:IntegerCanaryPercent:Number
Properties
CanaryBakeTimeInMinutes- 
                    
The amount of time in minutes to wait during the canary phase before shifting the remaining production traffic to the new service revision. Valid values are 0 to 1440 minutes (24 hours). The default value is 10.
Required: No
Type: Integer
Minimum:
0Maximum:
1440Update requires: No interruption
 CanaryPercent- 
                    
The percentage of production traffic to shift to the new service revision during the canary phase. Valid values are multiples of 0.1 from 0.1 to 100.0. The default value is 5.0.
Required: No
Type: Number
Minimum:
0Maximum:
100Update requires: No interruption