Interface AwsCloudFormationStackProperties

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
AwsCloudFormationStackProperties.Jsii$Proxy

@Generated(value="jsii-pacmak/1.104.0 (build e79254c)", date="2024-11-06T23:25:18.346Z") @Stability(Stable) public interface AwsCloudFormationStackProperties extends software.amazon.jsii.JsiiSerializable
Artifact properties for CloudFormation stacks.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.cloud_assembly_schema.*;
 Object assumeRoleAdditionalOptions;
 AwsCloudFormationStackProperties awsCloudFormationStackProperties = AwsCloudFormationStackProperties.builder()
         .templateFile("templateFile")
         // the properties below are optional
         .assumeRoleAdditionalOptions(Map.of(
                 "assumeRoleAdditionalOptionsKey", assumeRoleAdditionalOptions))
         .assumeRoleArn("assumeRoleArn")
         .assumeRoleExternalId("assumeRoleExternalId")
         .bootstrapStackVersionSsmParameter("bootstrapStackVersionSsmParameter")
         .cloudFormationExecutionRoleArn("cloudFormationExecutionRoleArn")
         .lookupRole(BootstrapRole.builder()
                 .arn("arn")
                 // the properties below are optional
                 .assumeRoleAdditionalOptions(Map.of(
                         "assumeRoleAdditionalOptionsKey", assumeRoleAdditionalOptions))
                 .assumeRoleExternalId("assumeRoleExternalId")
                 .bootstrapStackVersionSsmParameter("bootstrapStackVersionSsmParameter")
                 .requiresBootstrapStackVersion(123)
                 .build())
         .notificationArns(List.of("notificationArns"))
         .parameters(Map.of(
                 "parametersKey", "parameters"))
         .requiresBootstrapStackVersion(123)
         .stackName("stackName")
         .stackTemplateAssetObjectUrl("stackTemplateAssetObjectUrl")
         .tags(Map.of(
                 "tagsKey", "tags"))
         .terminationProtection(false)
         .validateOnSynth(false)
         .build();
 
  • Method Details

    • getTemplateFile

      @Stability(Stable) @NotNull String getTemplateFile()
      A file relative to the assembly root which contains the CloudFormation template for this stack.
    • getAssumeRoleAdditionalOptions

      @Stability(Stable) @Nullable default Map<String,Object> getAssumeRoleAdditionalOptions()
      Additional options to pass to STS when assuming the role.

      • RoleArn should not be used. Use the dedicated assumeRoleArn property instead.
      • ExternalId should not be used. Use the dedicated assumeRoleExternalId instead.

      Default: - No additional options.

      See Also:
    • getAssumeRoleArn

      @Stability(Stable) @Nullable default String getAssumeRoleArn()
      The role that needs to be assumed to deploy the stack.

      Default: - No role is assumed (current credentials are used)

    • getAssumeRoleExternalId

      @Stability(Stable) @Nullable default String getAssumeRoleExternalId()
      External ID to use when assuming role for cloudformation deployments.

      Default: - No external ID

    • getBootstrapStackVersionSsmParameter

      @Stability(Stable) @Nullable default String getBootstrapStackVersionSsmParameter()
      SSM parameter where the bootstrap stack version number can be found.

      Only used if requiresBootstrapStackVersion is set.

      • If this value is not set, the bootstrap stack name must be known at deployment time so the stack version can be looked up from the stack outputs.
      • If this value is set, the bootstrap stack can have any name because we won't need to look it up.

      Default: - Bootstrap stack version number looked up

    • getCloudFormationExecutionRoleArn

      @Stability(Stable) @Nullable default String getCloudFormationExecutionRoleArn()
      The role that is passed to CloudFormation to execute the change set.

      Default: - No role is passed (currently assumed role/credentials are used)

    • getLookupRole

      @Stability(Stable) @Nullable default BootstrapRole getLookupRole()
      The role to use to look up values from the target AWS account.

      Default: - No role is assumed (current credentials are used)

    • getNotificationArns

      @Stability(Stable) @Nullable default List<String> getNotificationArns()
      SNS Notification ARNs that should receive CloudFormation Stack Events.

      Default: - No notification arns

    • getParameters

      @Stability(Stable) @Nullable default Map<String,String> getParameters()
      Values for CloudFormation stack parameters that should be passed when the stack is deployed.

      Default: - No parameters

    • getRequiresBootstrapStackVersion

      @Stability(Stable) @Nullable default Number getRequiresBootstrapStackVersion()
      Version of bootstrap stack required to deploy this stack.

      Default: - No bootstrap stack required

    • getStackName

      @Stability(Stable) @Nullable default String getStackName()
      The name to use for the CloudFormation stack.

      Default: - name derived from artifact ID

    • getStackTemplateAssetObjectUrl

      @Stability(Stable) @Nullable default String getStackTemplateAssetObjectUrl()
      If the stack template has already been included in the asset manifest, its asset URL.

      Default: - Not uploaded yet, upload just before deploying

    • getTags

      @Stability(Stable) @Nullable default Map<String,String> getTags()
      Values for CloudFormation stack tags that should be passed when the stack is deployed.

      Default: - No tags

    • getTerminationProtection

      @Stability(Stable) @Nullable default Boolean getTerminationProtection()
      Whether to enable termination protection for this stack.

      Default: false

    • getValidateOnSynth

      @Stability(Stable) @Nullable default Boolean getValidateOnSynth()
      Whether this stack should be validated by the CLI after synthesis.

      Default: - false

    • builder

      @Stability(Stable) static AwsCloudFormationStackProperties.Builder builder()
      Returns:
      a AwsCloudFormationStackProperties.Builder of AwsCloudFormationStackProperties