Class CfnStackSet
A CloudFormation AWS::CloudFormation::StackSet
.
Inherited Members
Namespace: Amazon.CDK.AWS.CloudFormation
Assembly: Amazon.CDK.AWS.CloudFormation.dll
Syntax (csharp)
public class CfnStackSet : CfnResource, IConstruct, IDependable, IInspectable
Syntax (vb)
Public Class CfnStackSet
Inherits CfnResource
Implements IConstruct, IDependable, IInspectable
Remarks
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.
CloudformationResource: AWS::CloudFormation::StackSet
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.CloudFormation;
var managedExecution;
var cfnStackSet = new CfnStackSet(this, "MyCfnStackSet", new CfnStackSetProps {
PermissionModel = "permissionModel",
StackSetName = "stackSetName",
// the properties below are optional
AdministrationRoleArn = "administrationRoleArn",
AutoDeployment = new AutoDeploymentProperty {
Enabled = false,
RetainStacksOnAccountRemoval = false
},
CallAs = "callAs",
Capabilities = new [] { "capabilities" },
Description = "description",
ExecutionRoleName = "executionRoleName",
ManagedExecution = managedExecution,
OperationPreferences = new OperationPreferencesProperty {
FailureToleranceCount = 123,
FailureTolerancePercentage = 123,
MaxConcurrentCount = 123,
MaxConcurrentPercentage = 123,
RegionConcurrencyType = "regionConcurrencyType",
RegionOrder = new [] { "regionOrder" }
},
Parameters = new [] { new ParameterProperty {
ParameterKey = "parameterKey",
ParameterValue = "parameterValue"
} },
StackInstancesGroup = new [] { new StackInstancesProperty {
DeploymentTargets = new DeploymentTargetsProperty {
AccountFilterType = "accountFilterType",
Accounts = new [] { "accounts" },
OrganizationalUnitIds = new [] { "organizationalUnitIds" }
},
Regions = new [] { "regions" },
// the properties below are optional
ParameterOverrides = new [] { new ParameterProperty {
ParameterKey = "parameterKey",
ParameterValue = "parameterValue"
} }
} },
Tags = new [] { new CfnTag {
Key = "key",
Value = "value"
} },
TemplateBody = "templateBody",
TemplateUrl = "templateUrl"
});
Synopsis
Constructors
CfnStackSet(Construct, String, ICfnStackSetProps) | Create a new |
CfnStackSet(ByRefValue) | Used by jsii to construct an instance of this class from a Javascript-owned object reference |
CfnStackSet(DeputyBase.DeputyProps) | Used by jsii to construct an instance of this class from DeputyProps |
Properties
AdministrationRoleArn | The Amazon Resource Number (ARN) of the IAM role to use to create this stack set. |
AttrStackSetId | The ID of the stack that you're creating. |
AutoDeployment | [ |
CallAs | [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. |
Capabilities | The capabilities that are allowed in the stack set. |
CFN_RESOURCE_TYPE_NAME | The CloudFormation resource type name for this resource class. |
CfnProperties | |
Description | A description of the stack set. |
ExecutionRoleName | The name of the IAM execution role to use to create the stack set. |
ManagedExecution | Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations. |
OperationPreferences | The user-specified preferences for how AWS CloudFormation performs a stack set operation. |
Parameters | The input parameters for the stack set template. |
PermissionModel | Describes how the IAM roles required for stack set operations are created. |
StackInstancesGroup | A group of stack instances with parameters in some specific accounts and Regions. |
StackSetName | The name to associate with the stack set. |
Tags | The key-value pairs to associate with this stack set and the stacks created from it. |
TemplateBody | The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes. |
TemplateUrl | Location of file containing the template body. |
Methods
Inspect(TreeInspector) | Examines the CloudFormation resource and discloses attributes. |
RenderProperties(IDictionary<String, Object>) |
Constructors
CfnStackSet(Construct, String, ICfnStackSetProps)
Create a new AWS::CloudFormation::StackSet
.
public CfnStackSet(Construct scope, string id, ICfnStackSetProps props)
Parameters
- scope Construct
- scope in which this resource is defined.
- id System.String
- scoped id of the resource.
- props ICfnStackSetProps
- resource properties.
CfnStackSet(ByRefValue)
Used by jsii to construct an instance of this class from a Javascript-owned object reference
protected CfnStackSet(ByRefValue reference)
Parameters
- reference Amazon.JSII.Runtime.Deputy.ByRefValue
The Javascript-owned object reference
CfnStackSet(DeputyBase.DeputyProps)
Used by jsii to construct an instance of this class from DeputyProps
protected CfnStackSet(DeputyBase.DeputyProps props)
Parameters
- props Amazon.JSII.Runtime.Deputy.DeputyBase.DeputyProps
The deputy props
Properties
AdministrationRoleArn
The Amazon Resource Number (ARN) of the IAM role to use to create this stack set.
public virtual string AdministrationRoleArn { get; set; }
Property Value
System.String
Remarks
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
AttrStackSetId
The ID of the stack that you're creating.
public virtual string AttrStackSetId { get; }
Property Value
System.String
Remarks
CloudformationAttribute: StackSetId
AutoDeployment
[ Service-managed
permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU).
public virtual object AutoDeployment { get; set; }
Property Value
System.Object
Remarks
CallAs
[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.
public virtual string CallAs { get; set; }
Property Value
System.String
Remarks
By default, SELF
is specified. Use SELF
for stack sets with self-managed permissions.
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
Capabilities
The capabilities that are allowed in the stack set.
public virtual string[] Capabilities { get; set; }
Property Value
System.String[]
Remarks
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 .
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
public static string CFN_RESOURCE_TYPE_NAME { get; }
Property Value
System.String
CfnProperties
protected override IDictionary<string, object> CfnProperties { get; }
Property Value
System.Collections.Generic.IDictionary<System.String, System.Object>
Overrides
Description
A description of the stack set.
public virtual string Description { get; set; }
Property Value
System.String
Remarks
ExecutionRoleName
The name of the IAM execution role to use to create the stack set.
public virtual string ExecutionRoleName { get; set; }
Property Value
System.String
Remarks
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+=,.@-]+
ManagedExecution
Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations.
public virtual object ManagedExecution { get; set; }
Property Value
System.Object
Remarks
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.
OperationPreferences
The user-specified preferences for how AWS CloudFormation performs a stack set operation.
public virtual object OperationPreferences { get; set; }
Property Value
System.Object
Remarks
Parameters
The input parameters for the stack set template.
public virtual object Parameters { get; set; }
Property Value
System.Object
Remarks
PermissionModel
Describes how the IAM roles required for stack set operations are created.
public virtual string PermissionModel { get; set; }
Property Value
System.String
Remarks
StackInstancesGroup
A group of stack instances with parameters in some specific accounts and Regions.
public virtual object StackInstancesGroup { get; set; }
Property Value
System.Object
Remarks
StackSetName
The name to associate with the stack set.
public virtual string StackSetName { get; set; }
Property Value
System.String
Remarks
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 <code>StackSetName</code> property is required.
Tags
The key-value pairs to associate with this stack set and the stacks created from it.
public virtual TagManager Tags { get; }
Property Value
Remarks
AWS CloudFormation also propagates these tags to supported resources that are created in the stacks. A maximum number of 50 tags can be specified.
TemplateBody
The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes.
public virtual string TemplateBody { get; set; }
Property Value
System.String
Remarks
You must include either TemplateURL
or TemplateBody
in a StackSet, but you can't use both. Dynamic references in the TemplateBody
may not work correctly in all cases. It's recommended to pass templates containing dynamic references through TemplateUrl
instead.
Minimum : 1
Maximum : 51200
TemplateUrl
Location of file containing the template body.
public virtual string TemplateUrl { get; set; }
Property Value
System.String
Remarks
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
or TemplateBody
in a StackSet, but you can't use both.
Minimum : 1
Maximum : 1024
Methods
Inspect(TreeInspector)
Examines the CloudFormation resource and discloses attributes.
public virtual void Inspect(TreeInspector inspector)
Parameters
- inspector TreeInspector
- tree inspector to collect and process attributes.
RenderProperties(IDictionary<String, Object>)
protected override IDictionary<string, object> RenderProperties(IDictionary<string, object> props)
Parameters
- props System.Collections.Generic.IDictionary<System.String, System.Object>
Returns
System.Collections.Generic.IDictionary<System.String, System.Object>