Skip to content

Commit 6bd0ec4

Browse files
committed
Handle select errors
1 parent 211ed80 commit 6bd0ec4

File tree

2 files changed

+5
-9
lines changed

2 files changed

+5
-9
lines changed

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

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -115,22 +115,23 @@ def visit_node_intrinsic_function_fn_join(
115115
def visit_node_intrinsic_function_fn_select(
116116
self, node_intrinsic_function: NodeIntrinsicFunction
117117
):
118+
# TODO: should this not _ALWAYS_ return CHANGESET_KNOWN_AFTER_APPLY?
118119
arguments_delta = self.visit(node_intrinsic_function.arguments)
119120
delta = PreprocEntityDelta()
120121
if not is_nothing(arguments_delta.before):
121122
idx = arguments_delta.before[0]
122123
arr = arguments_delta.before[1]
123124
try:
124-
delta.before = arr[idx]
125-
except IndexError:
125+
delta.before = arr[int(idx)]
126+
except Exception:
126127
delta.before = CHANGESET_KNOWN_AFTER_APPLY
127128

128129
if not is_nothing(arguments_delta.after):
129130
idx = arguments_delta.after[0]
130131
arr = arguments_delta.after[1]
131132
try:
132-
delta.after = arr[idx]
133-
except IndexError:
133+
delta.after = arr[int(idx)]
134+
except Exception:
134135
delta.after = CHANGESET_KNOWN_AFTER_APPLY
135136

136137
return delta

tests/aws/services/cloudformation/resources/test_stepfunctions.py

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44

55
import pytest
66
from localstack_snapshot.snapshots.transformer import JsonpathTransformer
7-
from tests.aws.services.cloudformation.conftest import skip_if_v2_provider
87

98
from localstack import config
109
from localstack.testing.pytest import markers
@@ -47,10 +46,6 @@ def _is_executed():
4746
assert "hello from statemachine" in execution_desc["output"]
4847

4948

50-
@skip_if_v2_provider(
51-
"Engine",
52-
reason="During change set describe the a Ref to a not yet deployed resource returns null which is an invalid input for Fn::Split",
53-
)
5449
@markers.aws.validated
5550
def test_nested_statemachine_with_sync2(deploy_cfn_template, aws_client):
5651
stack = deploy_cfn_template(

0 commit comments

Comments
 (0)