CfnIncludeProps

class aws_cdk.cloudformation_include.CfnIncludeProps(*, template_file, allow_cyclical_references=None, load_nested_stacks=None, parameters=None, preserve_logical_ids=None)

Bases: object

Construction properties of CfnInclude.

Parameters:
  • template_file (str) – Path to the template file. Both JSON and YAML template formats are supported.

  • allow_cyclical_references (Optional[bool]) – Specifies whether to allow cyclical references, effectively disregarding safeguards meant to avoid undeployable templates. This should only be set to true in the case of templates utilizing cloud transforms (e.g. SAM) that after processing the transform will no longer contain any circular references. Default: - will throw an error on detecting any cyclical references

  • load_nested_stacks (Optional[Mapping[str, Union[CfnIncludeProps, Dict[str, Any]]]]) – Specifies the template files that define nested stacks that should be included. If your template specifies a stack that isn’t included here, it won’t be created as a NestedStack resource, and it won’t be accessible from the CfnInclude.getNestedStack method (but will still be accessible from the CfnInclude.getResource method). If you include a stack here with an ID that isn’t in the template, or is in the template but is not a nested stack, template creation will fail and an error will be thrown. Default: - no nested stacks will be included

  • parameters (Optional[Mapping[str, Any]]) – Specifies parameters to be replaced by the values in this mapping. Any parameters in the template that aren’t specified here will be left unmodified. If you include a parameter here with an ID that isn’t in the template, template creation will fail and an error will be thrown. If you are importing a parameter from a live stack, we cannot know the value of that parameter. You will need to supply a value for your parameters, else the default value will be used. Default: - parameters will retain their original definitions

  • preserve_logical_ids (Optional[bool]) – Whether the resources should have the same logical IDs in the resulting CDK template as they did in the original CloudFormation template file. If you’re vending a Construct using an existing CloudFormation template, make sure to pass this as false. Note: regardless of whether this option is true or false, the CfnInclude.getResource and related methods always uses the original logical ID of the resource/element, as specified in the template file. Default: true

ExampleMetadata:

infused

Example:

parent_template = cfn_inc.CfnInclude(self, "ParentStack",
    template_file="path/to/my-parent-template.json",
    load_nested_stacks={
        "ChildStack": cfn_inc.CfnIncludeProps(
            template_file="path/to/my-nested-template.json"
        )
    }
)

Attributes

allow_cyclical_references

Specifies whether to allow cyclical references, effectively disregarding safeguards meant to avoid undeployable templates.

This should only be set to true in the case of templates utilizing cloud transforms (e.g. SAM) that after processing the transform will no longer contain any circular references.

Default:
  • will throw an error on detecting any cyclical references

load_nested_stacks

Specifies the template files that define nested stacks that should be included.

If your template specifies a stack that isn’t included here, it won’t be created as a NestedStack resource, and it won’t be accessible from the CfnInclude.getNestedStack method (but will still be accessible from the CfnInclude.getResource method).

If you include a stack here with an ID that isn’t in the template, or is in the template but is not a nested stack, template creation will fail and an error will be thrown.

Default:
  • no nested stacks will be included

parameters

Specifies parameters to be replaced by the values in this mapping.

Any parameters in the template that aren’t specified here will be left unmodified. If you include a parameter here with an ID that isn’t in the template, template creation will fail and an error will be thrown.

If you are importing a parameter from a live stack, we cannot know the value of that parameter. You will need to supply a value for your parameters, else the default value will be used.

Default:
  • parameters will retain their original definitions

preserve_logical_ids

Whether the resources should have the same logical IDs in the resulting CDK template as they did in the original CloudFormation template file.

If you’re vending a Construct using an existing CloudFormation template, make sure to pass this as false.

Note: regardless of whether this option is true or false, the CfnInclude.getResource and related methods always uses the original logical ID of the resource/element, as specified in the template file.

Default:

true

template_file

Path to the template file.

Both JSON and YAML template formats are supported.