You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Here's some nasty legacy around Stack Tags:
* Before CDK v1.33.0, we wrote stack tags to the construct metadata, and
they were written as a `{ Key, Value }` object that got directly passed
into the CloudFormation CreateChangeSet API.
* In CDK v1.33.0 (nearly 6 years ago), we formalized the cloud assembly
schema into a jsii package, so we had to type the tag object as `{ key,
value }` in memory (otherwise jsii would yell at us). For backwards
compatibility with the on-disk format and the (extracted) JSONSchema
Validation, we used to re-case the identifiers: just before they were
written to disk we would change `key → Key` and just after reading from
disk but before validation and we would change `Key → key`.
* In CDK v1.66.0 (5 and a half years ago), we added a `tags` property to
the CloudFormation Stack artifact in the CDK manifest, and the CLI and
other tools stopped using the stack metadata to read stack tags.
Since this is to support end-of-life CDKs, in this PR I'm taking some of
that complexity out; we stop converting `key → Key` when writing a cloud
assembly manifest -- but we do still have to convert `Key → key` in
order to pass JSONSchema validation as we read the manifest. Tags are
exclusively read from the artifact properties, there will be no fallback
to the metadata anymore.
---
By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache-2.0 license
---------
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Copy file name to clipboardExpand all lines: packages/@aws-cdk/cloud-assembly-schema/schema/cloud-assembly.schema.json
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -351,7 +351,7 @@
351
351
}
352
352
},
353
353
"tags": {
354
-
"description": "Values for CloudFormation stack tags that should be passed when the stack is deployed. (Default - No tags)",
354
+
"description": "Values for CloudFormation stack tags that should be passed when the stack is deployed.\n\nN.B.: Tags are also written to stack metadata, under the path of the Stack\nconstruct. Only in CDK CLI v1 are those tags found in metadata used for\nactual deployments; in all stable versions of CDK only the stack tags\ndirectly found in the `tags` property of `AwsCloudFormationStack` artifact\n(i.e., this property) are used. (Default - No tags)",
"$comment": "Do not hold back the version on additions: jsonschema validation of the manifest by the consumer will trigger errors on unexpected fields.",
0 commit comments