Class DefaultStackSynthesizer.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<DefaultStackSynthesizer>
- Enclosing class:
DefaultStackSynthesizer
DefaultStackSynthesizer
.-
Method Summary
Modifier and TypeMethodDescriptionbootstrapStackVersionSsmParameter
(String bootstrapStackVersionSsmParameter) Bootstrap stack version SSM parameter.bucketPrefix
(String bucketPrefix) bucketPrefix to use while storing S3 Assets.build()
cloudFormationExecutionRole
(String cloudFormationExecutionRole) The role CloudFormation will assume when deploying the Stack.create()
deployRoleAdditionalOptions
(Map<String, ? extends Object> deployRoleAdditionalOptions) Additional options to pass to STS when assuming the deploy role.deployRoleArn
(String deployRoleArn) The role to assume to initiate a deployment in this environment.deployRoleExternalId
(String deployRoleExternalId) External ID to use when assuming role for cloudformation deployments.dockerTagPrefix
(String dockerTagPrefix) A prefix to use while tagging and uploading Docker images to ECR.fileAssetPublishingExternalId
(String fileAssetPublishingExternalId) External ID to use when assuming role for file asset publishing.fileAssetPublishingRoleAdditionalOptions
(Map<String, ? extends Object> fileAssetPublishingRoleAdditionalOptions) Additional options to pass to STS when assuming the file asset publishing.fileAssetPublishingRoleArn
(String fileAssetPublishingRoleArn) The role to use to publish file assets to the S3 bucket in this environment.fileAssetsBucketName
(String fileAssetsBucketName) Name of the S3 bucket to hold file assets.generateBootstrapVersionRule
(Boolean generateBootstrapVersionRule) Whether to add a Rule to the stack template verifying the bootstrap stack version.imageAssetPublishingExternalId
(String imageAssetPublishingExternalId) External ID to use when assuming role for image asset publishing.imageAssetPublishingRoleAdditionalOptions
(Map<String, ? extends Object> imageAssetPublishingRoleAdditionalOptions) Additional options to pass to STS when assuming the image asset publishing.imageAssetPublishingRoleArn
(String imageAssetPublishingRoleArn) The role to use to publish image assets to the ECR repository in this environment.imageAssetsRepositoryName
(String imageAssetsRepositoryName) Name of the ECR repository to hold Docker Image assets.lookupRoleAdditionalOptions
(Map<String, ? extends Object> lookupRoleAdditionalOptions) Additional options to pass to STS when assuming the lookup role.lookupRoleArn
(String lookupRoleArn) The role to use to look up values from the target AWS account during synthesis.lookupRoleExternalId
(String lookupRoleExternalId) External ID to use when assuming lookup role.Qualifier to disambiguate multiple environments in the same account.useLookupRoleForStackOperations
(Boolean useLookupRoleForStackOperations) Use the bootstrapped lookup role for (read-only) stack operations.
-
Method Details
-
create
- Returns:
- a new instance of
DefaultStackSynthesizer.Builder
.
-
bootstrapStackVersionSsmParameter
@Stability(Stable) public DefaultStackSynthesizer.Builder bootstrapStackVersionSsmParameter(String bootstrapStackVersionSsmParameter) Bootstrap stack version SSM parameter.The placeholder
${Qualifier}
will be replaced with the value of qualifier.Default: DefaultStackSynthesizer.DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER
- Parameters:
bootstrapStackVersionSsmParameter
- Bootstrap stack version SSM parameter. This parameter is required.- Returns:
this
-
bucketPrefix
bucketPrefix to use while storing S3 Assets.Default: - DefaultStackSynthesizer.DEFAULT_FILE_ASSET_PREFIX
- Parameters:
bucketPrefix
- bucketPrefix to use while storing S3 Assets. This parameter is required.- Returns:
this
-
cloudFormationExecutionRole
@Stability(Stable) public DefaultStackSynthesizer.Builder cloudFormationExecutionRole(String cloudFormationExecutionRole) The role CloudFormation will assume when deploying the Stack.You must supply this if you have given a non-standard name to the execution role.
The placeholders
${Qualifier}
,${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
- Parameters:
cloudFormationExecutionRole
- The role CloudFormation will assume when deploying the Stack. This parameter is required.- Returns:
this
-
deployRoleAdditionalOptions
@Stability(Stable) public DefaultStackSynthesizer.Builder deployRoleAdditionalOptions(Map<String, ? extends Object> deployRoleAdditionalOptions) Additional options to pass to STS when assuming the deploy role.RoleArn
should not be used. Use the dedicateddeployRoleArn
property instead.ExternalId
should not be used. Use the dedicateddeployRoleExternalId
instead.TransitiveTagKeys
defaults to use all keys (if any) specified inTags
. E.g, all tags are transitive by default.
Default: - No additional options.
- Parameters:
deployRoleAdditionalOptions
- Additional options to pass to STS when assuming the deploy role. This parameter is required.- Returns:
this
- See Also:
-
deployRoleArn
The role to assume to initiate a deployment in this environment.You must supply this if you have given a non-standard name to the publishing role.
The placeholders
${Qualifier}
,${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
- Parameters:
deployRoleArn
- The role to assume to initiate a deployment in this environment. This parameter is required.- Returns:
this
-
deployRoleExternalId
@Stability(Stable) public DefaultStackSynthesizer.Builder deployRoleExternalId(String deployRoleExternalId) External ID to use when assuming role for cloudformation deployments.Default: - No external ID
- Parameters:
deployRoleExternalId
- External ID to use when assuming role for cloudformation deployments. This parameter is required.- Returns:
this
-
dockerTagPrefix
A prefix to use while tagging and uploading Docker images to ECR.This does not add any separators - the source hash will be appended to this string directly.
Default: - DefaultStackSynthesizer.DEFAULT_DOCKER_ASSET_PREFIX
- Parameters:
dockerTagPrefix
- A prefix to use while tagging and uploading Docker images to ECR. This parameter is required.- Returns:
this
-
fileAssetPublishingExternalId
@Stability(Stable) public DefaultStackSynthesizer.Builder fileAssetPublishingExternalId(String fileAssetPublishingExternalId) External ID to use when assuming role for file asset publishing.Default: - No external ID
- Parameters:
fileAssetPublishingExternalId
- External ID to use when assuming role for file asset publishing. This parameter is required.- Returns:
this
-
fileAssetPublishingRoleAdditionalOptions
@Stability(Stable) public DefaultStackSynthesizer.Builder fileAssetPublishingRoleAdditionalOptions(Map<String, ? extends Object> fileAssetPublishingRoleAdditionalOptions) Additional options to pass to STS when assuming the file asset publishing.RoleArn
should not be used. Use the dedicatedfileAssetPublishingRoleArn
property instead.ExternalId
should not be used. Use the dedicatedfileAssetPublishingExternalId
instead.TransitiveTagKeys
defaults to use all keys (if any) specified inTags
. E.g, all tags are transitive by default.
Default: - No additional options.
- Parameters:
fileAssetPublishingRoleAdditionalOptions
- Additional options to pass to STS when assuming the file asset publishing. This parameter is required.- Returns:
this
- See Also:
-
fileAssetPublishingRoleArn
@Stability(Stable) public DefaultStackSynthesizer.Builder fileAssetPublishingRoleArn(String fileAssetPublishingRoleArn) The role to use to publish file assets to the S3 bucket in this environment.You must supply this if you have given a non-standard name to the publishing role.
The placeholders
${Qualifier}
,${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
- Parameters:
fileAssetPublishingRoleArn
- The role to use to publish file assets to the S3 bucket in this environment. This parameter is required.- Returns:
this
-
fileAssetsBucketName
@Stability(Stable) public DefaultStackSynthesizer.Builder fileAssetsBucketName(String fileAssetsBucketName) Name of the S3 bucket to hold file assets.You must supply this if you have given a non-standard name to the staging bucket.
The placeholders
${Qualifier}
,${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
- Parameters:
fileAssetsBucketName
- Name of the S3 bucket to hold file assets. This parameter is required.- Returns:
this
-
generateBootstrapVersionRule
@Stability(Stable) public DefaultStackSynthesizer.Builder generateBootstrapVersionRule(Boolean generateBootstrapVersionRule) Whether to add a Rule to the stack template verifying the bootstrap stack version.This generally should be left set to
true
, unless you explicitly want to be able to deploy to an unbootstrapped environment.Default: true
- Parameters:
generateBootstrapVersionRule
- Whether to add a Rule to the stack template verifying the bootstrap stack version. This parameter is required.- Returns:
this
-
imageAssetPublishingExternalId
@Stability(Stable) public DefaultStackSynthesizer.Builder imageAssetPublishingExternalId(String imageAssetPublishingExternalId) External ID to use when assuming role for image asset publishing.Default: - No external ID
- Parameters:
imageAssetPublishingExternalId
- External ID to use when assuming role for image asset publishing. This parameter is required.- Returns:
this
-
imageAssetPublishingRoleAdditionalOptions
@Stability(Stable) public DefaultStackSynthesizer.Builder imageAssetPublishingRoleAdditionalOptions(Map<String, ? extends Object> imageAssetPublishingRoleAdditionalOptions) Additional options to pass to STS when assuming the image asset publishing.RoleArn
should not be used. Use the dedicatedimageAssetPublishingRoleArn
property instead.ExternalId
should not be used. Use the dedicatedimageAssetPublishingExternalId
instead.TransitiveTagKeys
defaults to use all keys (if any) specified inTags
. E.g, all tags are transitive by default.
Default: - No additional options.
- Parameters:
imageAssetPublishingRoleAdditionalOptions
- Additional options to pass to STS when assuming the image asset publishing. This parameter is required.- Returns:
this
- See Also:
-
imageAssetPublishingRoleArn
@Stability(Stable) public DefaultStackSynthesizer.Builder imageAssetPublishingRoleArn(String imageAssetPublishingRoleArn) The role to use to publish image assets to the ECR repository in this environment.You must supply this if you have given a non-standard name to the publishing role.
The placeholders
${Qualifier}
,${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
- Parameters:
imageAssetPublishingRoleArn
- The role to use to publish image assets to the ECR repository in this environment. This parameter is required.- Returns:
this
-
imageAssetsRepositoryName
@Stability(Stable) public DefaultStackSynthesizer.Builder imageAssetsRepositoryName(String imageAssetsRepositoryName) Name of the ECR repository to hold Docker Image assets.You must supply this if you have given a non-standard name to the ECR repository.
The placeholders
${Qualifier}
,${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
- Parameters:
imageAssetsRepositoryName
- Name of the ECR repository to hold Docker Image assets. This parameter is required.- Returns:
this
-
lookupRoleAdditionalOptions
@Stability(Stable) public DefaultStackSynthesizer.Builder lookupRoleAdditionalOptions(Map<String, ? extends Object> lookupRoleAdditionalOptions) Additional options to pass to STS when assuming the lookup role.RoleArn
should not be used. Use the dedicatedlookupRoleArn
property instead.ExternalId
should not be used. Use the dedicatedlookupRoleExternalId
instead.TransitiveTagKeys
defaults to use all keys (if any) specified inTags
. E.g, all tags are transitive by default.
Default: - No additional options.
- Parameters:
lookupRoleAdditionalOptions
- Additional options to pass to STS when assuming the lookup role. This parameter is required.- Returns:
this
- See Also:
-
lookupRoleArn
The role to use to look up values from the target AWS account during synthesis.Default: - None
- Parameters:
lookupRoleArn
- The role to use to look up values from the target AWS account during synthesis. This parameter is required.- Returns:
this
-
lookupRoleExternalId
@Stability(Stable) public DefaultStackSynthesizer.Builder lookupRoleExternalId(String lookupRoleExternalId) External ID to use when assuming lookup role.Default: - No external ID
- Parameters:
lookupRoleExternalId
- External ID to use when assuming lookup role. This parameter is required.- Returns:
this
-
qualifier
Qualifier to disambiguate multiple environments in the same account.You can use this and leave the other naming properties empty if you have deployed the bootstrap environment with standard names but only different qualifiers.
Default: - Value of context key '@aws-cdk/core:bootstrapQualifier' if set, otherwise `DefaultStackSynthesizer.DEFAULT_QUALIFIER`
- Parameters:
qualifier
- Qualifier to disambiguate multiple environments in the same account. This parameter is required.- Returns:
this
-
useLookupRoleForStackOperations
@Stability(Stable) public DefaultStackSynthesizer.Builder useLookupRoleForStackOperations(Boolean useLookupRoleForStackOperations) Use the bootstrapped lookup role for (read-only) stack operations.Use the lookup role when performing a
cdk diff
. If set tofalse
, thedeploy role
credentials will be used to perform acdk diff
.Requires bootstrap stack version 8.
Default: true
- Parameters:
useLookupRoleForStackOperations
- Use the bootstrapped lookup role for (read-only) stack operations. This parameter is required.- Returns:
this
-
build
- Specified by:
build
in interfacesoftware.amazon.jsii.Builder<DefaultStackSynthesizer>
- Returns:
- a newly built instance of
DefaultStackSynthesizer
.
-