-
-
Notifications
You must be signed in to change notification settings - Fork 4.5k
CloudFormation v2 Engine: Parity Improvements for Fn::Sub #12705
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
Conversation
LocalStack Community integration with Pro 2 files 2 suites 21m 53s ⏱️ Results for commit 656cf68. ♻️ This comment has been updated with latest results. |
Test Results - Alternative Providers986 tests 573 ✅ 22m 41s ⏱️ Results for commit 656cf68. ♻️ This comment has been updated with latest results. |
Test Results (amd64) - Integration, Bootstrap 5 files 5 suites 2h 54m 35s ⏱️ For more details on these failures, see this check. Results for commit 656cf68. ♻️ This comment has been updated with latest results. |
simonrw
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome stuff, thanks Marco!
| def _resolve_intrinsic_function_fn_sub(self, arguments: ChangeSetEntity) -> ChangeType: | ||
| # TODO: This routine should instead export the implicit Ref and GetAtt calls within the first | ||
| # string template parameter and compute the respective change set types. Currently, | ||
| # changes referenced byu Fn::Sub templates are only picked up during preprocessing; not |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| # changes referenced byu Fn::Sub templates are only picked up during preprocessing; not | |
| # changes referenced by Fn::Sub templates are only picked up during preprocessing; not |
| for template_variable_name in template_variable_names: | ||
| template_variable_value = Nothing | ||
|
|
||
| # Try to resolve the variable name as pseudo parameter. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
praise: thanks for adding these structural comments!
|
Currently, only patch changes are allowed on master. Your PR labels (semver: minor) indicate that it cannot be merged into the master at this time. |
Motivation
The introduction of the CloudFormation v2 engine laid the foundation for a redesigned engine capable of accurately determining update requirements between CloudFormation deployments, while also enabling parallel execution during updates. However, the current implementation has some parity limitations around the use of
Fn::Sub.Changes
Fn::Substring templatesFn::Subreturn value casting from v1 with FIXME note for future effortsFn::GetAttfor reuse in logics such as inFn::Sub