Skip to content

Commit 34a28a2

Browse files
committed
CFNV2: fix delete change set
1 parent 4464cd2 commit 34a28a2

File tree

2 files changed

+5
-13
lines changed

2 files changed

+5
-13
lines changed

localstack-core/localstack/services/cloudformation/v2/provider.py

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ def find_change_set_v2(
173173
state: CloudFormationStore, change_set_name: str, stack_name: str | None = None
174174
) -> ChangeSet | None:
175175
if is_changeset_arn(change_set_name):
176-
return state.change_sets[change_set_name]
176+
return state.change_sets.get(change_set_name)
177177
else:
178178
if stack_name is not None:
179179
stack = find_stack_v2(state, stack_name)
@@ -185,7 +185,9 @@ def find_change_set_v2(
185185
if change_set_candidate.change_set_name == change_set_name:
186186
return change_set_candidate
187187
else:
188-
raise ValueError("No stack name specified when finding change set")
188+
raise ValidationError(
189+
"StackName must be specified if ChangeSetName is not specified as an ARN."
190+
)
189191

190192

191193
def find_stack_set_v2(state: CloudFormationStore, stack_set_name: str) -> StackSet | None:
@@ -618,16 +620,7 @@ def delete_change_set(
618620
**kwargs,
619621
) -> DeleteChangeSetOutput:
620622
state = get_cloudformation_store(context.account_id, context.region)
621-
622-
if is_changeset_arn(change_set_name):
623-
change_set = state.change_sets.get(change_set_name)
624-
elif not is_changeset_arn(change_set_name) and stack_name:
625-
change_set = find_change_set_v2(state, change_set_name, stack_name)
626-
else:
627-
raise ValidationError(
628-
"StackName must be specified if ChangeSetName is not specified as an ARN."
629-
)
630-
623+
change_set = find_change_set_v2(state, change_set_name, stack_name)
631624
if not change_set:
632625
return DeleteChangeSetOutput()
633626

tests/aws/services/cloudformation/api/test_changesets.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -848,7 +848,6 @@ def _check_changeset_success():
848848
snapshot.match("error_execute_failed", e.value)
849849

850850

851-
@skip_if_v2_provider(reason="CFNV2:DeleteChangeSet")
852851
@markers.aws.validated
853852
def test_deleted_changeset(snapshot, cleanups, aws_client):
854853
"""simple case verifying that proper exception is thrown when trying to get a deleted changeset"""

0 commit comments

Comments
 (0)