Class: AWSCDK::DefaultStackSynthesizer
- Inherits:
-
StackSynthesizer
- Object
- StackSynthesizer
- AWSCDK::DefaultStackSynthesizer
- Includes:
- IBoundStackSynthesizer, IReusableStackSynthesizer
- Defined in:
- default_stack_synthesizer.rb
Overview
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.
Direct Known Subclasses
Class Method Summary collapse
-
.DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER ⇒ String
Default bootstrap stack version SSM parameter.
-
.DEFAULT_CLOUDFORMATION_ROLE_ARN ⇒ String
Default CloudFormation role ARN.
-
.DEFAULT_DEPLOY_ROLE_ARN ⇒ String
Default deploy role ARN.
-
.DEFAULT_DOCKER_ASSET_PREFIX ⇒ String
Default Docker asset prefix.
-
.DEFAULT_FILE_ASSET_KEY_ARN_EXPORT_NAME ⇒ String
Name of the CloudFormation Export with the asset key name.
-
.DEFAULT_FILE_ASSET_PREFIX ⇒ String
Default file asset prefix.
-
.DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN ⇒ String
Default asset publishing role ARN for file (S3) assets.
-
.DEFAULT_FILE_ASSETS_BUCKET_NAME ⇒ String
Default file assets bucket name.
-
.DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN ⇒ String
Default asset publishing role ARN for image (ECR) assets.
-
.DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME ⇒ String
Default image assets repository name.
-
.DEFAULT_LOOKUP_ROLE_ARN ⇒ String
Default lookup role ARN for missing values.
-
.DEFAULT_QUALIFIER ⇒ String
Default ARN qualifier.
- .jsii_overridable_methods ⇒ Object
Instance Method Summary collapse
-
#add_bootstrap_version_rule(required_version, bootstrap_stack_version_ssm_parameter) ⇒ void
Add a CfnRule to the bound stack that checks whether an SSM parameter exceeds a given version.
-
#add_docker_image_asset(asset) ⇒ AWSCDK::DockerImageAssetLocation
Register a Docker Image Asset.
-
#add_file_asset(asset) ⇒ AWSCDK::FileAssetLocation
Register a File Asset.
-
#bind(stack) ⇒ void
Bind to the stack this environment is going to be used on.
-
#bootstrap_qualifier ⇒ String?
The qualifier used to bootstrap this stack.
-
#bound_stack ⇒ AWSCDK::Stack
Retrieve the bound stack.
-
#cloud_formation_execution_role ⇒ String?
The role that is passed to CloudFormation to execute the change set.
-
#cloud_formation_execution_role_arn ⇒ String
Returns the ARN of the CFN execution Role.
-
#cloud_formation_location_from_docker_image_asset(dest) ⇒ AWSCDK::DockerImageAssetLocation
Turn a docker asset location into a CloudFormation representation of that location.
-
#cloud_formation_location_from_file_asset(location) ⇒ AWSCDK::FileAssetLocation
Turn a file asset location into a CloudFormation representation of that location.
-
#deploy_role_arn ⇒ String
Returns the ARN of the deploy Role.
-
#emit_artifact(session, options = nil) ⇒ void
Write the CloudFormation stack artifact to the session.
-
#emit_stack_artifact(stack, session, options = nil) ⇒ void
deprecated
Deprecated.
Use
emitArtifactinstead -
#initialize(props = nil) ⇒ DefaultStackSynthesizer
constructor
A new instance of DefaultStackSynthesizer.
-
#lookup_role ⇒ String?
The role used to lookup for this stack.
-
#reusable_bind(stack) ⇒ AWSCDK::IBoundStackSynthesizer
Produce a bound Stack Synthesizer for the given stack.
-
#stack ⇒ AWSCDK::Stack?
deprecated
Deprecated.
Use
boundStackinstead. -
#synthesize(session) ⇒ void
Synthesize the associated stack to the session.
-
#synthesize_stack_template(stack, session) ⇒ void
Synthesize the stack template to the given session, passing the configured lookup role ARN.
-
#synthesize_template(session, lookup_role_arn = nil, lookup_role_external_id = nil, lookup_role_additional_options = nil) ⇒ AWSCDK::FileAssetSource
Write the stack template to the given session.
Constructor Details
#initialize(props = nil) ⇒ DefaultStackSynthesizer
Returns a new instance of DefaultStackSynthesizer.
23 24 25 26 27 |
# File 'default_stack_synthesizer.rb', line 23 def initialize(props = nil) props = props.is_a?(Hash) ? ::AWSCDK::DefaultStackSynthesizerProps.new(**props.transform_keys(&:to_sym)) : props Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EZWZhdWx0U3RhY2tTeW50aGVzaXplclByb3BzIn0=")), "props") unless props.nil? Jsii::Object.instance_method(:initialize).bind(self).call(props) end |
Class Method Details
.DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER ⇒ String
Default bootstrap stack version SSM parameter.
86 87 88 |
# File 'default_stack_synthesizer.rb', line 86 def self.DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER() Jsii::Kernel.instance.get_static("aws-cdk-lib.DefaultStackSynthesizer", "DEFAULT_BOOTSTRAP_STACK_VERSION_SSM_PARAMETER") end |
.DEFAULT_CLOUDFORMATION_ROLE_ARN ⇒ String
Default CloudFormation role ARN.
93 94 95 |
# File 'default_stack_synthesizer.rb', line 93 def self.DEFAULT_CLOUDFORMATION_ROLE_ARN() Jsii::Kernel.instance.get_static("aws-cdk-lib.DefaultStackSynthesizer", "DEFAULT_CLOUDFORMATION_ROLE_ARN") end |
.DEFAULT_DEPLOY_ROLE_ARN ⇒ String
Default deploy role ARN.
100 101 102 |
# File 'default_stack_synthesizer.rb', line 100 def self.DEFAULT_DEPLOY_ROLE_ARN() Jsii::Kernel.instance.get_static("aws-cdk-lib.DefaultStackSynthesizer", "DEFAULT_DEPLOY_ROLE_ARN") end |
.DEFAULT_DOCKER_ASSET_PREFIX ⇒ String
Default Docker asset prefix.
107 108 109 |
# File 'default_stack_synthesizer.rb', line 107 def self.DEFAULT_DOCKER_ASSET_PREFIX() Jsii::Kernel.instance.get_static("aws-cdk-lib.DefaultStackSynthesizer", "DEFAULT_DOCKER_ASSET_PREFIX") end |
.DEFAULT_FILE_ASSET_KEY_ARN_EXPORT_NAME ⇒ String
Name of the CloudFormation Export with the asset key name.
114 115 116 |
# File 'default_stack_synthesizer.rb', line 114 def self.DEFAULT_FILE_ASSET_KEY_ARN_EXPORT_NAME() Jsii::Kernel.instance.get_static("aws-cdk-lib.DefaultStackSynthesizer", "DEFAULT_FILE_ASSET_KEY_ARN_EXPORT_NAME") end |
.DEFAULT_FILE_ASSET_PREFIX ⇒ String
Default file asset prefix.
121 122 123 |
# File 'default_stack_synthesizer.rb', line 121 def self.DEFAULT_FILE_ASSET_PREFIX() Jsii::Kernel.instance.get_static("aws-cdk-lib.DefaultStackSynthesizer", "DEFAULT_FILE_ASSET_PREFIX") end |
.DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN ⇒ String
Default asset publishing role ARN for file (S3) assets.
128 129 130 |
# File 'default_stack_synthesizer.rb', line 128 def self.DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN() Jsii::Kernel.instance.get_static("aws-cdk-lib.DefaultStackSynthesizer", "DEFAULT_FILE_ASSET_PUBLISHING_ROLE_ARN") end |
.DEFAULT_FILE_ASSETS_BUCKET_NAME ⇒ String
Default file assets bucket name.
135 136 137 |
# File 'default_stack_synthesizer.rb', line 135 def self.DEFAULT_FILE_ASSETS_BUCKET_NAME() Jsii::Kernel.instance.get_static("aws-cdk-lib.DefaultStackSynthesizer", "DEFAULT_FILE_ASSETS_BUCKET_NAME") end |
.DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN ⇒ String
Default asset publishing role ARN for image (ECR) assets.
142 143 144 |
# File 'default_stack_synthesizer.rb', line 142 def self.DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN() Jsii::Kernel.instance.get_static("aws-cdk-lib.DefaultStackSynthesizer", "DEFAULT_IMAGE_ASSET_PUBLISHING_ROLE_ARN") end |
.DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME ⇒ String
Default image assets repository name.
149 150 151 |
# File 'default_stack_synthesizer.rb', line 149 def self.DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME() Jsii::Kernel.instance.get_static("aws-cdk-lib.DefaultStackSynthesizer", "DEFAULT_IMAGE_ASSETS_REPOSITORY_NAME") end |
.DEFAULT_LOOKUP_ROLE_ARN ⇒ String
Default lookup role ARN for missing values.
156 157 158 |
# File 'default_stack_synthesizer.rb', line 156 def self.DEFAULT_LOOKUP_ROLE_ARN() Jsii::Kernel.instance.get_static("aws-cdk-lib.DefaultStackSynthesizer", "DEFAULT_LOOKUP_ROLE_ARN") end |
.DEFAULT_QUALIFIER ⇒ String
Default ARN qualifier.
163 164 165 |
# File 'default_stack_synthesizer.rb', line 163 def self.DEFAULT_QUALIFIER() Jsii::Kernel.instance.get_static("aws-cdk-lib.DefaultStackSynthesizer", "DEFAULT_QUALIFIER") end |
.jsii_overridable_methods ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'default_stack_synthesizer.rb', line 29 def self.jsii_overridable_methods { :bound_stack => { kind: :property, name: "boundStack", is_optional: false }, :bootstrap_qualifier => { kind: :property, name: "bootstrapQualifier", is_optional: true }, :cloud_formation_execution_role => { kind: :property, name: "cloudFormationExecutionRole", is_optional: true }, :lookup_role => { kind: :property, name: "lookupRole", is_optional: true }, :cloud_formation_execution_role_arn => { kind: :property, name: "cloudFormationExecutionRoleArn", is_optional: false }, :deploy_role_arn => { kind: :property, name: "deployRoleArn", is_optional: false }, :stack => { kind: :property, name: "stack", is_optional: true }, :add_bootstrap_version_rule => { kind: :method, name: "addBootstrapVersionRule", is_optional: false }, :add_docker_image_asset => { kind: :method, name: "addDockerImageAsset", is_optional: false }, :add_file_asset => { kind: :method, name: "addFileAsset", is_optional: false }, :bind => { kind: :method, name: "bind", is_optional: false }, :cloud_formation_location_from_docker_image_asset => { kind: :method, name: "cloudFormationLocationFromDockerImageAsset", is_optional: false }, :cloud_formation_location_from_file_asset => { kind: :method, name: "cloudFormationLocationFromFileAsset", is_optional: false }, :emit_artifact => { kind: :method, name: "emitArtifact", is_optional: false }, :emit_stack_artifact => { kind: :method, name: "emitStackArtifact", is_optional: false }, :synthesize => { kind: :method, name: "synthesize", is_optional: false }, :synthesize_stack_template => { kind: :method, name: "synthesizeStackTemplate", is_optional: false }, :synthesize_template => { kind: :method, name: "synthesizeTemplate", is_optional: false }, :reusable_bind => { kind: :method, name: "reusableBind", is_optional: false }, } end |
Instance Method Details
#add_bootstrap_version_rule(required_version, bootstrap_stack_version_ssm_parameter) ⇒ void
This method returns an undefined value.
Add a CfnRule to the bound stack that checks whether an SSM parameter exceeds a given version.
This will modify the template, so must be called before the stack is synthesized.
196 197 198 199 200 |
# File 'default_stack_synthesizer.rb', line 196 def add_bootstrap_version_rule(required_version, bootstrap_stack_version_ssm_parameter) Jsii::Type.check_type(required_version, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "requiredVersion") Jsii::Type.check_type(bootstrap_stack_version_ssm_parameter, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "bootstrapStackVersionSsmParameter") jsii_call_method("addBootstrapVersionRule", [required_version, bootstrap_stack_version_ssm_parameter]) end |
#add_docker_image_asset(asset) ⇒ AWSCDK::DockerImageAssetLocation
Register a Docker Image Asset.
Returns the parameters that can be used to refer to the asset inside the template.
The synthesizer must rely on some out-of-band mechanism to make sure the given files
are actually placed in the returned location before the deployment happens. This can
be by writing the instructions to the asset manifest (for use by the cdk-assets tool),
by relying on the CLI to upload files (legacy behavior), or some other operator controlled
mechanism.
214 215 216 217 218 |
# File 'default_stack_synthesizer.rb', line 214 def add_docker_image_asset(asset) asset = asset.is_a?(Hash) ? ::AWSCDK::DockerImageAssetSource.new(**asset.transform_keys(&:to_sym)) : asset Jsii::Type.check_type(asset, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5Eb2NrZXJJbWFnZUFzc2V0U291cmNlIn0=")), "asset") jsii_call_method("addDockerImageAsset", [asset]) end |
#add_file_asset(asset) ⇒ AWSCDK::FileAssetLocation
Register a File Asset.
Returns the parameters that can be used to refer to the asset inside the template.
The synthesizer must rely on some out-of-band mechanism to make sure the given files
are actually placed in the returned location before the deployment happens. This can
be by writing the instructions to the asset manifest (for use by the cdk-assets tool),
by relying on the CLI to upload files (legacy behavior), or some other operator controlled
mechanism.
232 233 234 235 236 |
# File 'default_stack_synthesizer.rb', line 232 def add_file_asset(asset) asset = asset.is_a?(Hash) ? ::AWSCDK::FileAssetSource.new(**asset.transform_keys(&:to_sym)) : asset Jsii::Type.check_type(asset, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5GaWxlQXNzZXRTb3VyY2UifQ==")), "asset") jsii_call_method("addFileAsset", [asset]) end |
#bind(stack) ⇒ void
This method returns an undefined value.
Bind to the stack this environment is going to be used on.
Must be called before any of the other methods are called.
244 245 246 247 |
# File 'default_stack_synthesizer.rb', line 244 def bind(stack) Jsii::Type.check_type(stack, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5TdGFjayJ9")), "stack") jsii_call_method("bind", [stack]) end |
#bootstrap_qualifier ⇒ String?
The qualifier used to bootstrap this stack.
65 66 67 |
# File 'default_stack_synthesizer.rb', line 65 def bootstrap_qualifier() jsii_get_property("bootstrapQualifier") end |
#bound_stack ⇒ AWSCDK::Stack
Retrieve the bound stack.
Fails if the stack hasn't been bound yet.
58 59 60 |
# File 'default_stack_synthesizer.rb', line 58 def bound_stack() jsii_get_property("boundStack") end |
#cloud_formation_execution_role ⇒ String?
The role that is passed to CloudFormation to execute the change set.
72 73 74 |
# File 'default_stack_synthesizer.rb', line 72 def cloud_formation_execution_role() jsii_get_property("cloudFormationExecutionRole") end |
#cloud_formation_execution_role_arn ⇒ String
Returns the ARN of the CFN execution Role.
170 171 172 |
# File 'default_stack_synthesizer.rb', line 170 def cloud_formation_execution_role_arn() jsii_get_property("cloudFormationExecutionRoleArn") end |
#cloud_formation_location_from_docker_image_asset(dest) ⇒ AWSCDK::DockerImageAssetLocation
Turn a docker asset location into a CloudFormation representation of that location.
If any of the fields contain placeholders, the result will be wrapped in a Fn.sub.
255 256 257 258 259 |
# File 'default_stack_synthesizer.rb', line 255 def cloud_formation_location_from_docker_image_asset(dest) dest = dest.is_a?(Hash) ? ::AWSCDK::CloudAssemblySchema::DockerImageDestination.new(**dest.transform_keys(&:to_sym)) : dest Jsii::Type.check_type(dest, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5jbG91ZF9hc3NlbWJseV9zY2hlbWEuRG9ja2VySW1hZ2VEZXN0aW5hdGlvbiJ9")), "dest") jsii_call_method("cloudFormationLocationFromDockerImageAsset", [dest]) end |
#cloud_formation_location_from_file_asset(location) ⇒ AWSCDK::FileAssetLocation
Turn a file asset location into a CloudFormation representation of that location.
If any of the fields contain placeholders, the result will be wrapped in a Fn.sub.
267 268 269 270 271 |
# File 'default_stack_synthesizer.rb', line 267 def cloud_formation_location_from_file_asset(location) location = location.is_a?(Hash) ? ::AWSCDK::CloudAssemblySchema::FileDestination.new(**location.transform_keys(&:to_sym)) : location Jsii::Type.check_type(location, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5jbG91ZF9hc3NlbWJseV9zY2hlbWEuRmlsZURlc3RpbmF0aW9uIn0=")), "location") jsii_call_method("cloudFormationLocationFromFileAsset", [location]) end |
#deploy_role_arn ⇒ String
Returns the ARN of the deploy Role.
177 178 179 |
# File 'default_stack_synthesizer.rb', line 177 def deploy_role_arn() jsii_get_property("deployRoleArn") end |
#emit_artifact(session, options = nil) ⇒ void
This method returns an undefined value.
Write the CloudFormation stack artifact to the session.
Use default settings to add a CloudFormationStackArtifact artifact to the given synthesis session. The Stack artifact will control the settings for the CloudFormation deployment.
282 283 284 285 286 287 |
# File 'default_stack_synthesizer.rb', line 282 def emit_artifact(session, = nil) Jsii::Type.check_type(session, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5JU3ludGhlc2lzU2Vzc2lvbiJ9")), "session") = .is_a?(Hash) ? ::AWSCDK::SynthesizeStackArtifactOptions.new(**.transform_keys(&:to_sym)) : Jsii::Type.check_type(, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5TeW50aGVzaXplU3RhY2tBcnRpZmFjdE9wdGlvbnMifQ==")), "options") unless .nil? jsii_call_method("emitArtifact", [session, ]) end |
#emit_stack_artifact(stack, session, options = nil) ⇒ void
Use emitArtifact instead
This method returns an undefined value.
Write the stack artifact to the session.
Use default settings to add a CloudFormationStackArtifact artifact to the given synthesis session.
299 300 301 302 303 304 305 |
# File 'default_stack_synthesizer.rb', line 299 def emit_stack_artifact(stack, session, = nil) Jsii::Type.check_type(stack, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5TdGFjayJ9")), "stack") Jsii::Type.check_type(session, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5JU3ludGhlc2lzU2Vzc2lvbiJ9")), "session") = .is_a?(Hash) ? ::AWSCDK::SynthesizeStackArtifactOptions.new(**.transform_keys(&:to_sym)) : Jsii::Type.check_type(, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5TeW50aGVzaXplU3RhY2tBcnRpZmFjdE9wdGlvbnMifQ==")), "options") unless .nil? jsii_call_method("emitStackArtifact", [stack, session, ]) end |
#lookup_role ⇒ String?
The role used to lookup for this stack.
79 80 81 |
# File 'default_stack_synthesizer.rb', line 79 def lookup_role() jsii_get_property("lookupRole") end |
#reusable_bind(stack) ⇒ AWSCDK::IBoundStackSynthesizer
Produce a bound Stack Synthesizer for the given stack.
This method may be called more than once on the same object.
362 363 364 365 |
# File 'default_stack_synthesizer.rb', line 362 def reusable_bind(stack) Jsii::Type.check_type(stack, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5TdGFjayJ9")), "stack") jsii_call_method("reusableBind", [stack]) end |
#stack ⇒ AWSCDK::Stack?
Use boundStack instead.
Return the currently bound stack.
185 186 187 |
# File 'default_stack_synthesizer.rb', line 185 def stack() jsii_get_property("stack") end |
#synthesize(session) ⇒ void
This method returns an undefined value.
Synthesize the associated stack to the session.
311 312 313 314 |
# File 'default_stack_synthesizer.rb', line 311 def synthesize(session) Jsii::Type.check_type(session, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5JU3ludGhlc2lzU2Vzc2lvbiJ9")), "session") jsii_call_method("synthesize", [session]) end |
#synthesize_stack_template(stack, session) ⇒ void
This method returns an undefined value.
Synthesize the stack template to the given session, passing the configured lookup role ARN.
321 322 323 324 325 |
# File 'default_stack_synthesizer.rb', line 321 def synthesize_stack_template(stack, session) Jsii::Type.check_type(stack, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5TdGFjayJ9")), "stack") Jsii::Type.check_type(session, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5JU3ludGhlc2lzU2Vzc2lvbiJ9")), "session") jsii_call_method("synthesizeStackTemplate", [stack, session]) end |
#synthesize_template(session, lookup_role_arn = nil, lookup_role_external_id = nil, lookup_role_additional_options = nil) ⇒ AWSCDK::FileAssetSource
Write the stack template to the given session.
Return a descriptor that represents the stack template as a file asset
source, for adding to an asset manifest (if desired). This can be used to
have the asset manifest system (cdk-assets) upload the template to S3
using the appropriate role, so that afterwards only a CloudFormation
deployment is necessary.
If the template is uploaded as an asset, the stack_template_asset_object_url
property should be set when calling emitArtifact.
If the template is NOT uploaded as an asset first and the template turns
out to be >50KB, it will need to be uploaded to S3 anyway. At that point
the credentials will be the same identity that is doing the UpdateStack
call, which may not have the right permissions to write to S3.
348 349 350 351 352 353 354 |
# File 'default_stack_synthesizer.rb', line 348 def synthesize_template(session, lookup_role_arn = nil, lookup_role_external_id = nil, = nil) Jsii::Type.check_type(session, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5JU3ludGhlc2lzU2Vzc2lvbiJ9")), "session") Jsii::Type.check_type(lookup_role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "lookupRoleArn") unless lookup_role_arn.nil? Jsii::Type.check_type(lookup_role_external_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "lookupRoleExternalId") unless lookup_role_external_id.nil? Jsii::Type.check_type(, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6ImFueSJ9LCJraW5kIjoibWFwIn19")), "lookupRoleAdditionalOptions") unless .nil? jsii_call_method("synthesizeTemplate", [session, lookup_role_arn, lookup_role_external_id, ]) end |