Skip to content

Commit c917f50

Browse files
authored
CFNv2: Support the list parameter type (#12904)
1 parent 9382fd0 commit c917f50

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

localstack-core/localstack/services/cloudformation/engine/v2/change_set_model_preproc.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -933,6 +933,19 @@ def visit_node_parameter(self, node_parameter: NodeParameter) -> PreprocEntityDe
933933
before = dynamic_delta.before or default_delta.before
934934
after = dynamic_delta.after or default_delta.after
935935

936+
parameter_type = self.visit(node_parameter.type_)
937+
938+
def _resolve_parameter_type(value: str, type_: str) -> Any:
939+
match type_:
940+
case "List<String>":
941+
return [item.strip() for item in value.split(",")]
942+
return value
943+
944+
if not is_nothing(before):
945+
before = _resolve_parameter_type(before, parameter_type.before)
946+
if not is_nothing(after):
947+
after = _resolve_parameter_type(after, parameter_type.after)
948+
936949
return PreprocEntityDelta(before=before, after=after)
937950

938951
def visit_node_depends_on(self, node_depends_on: NodeDependsOn) -> PreprocEntityDelta:

tests/aws/services/cloudformation/v2/ported_from_v1/api/test_stacks.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -677,7 +677,6 @@ def test_events_resource_types(deploy_cfn_template, snapshot, aws_client):
677677
snapshot.match("resource_types", resource_types)
678678

679679

680-
@pytest.mark.skip(reason="CFNV2:Deletion")
681680
@markers.aws.validated
682681
def test_list_parameter_type(aws_client, deploy_cfn_template, cleanups):
683682
stack_name = f"test-stack-{short_uid()}"

0 commit comments

Comments
 (0)