Class CfnStackSet
- All Implemented Interfaces:
IConstruct
,IDependable
,IInspectable
,software.amazon.jsii.JsiiSerializable
,software.constructs.IConstruct
AWS::CloudFormation::StackSet
.
The AWS::CloudFormation::StackSet
enables you to provision stacks into AWS accounts and across Regions by using a single CloudFormation template. In the stack set, you specify the template to use, in addition to any parameters and capabilities that the template requires.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import software.amazon.awscdk.core.*; Object managedExecution; CfnStackSet cfnStackSet = CfnStackSet.Builder.create(this, "MyCfnStackSet") .permissionModel("permissionModel") .stackSetName("stackSetName") // the properties below are optional .administrationRoleArn("administrationRoleArn") .autoDeployment(AutoDeploymentProperty.builder() .enabled(false) .retainStacksOnAccountRemoval(false) .build()) .callAs("callAs") .capabilities(List.of("capabilities")) .description("description") .executionRoleName("executionRoleName") .managedExecution(managedExecution) .operationPreferences(OperationPreferencesProperty.builder() .failureToleranceCount(123) .failureTolerancePercentage(123) .maxConcurrentCount(123) .maxConcurrentPercentage(123) .regionConcurrencyType("regionConcurrencyType") .regionOrder(List.of("regionOrder")) .build()) .parameters(List.of(ParameterProperty.builder() .parameterKey("parameterKey") .parameterValue("parameterValue") .build())) .stackInstancesGroup(List.of(StackInstancesProperty.builder() .deploymentTargets(DeploymentTargetsProperty.builder() .accountFilterType("accountFilterType") .accounts(List.of("accounts")) .organizationalUnitIds(List.of("organizationalUnitIds")) .build()) .regions(List.of("regions")) // the properties below are optional .parameterOverrides(List.of(ParameterProperty.builder() .parameterKey("parameterKey") .parameterValue("parameterValue") .build())) .build())) .tags(List.of(CfnTag.builder() .key("key") .value("value") .build())) .templateBody("templateBody") .templateUrl("templateUrl") .build();
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic interface
[Service-managed
permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organizational unit (OU).static final class
A fluent builder forCfnStackSet
.static interface
The AWS OrganizationalUnitIds or Accounts for which to create stack instances in the specified Regions.static interface
Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations.static interface
The user-specified preferences for how AWS CloudFormation performs a stack set operation.static interface
The Parameter data type.static interface
Stack instances in some specific accounts and Regions.Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationMode
Nested classes/interfaces inherited from interface software.amazon.awscdk.core.IConstruct
IConstruct.Jsii$Default
Nested classes/interfaces inherited from interface software.constructs.IConstruct
software.constructs.IConstruct.Jsii$Default
Nested classes/interfaces inherited from interface software.amazon.awscdk.core.IInspectable
IInspectable.Jsii$Default, IInspectable.Jsii$Proxy
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
The CloudFormation resource type name for this resource class. -
Constructor Summary
ModifierConstructorDescriptionCfnStackSet
(Construct scope, String id, CfnStackSetProps props) Create a newAWS::CloudFormation::StackSet
.protected
CfnStackSet
(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protected
CfnStackSet
(software.amazon.jsii.JsiiObjectRef objRef) -
Method Summary
Modifier and TypeMethodDescriptionThe Amazon Resource Number (ARN) of the IAM role to use to create this stack set.The ID of the stack that you're creating.[Service-managed
permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU).[Service-managed permissions] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account.The capabilities that are allowed in the stack set.A description of the stack set.The name of the IAM execution role to use to create the stack set.Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations.The user-specified preferences for how AWS CloudFormation performs a stack set operation.The input parameters for the stack set template.Describes how the IAM roles required for stack set operations are created.A group of stack instances with parameters in some specific accounts and Regions.The name to associate with the stack set.getTags()
The key-value pairs to associate with this stack set and the stacks created from it.The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes.Location of file containing the template body.void
inspect
(TreeInspector inspector) Examines the CloudFormation resource and discloses attributes.renderProperties
(Map<String, Object> props) void
setAdministrationRoleArn
(String value) The Amazon Resource Number (ARN) of the IAM role to use to create this stack set.void
[Service-managed
permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU).void
setAutoDeployment
(IResolvable value) [Service-managed
permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU).void
[Service-managed permissions] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account.void
setCapabilities
(List<String> value) The capabilities that are allowed in the stack set.void
setDescription
(String value) A description of the stack set.void
setExecutionRoleName
(String value) The name of the IAM execution role to use to create the stack set.void
setManagedExecution
(Object value) Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations.void
The user-specified preferences for how AWS CloudFormation performs a stack set operation.void
The user-specified preferences for how AWS CloudFormation performs a stack set operation.void
setParameters
(List<Object> value) The input parameters for the stack set template.void
setParameters
(IResolvable value) The input parameters for the stack set template.void
setPermissionModel
(String value) Describes how the IAM roles required for stack set operations are created.void
setStackInstancesGroup
(List<Object> value) A group of stack instances with parameters in some specific accounts and Regions.void
A group of stack instances with parameters in some specific accounts and Regions.void
setStackSetName
(String value) The name to associate with the stack set.void
setTemplateBody
(String value) The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes.void
setTemplateUrl
(String value) Location of file containing the template body.Methods inherited from class software.amazon.awscdk.core.CfnResource
addDeletionOverride, addDependsOn, addMetadata, addOverride, addPropertyDeletionOverride, addPropertyOverride, applyRemovalPolicy, applyRemovalPolicy, applyRemovalPolicy, getAtt, getCfnOptions, getCfnResourceType, getMetadata, getUpdatedProperites, isCfnResource, shouldSynthesize, toString, validateProperties
Methods inherited from class software.amazon.awscdk.core.CfnRefElement
getRef
Methods inherited from class software.amazon.awscdk.core.CfnElement
getCreationStack, getLogicalId, getStack, isCfnElement, overrideLogicalId
Methods inherited from class software.amazon.awscdk.core.Construct
getNode, isConstruct, onPrepare, onSynthesize, onValidate, prepare, synthesize, validate
Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Field Details
-
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
-
-
Constructor Details
-
CfnStackSet
protected CfnStackSet(software.amazon.jsii.JsiiObjectRef objRef) -
CfnStackSet
protected CfnStackSet(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
CfnStackSet
@Stability(Stable) public CfnStackSet(@NotNull Construct scope, @NotNull String id, @NotNull CfnStackSetProps props) Create a newAWS::CloudFormation::StackSet
.- Parameters:
scope
-- scope in which this resource is defined.
id
-- scoped id of the resource.
props
-- resource properties.
-
-
Method Details
-
inspect
Examines the CloudFormation resource and discloses attributes.- Specified by:
inspect
in interfaceIInspectable
- Parameters:
inspector
-- tree inspector to collect and process attributes.
-
renderProperties
@Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String, Object> props) - Overrides:
renderProperties
in classCfnResource
- Parameters:
props
- This parameter is required.
-
getAttrStackSetId
The ID of the stack that you're creating. -
getCfnProperties
- Overrides:
getCfnProperties
in classCfnResource
-
getTags
The key-value pairs to associate with this stack set and the stacks created from it.AWS CloudFormation also propagates these tags to supported resources that are created in the stacks. A maximum number of 50 tags can be specified.
-
getManagedExecution
Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations.When active, StackSets performs non-conflicting operations concurrently and queues conflicting operations. After conflicting operations finish, StackSets starts queued operations in request order.
If there are already running or queued operations, StackSets queues all incoming operations even if they are non-conflicting.
You can't modify your stack set's execution configuration while there are running or queued operations for that stack set.
When inactive (default), StackSets performs one operation at a time in request order.
-
setManagedExecution
Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations.When active, StackSets performs non-conflicting operations concurrently and queues conflicting operations. After conflicting operations finish, StackSets starts queued operations in request order.
If there are already running or queued operations, StackSets queues all incoming operations even if they are non-conflicting.
You can't modify your stack set's execution configuration while there are running or queued operations for that stack set.
When inactive (default), StackSets performs one operation at a time in request order.
-
getPermissionModel
Describes how the IAM roles required for stack set operations are created.- With
SELF_MANAGED
permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see Grant Self-Managed Stack Set Permissions . - With
SERVICE_MANAGED
permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations . For more information, see Grant Service-Managed Stack Set Permissions .
- With
-
setPermissionModel
Describes how the IAM roles required for stack set operations are created.- With
SELF_MANAGED
permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see Grant Self-Managed Stack Set Permissions . - With
SERVICE_MANAGED
permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations . For more information, see Grant Service-Managed Stack Set Permissions .
- With
-
getStackSetName
The name to associate with the stack set.The name must be unique in the Region where you create your stack set.
Maximum :
128
Pattern :
^[a-zA-Z][a-zA-Z0-9-]{0,127}$
The
StackSetName
property is required. -
setStackSetName
The name to associate with the stack set.The name must be unique in the Region where you create your stack set.
Maximum :
128
Pattern :
^[a-zA-Z][a-zA-Z0-9-]{0,127}$
The
StackSetName
property is required. -
getAdministrationRoleArn
The Amazon Resource Number (ARN) of the IAM role to use to create this stack set.Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account.
Use customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. For more information, see Prerequisites: Granting Permissions for Stack Set Operations in the AWS CloudFormation User Guide .
Minimum :
20
Maximum :
2048
-
setAdministrationRoleArn
The Amazon Resource Number (ARN) of the IAM role to use to create this stack set.Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account.
Use customized administrator roles to control which users or groups can manage specific stack sets within the same administrator account. For more information, see Prerequisites: Granting Permissions for Stack Set Operations in the AWS CloudFormation User Guide .
Minimum :
20
Maximum :
2048
-
getAutoDeployment
[Service-managed
permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU). -
setAutoDeployment
[Service-managed
permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU). -
setAutoDeployment
@Stability(Stable) public void setAutoDeployment(@Nullable CfnStackSet.AutoDeploymentProperty value) [Service-managed
permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU). -
getCallAs
[Service-managed permissions] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account.By default,
SELF
is specified. UseSELF
for stack sets with self-managed permissions.- To create a stack set with service-managed permissions while signed in to the management account, specify
SELF
. - To create a stack set with service-managed permissions while signed in to a delegated administrator account, specify
DELEGATED_ADMIN
.
Your AWS account must be registered as a delegated admin in the management account. For more information, see Register a delegated administrator in the AWS CloudFormation User Guide .
Stack sets with service-managed permissions are created in the management account, including stack sets that are created by delegated administrators.
Valid Values :
SELF
|DELEGATED_ADMIN
- To create a stack set with service-managed permissions while signed in to the management account, specify
-
setCallAs
[Service-managed permissions] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account.By default,
SELF
is specified. UseSELF
for stack sets with self-managed permissions.- To create a stack set with service-managed permissions while signed in to the management account, specify
SELF
. - To create a stack set with service-managed permissions while signed in to a delegated administrator account, specify
DELEGATED_ADMIN
.
Your AWS account must be registered as a delegated admin in the management account. For more information, see Register a delegated administrator in the AWS CloudFormation User Guide .
Stack sets with service-managed permissions are created in the management account, including stack sets that are created by delegated administrators.
Valid Values :
SELF
|DELEGATED_ADMIN
- To create a stack set with service-managed permissions while signed in to the management account, specify
-
getCapabilities
The capabilities that are allowed in the stack set.Some stack set templates might include resources that can affect permissions in your AWS account —for example, by creating new AWS Identity and Access Management ( IAM ) users. For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates .
-
setCapabilities
The capabilities that are allowed in the stack set.Some stack set templates might include resources that can affect permissions in your AWS account —for example, by creating new AWS Identity and Access Management ( IAM ) users. For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates .
-
getDescription
A description of the stack set.Minimum :
1
Maximum :
1024
-
setDescription
A description of the stack set.Minimum :
1
Maximum :
1024
-
getExecutionRoleName
The name of the IAM execution role to use to create the stack set.If you don't specify an execution role, AWS CloudFormation uses the
AWSCloudFormationStackSetExecutionRole
role for the stack set operation.Minimum :
1
Maximum :
64
Pattern :
[a-zA-Z_0-9+=,.@-]+
-
setExecutionRoleName
The name of the IAM execution role to use to create the stack set.If you don't specify an execution role, AWS CloudFormation uses the
AWSCloudFormationStackSetExecutionRole
role for the stack set operation.Minimum :
1
Maximum :
64
Pattern :
[a-zA-Z_0-9+=,.@-]+
-
getOperationPreferences
The user-specified preferences for how AWS CloudFormation performs a stack set operation. -
setOperationPreferences
The user-specified preferences for how AWS CloudFormation performs a stack set operation. -
setOperationPreferences
@Stability(Stable) public void setOperationPreferences(@Nullable CfnStackSet.OperationPreferencesProperty value) The user-specified preferences for how AWS CloudFormation performs a stack set operation. -
getParameters
The input parameters for the stack set template. -
setParameters
The input parameters for the stack set template. -
setParameters
The input parameters for the stack set template. -
getStackInstancesGroup
A group of stack instances with parameters in some specific accounts and Regions. -
setStackInstancesGroup
A group of stack instances with parameters in some specific accounts and Regions. -
setStackInstancesGroup
A group of stack instances with parameters in some specific accounts and Regions. -
getTemplateBody
The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes.You must include either
TemplateURL
orTemplateBody
in a StackSet, but you can't use both. Dynamic references in theTemplateBody
may not work correctly in all cases. It's recommended to pass templates containing dynamic references throughTemplateUrl
instead.Minimum :
1
Maximum :
51200
-
setTemplateBody
The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes.You must include either
TemplateURL
orTemplateBody
in a StackSet, but you can't use both. Dynamic references in theTemplateBody
may not work correctly in all cases. It's recommended to pass templates containing dynamic references throughTemplateUrl
instead.Minimum :
1
Maximum :
51200
-
getTemplateUrl
Location of file containing the template body.The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket.
You must include either
TemplateURL
orTemplateBody
in a StackSet, but you can't use both.Minimum :
1
Maximum :
1024
-
setTemplateUrl
Location of file containing the template body.The URL must point to a template (max size: 460,800 bytes) that's located in an Amazon S3 bucket.
You must include either
TemplateURL
orTemplateBody
in a StackSet, but you can't use both.Minimum :
1
Maximum :
1024
-