Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: embed construct paths in CloudFormation metadata #1183

Merged
merged 7 commits into from
Nov 15, 2018

Conversation

eladb
Copy link
Contributor

@eladb eladb commented Nov 15, 2018

In order to allow tools that read a CloudFormation template created by
the CDK to be able to present the CDK path of resources in the template,
the CDK now embeds the full path as CloudFormation metadata "aws:cdk:path"
entry for each resource.

To disable this behavior use the switch --no-path-metadata or set
pathMetadata to false in cdk.json or ~/.cdk.json.

The toolkit can control this behavior by setting the
"aws:cdk:enable-path-metadata" context key. It sets it to true by
default.

The default behavior of the Resource class is not to include
metadata. This is in order to maintain backwards compatibility
for tests. cdk-integ also disables this by default.

Fixes #1182
Related #1121

Elad Ben-Israel added 3 commits November 13, 2018 16:52
When --language is omitted from a call to "cdk init", instead of
just printing the supported languages, we now print all options,
including template types.
In order to allow tools that read a CloudFormation template created by
the CDK to be able to present the CDK path of resources in the template,
the CDK now embeds the full path as CloudFormation metadata "aws:cdk:path"
entry for each resource.

To disable this behavior use the switch `--no-path-metadata` or set
`pathMetadata` to `false` in `cdk.json` or `~/.cdk.json`.

The toolkit can control this behavior by setting the
"aws:cdk:enable-path-metadata" context key. It sets it to `true` by
default.

The default behavior of the *Resource class* is _not_ to include
metadata. This is in order to maintain backwards compatibility
for tests. `cdk-integ` also disables this by default.

Fixes #1182
Related #1121
@eladb eladb requested review from RomainMuller, rix0rrr and a team November 15, 2018 15:32
.gitignore Show resolved Hide resolved
@eladb eladb merged commit 3cc2fff into master Nov 15, 2018
@eladb eladb deleted the benisrae/path-metadata branch November 19, 2018 12:30
@NGL321 NGL321 added the contribution/core This is a PR that came from AWS. label Sep 23, 2019
@mergify
Copy link
Contributor

mergify bot commented Sep 23, 2019

Thanks so much for taking the time to contribute to the AWS CDK ❤️

We will shortly assign someone to review this pull request and help get it
merged. In the meantime, please take a minute to make sure you follow this
checklist
:

  • PR title type(scope): text
    • type: fix, feat, refactor go into CHANGELOG, chore is hidden
    • scope: name of module without aws- or cdk- prefix or postfix (e.g. s3 instead of aws-s3-deployment)
    • text: use all lower-case, do not end with a period, do not include issue refs
  • PR Description
    • Rationale: describe rationale of change and approach taken
    • Issues: indicate issues fixed via: fixes #xxx or closes #xxx
    • Breaking?: last paragraph: BREAKING CHANGE: <describe what changed + link for details>
  • Testing
    • Unit test added. Prefer to add a new test rather than modify existing tests
    • CLI or init templates change? Re-run/add CLI integration tests
  • Documentation
    • README: update module README to describe new features
    • API docs: public APIs must be documented. Copy from official AWS docs when possible
    • Design: for significant features, follow design process

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
contribution/core This is a PR that came from AWS.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Automatically embed construct paths in CloudFormation metadata
3 participants