fix(core): Fn::Transform excluded in resource deep merge#36218
fix(core): Fn::Transform excluded in resource deep merge#36218
Fn::Transform excluded in resource deep merge#36218Conversation
There was a problem hiding this comment.
The pull request linter fails with the following errors:
❌ Fixes must contain a change to an integration test file and the resulting snapshot.
If you believe this pull request should receive an exemption, please comment and provide a justification. A comment requesting an exemption should contain the text Exemption Request. Additionally, if clarification is needed, add Clarification Request to a comment.
✅ A exemption request has been requested. Please wait for a maintainer's review.
The intrinsic function `Fn::Transform` can be used anywhere in a CloudFormation template which makes it special compared to the other intrinsic functions. In order for CfnResources to have Fn::Transform as a property key, this intrinsic needs to be merged like any other property. aws#36203
5058a55 to
068b024
Compare
Fn::Transform excluded in resource deep merge
|
Exemption Request : change is to core resource synthesis logic and is tested by unit tests. integration test requires setting up CFN macro/lambda handler or bucket deployment and doesn't add much more than what the unit tests offer. |
|
Thank you. I can confirm that this PR is now in the pr/needs-community-review queue. Once it receives an approving community review, it will move to the pr/needs-maintainer-review stage. Please ensure that the CI status remains in a Success state, as the maintainer will review it from that queue. |
The intrinsic function
Fn::Transformcan be used anywhere in a CloudFormation template which makes it special compared to the other intrinsic functions. In order for CfnResources to have Fn::Transform as a property key, this intrinsic needs to be merged like any other property.Issue # (if applicable)
#36203
Reason for this change
Fn::Transform is a special intrinsic and should not be treated like the other intrinsic functions when doing deep merge.
Description of changes
The change is very small, just removing the
Fn::Transformfunction from a list of keys that are treated differently during deep merge of properties and overrides.Describe any new or updated permissions being added
N/A
Description of how you validated changes
Added unit tests that failed before the change and pass afterwards. Also saw correct behavior after the fix in the reproduction in the original issue with CfnInclude.
Checklist
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license