AWS::CloudFormation::StackSet OperationPreferences
The user-specified preferences for how CloudFormation performs a stack set operation. For more information on maximum concurrent accounts and failure tolerance, see Stack set operation options in the AWS CloudFormation User Guide.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "ConcurrencyMode" :
String
, "FailureToleranceCount" :Integer
, "FailureTolerancePercentage" :Integer
, "MaxConcurrentCount" :Integer
, "MaxConcurrentPercentage" :Integer
, "RegionConcurrencyType" :String
, "RegionOrder" :[ String, ... ]
}
YAML
ConcurrencyMode:
String
FailureToleranceCount:Integer
FailureTolerancePercentage:Integer
MaxConcurrentCount:Integer
MaxConcurrentPercentage:Integer
RegionConcurrencyType:String
RegionOrder:- String
Properties
ConcurrencyMode
-
Specifies how the concurrency level behaves during the operation execution.
-
STRICT_FAILURE_TOLERANCE
: This option dynamically lowers the concurrency level to ensure the number of failed accounts never exceeds the value ofFailureToleranceCount
+1. The initial actual concurrency is set to the lower of either the value of theMaxConcurrentCount
, or the value ofFailureToleranceCount
+1. The actual concurrency is then reduced proportionally by the number of failures. This is the default behavior.If failure tolerance or Maximum concurrent accounts are set to percentages, the behavior is similar.
-
SOFT_FAILURE_TOLERANCE
: This option decouplesFailureToleranceCount
from the actual concurrency. This allows stack set operations to run at the concurrency level set by theMaxConcurrentCount
value, orMaxConcurrentPercentage
, regardless of the number of failures.
Required: No
Type: String
Allowed values:
STRICT_FAILURE_TOLERANCE | SOFT_FAILURE_TOLERANCE
Update requires: No interruption
-
FailureToleranceCount
-
The number of accounts, per Region, for which this operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions.
Conditional: You must specify either
FailureToleranceCount
orFailureTolerancePercentage
(but not both).Required: Conditional
Type: Integer
Minimum:
0
Update requires: No interruption
FailureTolerancePercentage
-
The percentage of accounts, per Region, for which this stack operation can fail before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions.
When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number.
Conditional: You must specify either
FailureToleranceCount
orFailureTolerancePercentage
, but not both.Required: Conditional
Type: Integer
Minimum:
0
Maximum:
100
Update requires: No interruption
MaxConcurrentCount
-
The maximum number of accounts in which to perform this operation at one time. This is dependent on the value of
FailureToleranceCount
.MaxConcurrentCount
is at most one more than theFailureToleranceCount
.Note that this setting lets you specify the maximum for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.
Conditional: You must specify either
MaxConcurrentCount
orMaxConcurrentPercentage
, but not both.Required: Conditional
Type: Integer
Minimum:
1
Update requires: No interruption
MaxConcurrentPercentage
-
The maximum percentage of accounts in which to perform this operation at one time.
When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead.
Note that this setting lets you specify the maximum for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.
Conditional: You must specify either
MaxConcurrentCount
orMaxConcurrentPercentage
, but not both.Required: Conditional
Type: Integer
Minimum:
0
Maximum:
100
Update requires: No interruption
RegionConcurrencyType
-
The concurrency type of deploying StackSets operations in Regions, could be in parallel or one Region at a time.
Required: No
Type: String
Allowed values:
SEQUENTIAL | PARALLEL
Update requires: No interruption
RegionOrder
-
The order of the Regions where you want to perform the stack operation.
Note
RegionOrder
isn't followed ifAutoDeployment
is enabled.Required: No
Type: Array of String
Update requires: No interruption