8000 CloudFormation V2 Engine: Support for DependsOn Blocks by MEPalma · Pull Request #12644 · localstack/localstack · GitHub
[go: up one dir, main page]

Skip to content

CloudFormation V2 Engine: Support for DependsOn Blocks #12644

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

Merged
merged 1 commit into from
May 21, 2025

Conversation

MEPalma
Copy link
Contributor
@MEPalma MEPalma commented May 19, 2025

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 still lacks support for DependsOn blocks

Future efforts should add validation checks and cyclic reference detections.

Changes

  • Add support for DependsOn blocks (modeling, describing, and executing)
  • Add base ChangeSet lifecycle test
  • Un-skip v1 test for apigateway

@MEPalma MEPalma added this to the 4.5 milestone May 19, 2025
@MEPalma MEPalma self-assigned this May 19, 2025
@MEPalma MEPalma added the semver: minor Non-breaking changes which can be included in minor releases, but not in patch releases label May 19, 2025
@MEPalma MEPalma removed request for simonrw and pinzon May 19, 2025 18:29
Copy link

LocalStack Community integration with Pro

  2 files  ±    0    2 suites  ±0   20m 47s ⏱️ - 1h 24m 27s
495 tests  - 3 957  315 ✅  - 3 752  180 💤  - 205  0 ❌ ±0 
497 runs   - 3 957  315 ✅  - 3 752  182 💤  - 205  0 ❌ ±0 

Results for commit 8f14387. ± Comparison against base commit fa0bbcd.

This pull request removes 3961 and adds 4 tests. Note that renamed tests count towards both.
tests.aws.scenario.bookstore.test_bookstore.TestBookstoreApplication ‑ test_lambda_dynamodb
tests.aws.scenario.bookstore.test_bookstore.TestBookstoreApplication ‑ test_opensearch_crud
tests.aws.scenario.bookstore.test_bookstore.TestBookstoreApplication ‑ test_search_books
tests.aws.scenario.bookstore.test_bookstore.TestBookstoreApplication ‑ test_setup
tests.aws.scenario.kinesis_firehose.test_kinesis_firehose.TestKinesisFirehoseScenario ‑ test_kinesis_firehose_s3
tests.aws.scenario.lambda_destination.test_lambda_destination_scenario.TestLambdaDestinationScenario ‑ test_destination_sns
tests.aws.scenario.lambda_destination.test_lambda_destination_scenario.TestLambdaDestinationScenario ‑ test_infra
tests.aws.scenario.loan_broker.test_loan_broker.TestLoanBrokerScenario ‑ test_prefill_dynamodb_table
tests.aws.scenario.loan_broker.test_loan_broker.TestLoanBrokerScenario ‑ test_stepfunctions_input_recipient_list[step_function_input0-SUCCEEDED]
tests.aws.scenario.loan_broker.test_loan_broker.TestLoanBrokerScenario ‑ test_stepfunctions_input_recipient_list[step_function_input1-SUCCEEDED]
…
tests.aws.services.cloudformation.v2.test_change_set_depends_on.TestChangeSetDependsOn ‑ test_multiple_dependencies_addition
tests.aws.services.cloudformation.v2.test_change_set_depends_on.TestChangeSetDependsOn ‑ test_multiple_dependencies_deletion
tests.aws.services.cloudformation.v2.test_change_set_depends_on.TestChangeSetDependsOn ‑ test_update_depended_resource
tests.aws.services.cloudformation.v2.test_change_set_depends_on.TestChangeSetDependsOn ‑ test_update_depended_resource_list
This pull request removes 209 skipped tests and adds 4 skipped tests. Note that renamed tests count towards both.
tests.aws.scenario.kinesis_firehose.test_kinesis_firehose.TestKinesisFirehoseScenario ‑ test_kinesis_firehose_s3
tests.aws.scenario.loan_broker.test_loan_broker.TestLoanBrokerScenario ‑ test_stepfunctions_input_recipient_list[step_function_input4-FAILED]
tests.aws.scenario.mythical_mysfits.test_mythical_misfits.TestMythicalMisfitsScenario ‑ test_deployed_infra_state
tests.aws.scenario.mythical_mysfits.test_mythical_misfits.TestMythicalMisfitsScenario ‑ test_populate_data
tests.aws.scenario.mythical_mysfits.test_mythical_misfits.TestMythicalMisfitsScenario ‑ test_user_clicks_are_stored
tests.aws.services.apigateway.test_apigateway_api.TestApiGatewayApiRestApi ‑ test_get_api_case_insensitive
tests.aws.services.apigateway.test_apigateway_api.TestApigatewayIntegration ‑ test_put_integration_request_parameter_bool_type
tests.aws.services.apigateway.test_apigateway_basic.TestAPIGateway ‑ test_api_gateway_authorizer_crud
tests.aws.services.apigateway.test_apigateway_basic.TestAPIGateway ‑ test_api_gateway_http_integration_with_path_request_parameter
tests.aws.services.apigateway.test_apigateway_basic.TestAPIGateway ‑ test_api_gateway_lambda_proxy_integration[/lambda/foo1]
…
tests.aws.services.cloudformation.v2.test_change_set_depends_on.TestChangeSetDependsOn ‑ test_multiple_dependencies_addition
tests.aws.services.cloudformation.v2.test_change_set_depends_on.TestChangeSetDependsOn ‑ test_multiple_dependencies_deletion
tests.aws.services.cloudformation.v2.test_change_set_depends_on.TestChangeSetDependsOn ‑ test_update_depended_resource
tests.aws.services.cloudformation.v2.test_change_set_depends_on.TestChangeSetDependsOn ‑ test_update_depended_resource_list

Copy link
Member
@dominikschubert dominikschubert left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, please be aware that I unfortunately didn't have the capacity to review this particularly thoroughly though!

@MEPalma MEPalma merged commit 20c40d1 into master May 21, 2025
37 checks passed
@MEPalma MEPalma deleted the MEP-CFN-base_support_for_dependson branch May 21, 2025 07:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
semver: minor Non-breaking changes which can be included in minor releases, but not in patch releases
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants
0