Skip to content

Resolver stack_output_external is using last region when stack exist in multiple regions #1507

@goopilot

Description

@goopilot

Resolver !stack_output_external uses wrong stack in case there are multiple stacks with the same name in different regions exist.

Environment

sceptre --version
Sceptre, version 4.4.2 (same issue with 4.5.0)

python --version
Python 3.12.4

Windows 11/Linux

Steps to reproduce

Test project to reproduce https://plnkr.co/edit/eEfUQ0qHcV0u5lER
Once stack is deployed, running sceptre diff prod will show a difference for stack mytest-sns-sub in ca-cetral-1 region since parameter value of SNStopicARN will be resolved from mytest-sns-topic stack in us-west-2 region

Actual behaviour

sceptre diff prod
*********************************************************************************
No difference to deployed stack mytest-sns-topic
*********************************************************************************
No difference to deployed stack mytest-sns-topic
*********************************************************************************
No difference to deployed stack mytest-sns-sub
*********************************************************************************
--> Difference detected for stack mytest-sns-sub!
---------------------------------------------------------------------------------
Config difference for mytest-sns-sub:

values_changed:
    root.parameters['SNStopicARN']:
        new_value: arn:aws:sns:ca-central-1:XXXXX:test-topic
        old_value: arn:aws:sns:us-west-2:YYYYY:test-topic-us

---------------------------------------------------------------------------------
No template difference
[2024-08-28 14:22:30] - 1 stacks with differences detected.

Same problem when doing sceptre launch

Workaroud

Explicitly provide profile and region:
SNStopicARN: !stack_output_external mytest-sns-topic::snsTopicARN {{profile}}::{{ region }}

This issue resembles #961

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions