Class CfnStackSetProps.Builder

java.lang.Object
software.amazon.awscdk.CfnStackSetProps.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnStackSetProps>
Enclosing interface:
CfnStackSetProps

@Stability(Stable) public static final class CfnStackSetProps.Builder extends Object implements software.amazon.jsii.Builder<CfnStackSetProps>
A builder for CfnStackSetProps
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • permissionModel

      @Stability(Stable) public CfnStackSetProps.Builder permissionModel(String permissionModel)
      Parameters:
      permissionModel - Describes how the IAM roles required for stack set operations are created. This parameter is required.
      • 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 .
      Returns:
      this
    • stackSetName

      @Stability(Stable) public CfnStackSetProps.Builder stackSetName(String stackSetName)
      Parameters:
      stackSetName - The name to associate with the stack set. This parameter is required. The name must be unique in the Region where you create your stack set.

      The StackSetName property is required.

      Returns:
      this
    • administrationRoleArn

      @Stability(Stable) public CfnStackSetProps.Builder administrationRoleArn(String administrationRoleArn)
      Parameters:
      administrationRoleArn - 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

      Returns:
      this
    • autoDeployment

      @Stability(Stable) public CfnStackSetProps.Builder autoDeployment(IResolvable autoDeployment)
      Parameters:
      autoDeployment - [ Service-managed permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU).
      Returns:
      this
    • autoDeployment

      @Stability(Stable) public CfnStackSetProps.Builder autoDeployment(CfnStackSet.AutoDeploymentProperty autoDeployment)
      Parameters:
      autoDeployment - [ Service-managed permissions] Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU).
      Returns:
      this
    • callAs

      @Stability(Stable) public CfnStackSetProps.Builder callAs(String callAs)
      Parameters:
      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. By default, SELF is specified. Use SELF 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

      Returns:
      this
    • capabilities

      @Stability(Stable) public CfnStackSetProps.Builder capabilities(List<String> capabilities)
      Parameters:
      capabilities - 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 .
      Returns:
      this
    • description

      @Stability(Stable) public CfnStackSetProps.Builder description(String description)
      Parameters:
      description - A description of the stack set. Minimum : 1

      Maximum : 1024

      Returns:
      this
    • executionRoleName

      @Stability(Stable) public CfnStackSetProps.Builder executionRoleName(String executionRoleName)
      Parameters:
      executionRoleName - 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+=,.@-]+

      Returns:
      this
    • managedExecution

      @Stability(Stable) public CfnStackSetProps.Builder managedExecution(Object managedExecution)
      Parameters:
      managedExecution - 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.

      Returns:
      this
    • operationPreferences

      @Stability(Stable) public CfnStackSetProps.Builder operationPreferences(IResolvable operationPreferences)
      Parameters:
      operationPreferences - The user-specified preferences for how AWS CloudFormation performs a stack set operation.
      Returns:
      this
    • operationPreferences

      @Stability(Stable) public CfnStackSetProps.Builder operationPreferences(CfnStackSet.OperationPreferencesProperty operationPreferences)
      Parameters:
      operationPreferences - The user-specified preferences for how AWS CloudFormation performs a stack set operation.
      Returns:
      this
    • parameters

      @Stability(Stable) public CfnStackSetProps.Builder parameters(IResolvable parameters)
      Parameters:
      parameters - The input parameters for the stack set template.
      Returns:
      this
    • parameters

      @Stability(Stable) public CfnStackSetProps.Builder parameters(List<? extends Object> parameters)
      Parameters:
      parameters - The input parameters for the stack set template.
      Returns:
      this
    • stackInstancesGroup

      @Stability(Stable) public CfnStackSetProps.Builder stackInstancesGroup(IResolvable stackInstancesGroup)
      Parameters:
      stackInstancesGroup - A group of stack instances with parameters in some specific accounts and Regions.
      Returns:
      this
    • stackInstancesGroup

      @Stability(Stable) public CfnStackSetProps.Builder stackInstancesGroup(List<? extends Object> stackInstancesGroup)
      Parameters:
      stackInstancesGroup - A group of stack instances with parameters in some specific accounts and Regions.
      Returns:
      this
    • tags

      @Stability(Stable) public CfnStackSetProps.Builder tags(List<? extends CfnTag> tags)
      Sets the value of CfnStackSetProps.getTags()
      Parameters:
      tags - Key-value pairs to associate with this stack. CloudFormation also propagates these tags to supported resources in the stack. You can specify a maximum number of 50 tags.

      If you don't specify this parameter, CloudFormation doesn't modify the stack's tags. If you specify an empty value, CloudFormation removes all associated tags.

      Returns:
      this
    • templateBody

      @Stability(Stable) public CfnStackSetProps.Builder templateBody(String templateBody)
      Parameters:
      templateBody - 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 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.
      Returns:
      this
    • templateUrl

      @Stability(Stable) public CfnStackSetProps.Builder templateUrl(String templateUrl)
      Parameters:
      templateUrl - Location of file containing the template body. The URL must point to a template that's located in an Amazon S3 bucket or a Systems Manager document. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

      Conditional: You must specify only one of the following parameters: TemplateBody , TemplateURL .

      Returns:
      this
    • build

      @Stability(Stable) public CfnStackSetProps build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnStackSetProps>
      Returns:
      a new instance of CfnStackSetProps
      Throws:
      NullPointerException - if any required attribute was not provided