class DefaultStackSynthesizer
| Language | Type name |
|---|---|
.NET | Amazon.CDK.DefaultStackSynthesizer |
Java | software.amazon.awscdk.core.DefaultStackSynthesizer |
Python | aws_cdk.core.DefaultStackSynthesizer |
TypeScript (source) | @aws-cdk/core » DefaultStackSynthesizer |
Implements
IStack
Extends
Stack
Uses conventionally named roles and asset storage locations.
This synthesizer:
- Supports cross-account deployments (the CLI can have credentials to one account, and you can still deploy to another account by assuming roles with well-known names in the other account).
- Supports the CDK Pipelines library.
Requires the environment to have been bootstrapped with Bootstrap Stack V2 (also known as "modern bootstrap stack"). The synthesizer adds a version check to the template, to make sure the bootstrap stack is recent enough to support all features expected by this synthesizer.
Example
new MyStack(app, 'MyStack', {
synthesizer: new DefaultStackSynthesizer({
fileAssetsBucketName: 'my-orgs-asset-bucket',
}),
});
Initializer
new DefaultStackSynthesizer(props?: DefaultStackSynthesizerProps)
Parameters
Properties
| Name | Type | Description |
|---|---|---|
| cloud | string | Returns the ARN of the CFN execution Role. |
| deploy | string | Returns the ARN of the deploy Role. |
| stack? | Stack | |
| static DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER | string | Default bootstrap stack version SSM parameter. |
| static DEFAULT_CLOUDFORMATION_ROLE_ARN | string | Default CloudFormation role ARN. |
| static DEFAULT_DEPLOY_ROLE_ARN | string | Default deploy role ARN. |
| static DEFAULT_DOCKER_ASSET_PREFIX | string | Default Docker asset prefix. |
| static DEFAULT_FILE_ASSETS_BUCKET_NAME | string | Default file assets bucket name. |
| static DEFAULT_FILE_ASSET_KEY_ARN_EXPORT_NAME | string | Name of the CloudFormation Export with the asset key name. |
| static DEFAULT_FILE_ASSET_PREFIX | string | Default file asset prefix. |
| static DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN | string | Default asset publishing role ARN for file (S3) assets. |
| static DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME | string | Default image assets repository name. |
| static DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN | string | Default asset publishing role ARN for image (ECR) assets. |
| static DEFAULT_LOOKUP_ROLE_ARN | string | Default lookup role ARN for missing values. |
| static DEFAULT_QUALIFIER | string | Default ARN qualifier. |
cloudFormationExecutionRoleArn
Type:
string
Returns the ARN of the CFN execution Role.
deployRoleArn
Type:
string
Returns the ARN of the deploy Role.
stack?
Type:
Stack
(optional)
static DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER
Type:
string
Default bootstrap stack version SSM parameter.
static DEFAULT_CLOUDFORMATION_ROLE_ARN
Type:
string
Default CloudFormation role ARN.
static DEFAULT_DEPLOY_ROLE_ARN
Type:
string
Default deploy role ARN.
static DEFAULT_DOCKER_ASSET_PREFIX
Type:
string
Default Docker asset prefix.
static DEFAULT_FILE_ASSETS_BUCKET_NAME
Type:
string
Default file assets bucket name.
static DEFAULT_FILE_ASSET_KEY_ARN_EXPORT_NAME
Type:
string
Name of the CloudFormation Export with the asset key name.
static DEFAULT_FILE_ASSET_PREFIX
Type:
string
Default file asset prefix.
static DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN
Type:
string
Default asset publishing role ARN for file (S3) assets.
static DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME
Type:
string
Default image assets repository name.
static DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN
Type:
string
Default asset publishing role ARN for image (ECR) assets.
static DEFAULT_LOOKUP_ROLE_ARN
Type:
string
Default lookup role ARN for missing values.
static DEFAULT_QUALIFIER
Type:
string
Default ARN qualifier.
Methods
| Name | Description |
|---|---|
| add | Register a Docker Image Asset. |
| add | Register a File Asset. |
| bind(stack) | Bind to the stack this environment is going to be used on. |
| synthesize(session) | Synthesize the associated stack to the session. |
| protected synthesize | Have the stack write out its template. |
addDockerImageAsset(asset)
public addDockerImageAsset(asset: DockerImageAssetSource): DockerImageAssetLocation
Parameters
- asset
DockerImage Asset Source
Returns
Register a Docker Image Asset.
Returns the parameters that can be used to refer to the asset inside the template.
addFileAsset(asset)
public addFileAsset(asset: FileAssetSource): FileAssetLocation
Parameters
- asset
FileAsset Source
Returns
Register a File Asset.
Returns the parameters that can be used to refer to the asset inside the template.
bind(stack)
public bind(stack: Stack): void
Parameters
- stack
Stack
Bind to the stack this environment is going to be used on.
Must be called before any of the other methods are called.
synthesize(session)
public synthesize(session: ISynthesisSession): void
Parameters
- session
ISynthesisSession
Synthesize the associated stack to the session.
protected synthesizeStackTemplate(stack, session)
protected synthesizeStackTemplate(stack: Stack, session: ISynthesisSession): void
Parameters
- stack
Stack - session
ISynthesisSession
Have the stack write out its template.

.NET
Java
Python
TypeScript (