Skip to content
v2.275.0

AwsCloudFormationStackProperties Struct ​

Artifact properties for CloudFormation stacks.

Example ​

ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { cloud_assembly_schema } from 'aws-cdk-lib';

declare const assumeRoleAdditionalOptions: any;
const awsCloudFormationStackProperties: cloud_assembly_schema.AwsCloudFormationStackProperties = {
  templateFile: 'templateFile',

  // the properties below are optional
  assumeRoleAdditionalOptions: {
    assumeRoleAdditionalOptionsKey: assumeRoleAdditionalOptions,
  },
  assumeRoleArn: 'assumeRoleArn',
  assumeRoleExternalId: 'assumeRoleExternalId',
  bootstrapStackVersionSsmParameter: 'bootstrapStackVersionSsmParameter',
  cloudFormationExecutionRoleArn: 'cloudFormationExecutionRoleArn',
  lookupRole: {
    arn: 'arn',

    // the properties below are optional
    assumeRoleAdditionalOptions: {
      assumeRoleAdditionalOptionsKey: assumeRoleAdditionalOptions,
    },
    assumeRoleExternalId: 'assumeRoleExternalId',
    bootstrapStackVersionSsmParameter: 'bootstrapStackVersionSsmParameter',
    requiresBootstrapStackVersion: 123,
  },
  notificationArns: ['notificationArns'],
  parameters: {
    parametersKey: 'parameters',
  },
  requiresBootstrapStackVersion: 123,
  stackName: 'stackName',
  stackTemplateAssetObjectUrl: 'stackTemplateAssetObjectUrl',
  tags: {
    tagsKey: 'tags',
  },
  terminationProtection: false,
  validateOnSynth: false,
};

Properties ​

assumeRoleAdditionalOptionsoptional{ [key: string]: any }assume_role_additional_optionsoptionaltyping.Mapping[str, Any]assumeRoleAdditionalOptionsoptionalMap<String, Object>AssumeRoleAdditionalOptionsoptionalIDictionary<string, object>AssumeRoleAdditionalOptionsoptional*map[string]interface{}#
Additional options to pass to STS when assuming the role.

Default: No additional options.

  • RoleArn should not be used. Use the dedicated assumeRoleArn property instead.
  • ExternalId should not be used. Use the dedicated assumeRoleExternalId instead.
assumeRoleArnoptionalstringassume_role_arnoptionalstrassumeRoleArnoptionalStringAssumeRoleArnoptionalstringAssumeRoleArnoptional*string#
The role that needs to be assumed to deploy the stack.

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

assumeRoleExternalIdoptionalstringassume_role_external_idoptionalstrassumeRoleExternalIdoptionalStringAssumeRoleExternalIdoptionalstringAssumeRoleExternalIdoptional*string#
External ID to use when assuming role for cloudformation deployments.

Default: No external ID

bootstrapStackVersionSsmParameteroptionalstringbootstrap_stack_version_ssm_parameteroptionalstrbootstrapStackVersionSsmParameteroptionalStringBootstrapStackVersionSsmParameteroptionalstringBootstrapStackVersionSsmParameteroptional*string#
SSM parameter where the bootstrap stack version number can be found.

Default: Bootstrap stack version number looked up

notes

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.
cloudFormationExecutionRoleArnoptionalstringcloud_formation_execution_role_arnoptionalstrcloudFormationExecutionRoleArnoptionalStringCloudFormationExecutionRoleArnoptionalstringCloudFormationExecutionRoleArnoptional*string#
The role that is passed to CloudFormation to execute the change set.

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

lookupRoleoptionalBootstrapRolelookup_roleoptionalBootstrapRolelookupRoleoptionalBootstrapRoleLookupRoleoptionalBootstrapRoleLookupRoleoptionalBootstrapRole#
The role to use to look up values from the target AWS account.

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

notificationArnsoptionalstring[]notification_arnsoptionaltyping.List[str]notificationArnsoptionalList<String>NotificationArnsoptionalstring[]NotificationArnsoptional*[]*string#
SNS Notification ARNs that should receive CloudFormation Stack Events.

Default: No notification arns

parametersoptional{ [key: string]: string }parametersoptionaltyping.Mapping[str, str]parametersoptionalMap<String, String>ParametersoptionalIDictionary<string, string>Parametersoptional*map[string]*string#
Values for CloudFormation stack parameters that should be passed when the stack is deployed.

Default: No parameters

requiresBootstrapStackVersionoptionalnumberrequires_bootstrap_stack_versionoptionalint | floatrequiresBootstrapStackVersionoptionalNumberRequiresBootstrapStackVersionoptionaldoubleRequiresBootstrapStackVersionoptional*float64#
Version of bootstrap stack required to deploy this stack.

Default: No bootstrap stack required

stackNameoptionalstringstack_nameoptionalstrstackNameoptionalStringStackNameoptionalstringStackNameoptional*string#
The name to use for the CloudFormation stack.

Default: name derived from artifact ID

stackTemplateAssetObjectUrloptionalstringstack_template_asset_object_urloptionalstrstackTemplateAssetObjectUrloptionalStringStackTemplateAssetObjectUrloptionalstringStackTemplateAssetObjectUrloptional*string#
If the stack template has already been included in the asset manifest, its asset URL.

Default: Not uploaded yet, upload just before deploying

tagsoptional{ [key: string]: string }tagsoptionaltyping.Mapping[str, str]tagsoptionalMap<String, String>TagsoptionalIDictionary<string, string>Tagsoptional*map[string]*string#
Values for CloudFormation stack tags that should be passed when the stack is deployed.

Default: No tags

notes

N.B.: Tags are also written to stack metadata, under the path of the Stack construct. Only in CDK CLI v1 are those tags found in metadata used for actual deployments; in all stable versions of CDK only the stack tags directly found in the tags property of AwsCloudFormationStack artifact (i.e., this property) are used.

templateFilestringtemplate_filestrtemplateFileStringTemplateFilestringTemplateFile*stringrequired#
A file relative to the assembly root which contains the CloudFormation template for this stack.
terminationProtectionoptionalbooleantermination_protectionoptionalboolterminationProtectionoptionalBooleanTerminationProtectionoptionalboolTerminationProtectionoptional*bool= false#
Whether to enable termination protection for this stack.
validateOnSynthoptionalbooleanvalidate_on_synthoptionalboolvalidateOnSynthoptionalBooleanValidateOnSynthoptionalboolValidateOnSynthoptional*bool= false#
Whether this stack should be validated by the CLI after synthesis.