Table of Contents

Class DefaultStackSynthesizerProps

Namespace
Amazon.CDK
Assembly
Amazon.CDK.dll

Configuration properties for DefaultStackSynthesizer.

public class DefaultStackSynthesizerProps : IDefaultStackSynthesizerProps
Inheritance
DefaultStackSynthesizerProps
Implements
Inherited Members

Examples

new MyStack(app, "MyStack", new StackProps {
                Synthesizer = new DefaultStackSynthesizer(new DefaultStackSynthesizerProps {
                    FileAssetsBucketName = "my-orgs-asset-bucket"
                })
            });

Remarks

ExampleMetadata: infused

Constructors

DefaultStackSynthesizerProps()

public DefaultStackSynthesizerProps()

Properties

BootstrapStackVersionSsmParameter

Bootstrap stack version SSM parameter.

public string? BootstrapStackVersionSsmParameter { get; set; }

Property Value

string

Remarks

The placeholder ${Qualifier} will be replaced with the value of qualifier.

Default: DefaultStackSynthesizer.DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER

BucketPrefix

bucketPrefix to use while storing S3 Assets.

public string? BucketPrefix { get; set; }

Property Value

string

Remarks

Default: - DefaultStackSynthesizer.DEFAULT_FILE_ASSET_PREFIX

CloudFormationExecutionRole

The role CloudFormation will assume when deploying the Stack.

public string? CloudFormationExecutionRole { get; set; }

Property Value

string

Remarks

You must supply this if you have given a non-standard name to the execution role.

The placeholders \({Qualifier}</code>, <code>\){AWS::AccountId} and ${AWS::Region} will be replaced with the values of qualifier and the stack's account and region, respectively.

Default: DefaultStackSynthesizer.DEFAULT_CLOUDFORMATION_ROLE_ARN

DeployRoleArn

The role to assume to initiate a deployment in this environment.

public string? DeployRoleArn { get; set; }

Property Value

string

Remarks

You must supply this if you have given a non-standard name to the publishing role.

The placeholders \({Qualifier}</code>, <code>\){AWS::AccountId} and ${AWS::Region} will be replaced with the values of qualifier and the stack's account and region, respectively.

Default: DefaultStackSynthesizer.DEFAULT_DEPLOY_ROLE_ARN

DeployRoleExternalId

External ID to use when assuming role for cloudformation deployments.

public string? DeployRoleExternalId { get; set; }

Property Value

string

Remarks

Default: - No external ID

DockerTagPrefix

A prefix to use while tagging and uploading Docker images to ECR.

public string? DockerTagPrefix { get; set; }

Property Value

string

Remarks

This does not add any separators - the source hash will be appended to this string directly.

Default: - DefaultStackSynthesizer.DEFAULT_DOCKER_ASSET_PREFIX

FileAssetKeyArnExportName

(deprecated) Name of the CloudFormation Export with the asset key name.

[Obsolete("This property is not used anymore")]
public string? FileAssetKeyArnExportName { get; set; }

Property Value

string

Remarks

You must supply this if you have given a non-standard name to the KMS key export

The placeholders \({Qualifier}</code>, <code>\){AWS::AccountId} and ${AWS::Region} will be replaced with the values of qualifier and the stack's account and region, respectively.

Default: DefaultStackSynthesizer.DEFAULT_FILE_ASSET_KEY_ARN_EXPORT_NAME

Stability: Deprecated

FileAssetPublishingExternalId

External ID to use when assuming role for file asset publishing.

public string? FileAssetPublishingExternalId { get; set; }

Property Value

string

Remarks

Default: - No external ID

FileAssetPublishingRoleArn

The role to use to publish file assets to the S3 bucket in this environment.

public string? FileAssetPublishingRoleArn { get; set; }

Property Value

string

Remarks

You must supply this if you have given a non-standard name to the publishing role.

The placeholders \({Qualifier}</code>, <code>\){AWS::AccountId} and ${AWS::Region} will be replaced with the values of qualifier and the stack's account and region, respectively.

Default: DefaultStackSynthesizer.DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN

FileAssetsBucketName

Name of the S3 bucket to hold file assets.

public string? FileAssetsBucketName { get; set; }

Property Value

string

Remarks

You must supply this if you have given a non-standard name to the staging bucket.

The placeholders \({Qualifier}</code>, <code>\){AWS::AccountId} and ${AWS::Region} will be replaced with the values of qualifier and the stack's account and region, respectively.

Default: DefaultStackSynthesizer.DEFAULT_FILE_ASSETS_BUCKET_NAME

GenerateBootstrapVersionRule

Whether to add a Rule to the stack template verifying the bootstrap stack version.

public bool? GenerateBootstrapVersionRule { get; set; }

Property Value

bool?

Remarks

This generally should be left set to true, unless you explicitly want to be able to deploy to an unbootstrapped environment.

Default: true

ImageAssetPublishingExternalId

External ID to use when assuming role for image asset publishing.

public string? ImageAssetPublishingExternalId { get; set; }

Property Value

string

Remarks

Default: - No external ID

ImageAssetPublishingRoleArn

The role to use to publish image assets to the ECR repository in this environment.

public string? ImageAssetPublishingRoleArn { get; set; }

Property Value

string

Remarks

You must supply this if you have given a non-standard name to the publishing role.

The placeholders \({Qualifier}</code>, <code>\){AWS::AccountId} and ${AWS::Region} will be replaced with the values of qualifier and the stack's account and region, respectively.

Default: DefaultStackSynthesizer.DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN

ImageAssetsRepositoryName

Name of the ECR repository to hold Docker Image assets.

public string? ImageAssetsRepositoryName { get; set; }

Property Value

string

Remarks

You must supply this if you have given a non-standard name to the ECR repository.

The placeholders \({Qualifier}</code>, <code>\){AWS::AccountId} and ${AWS::Region} will be replaced with the values of qualifier and the stack's account and region, respectively.

Default: DefaultStackSynthesizer.DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME

LookupRoleArn

The role to use to look up values from the target AWS account during synthesis.

public string? LookupRoleArn { get; set; }

Property Value

string

Remarks

Default: - None

LookupRoleExternalId

External ID to use when assuming lookup role.

public string? LookupRoleExternalId { get; set; }

Property Value

string

Remarks

Default: - No external ID

Qualifier

Qualifier to disambiguate multiple environments in the same account.

public string? Qualifier { get; set; }

Property Value

string

Remarks

You can use this and leave the other naming properties empty if you have deployed the bootstrap environment with standard names but only differnet qualifiers.

Default: - Value of context key '

Aws-cdk: /core:bootstrapQualifier' if set, otherwise DefaultStackSynthesizer.DEFAULT_QUALIFIER

UseLookupRoleForStackOperations

Use the bootstrapped lookup role for (read-only) stack operations.

public bool? UseLookupRoleForStackOperations { get; set; }

Property Value

bool?

Remarks

Use the lookup role when performing a cdk diff. If set to false, the deploy role credentials will be used to perform a cdk diff.

Requires bootstrap stack version 8.

Default: true