Welcome toVigges Developer Community-Open, Learning,Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
3.2k views
in Technique[技术] by (71.8m points)

amazon cloudformation - Serverless - AWS Cloud Formation - Cross Stack Circular Dependencies

My serverless infra is split between multiple functional stacks, each one of them has it's own resources (dynamo, topics, queues, etc).

For some stack A, I need to define a lambda which listens to another stack B queue events.

Assuming a deployment from scratch, it works well if B is deployed first, because the queue will be created when deploying A. But my ci is currently :

sls deploy A
sls deploy B

And adding, for instance, a SQS resource in B and reference it in A will cause the deployment to fail, because during A deployment the B SQS resource doesn't exist yet.

How can I handle this kind of cross stack dependency properly ?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

How can I handle this kind of cross stack dependency properly ?

You have to redesign your templates. You can't have resources in A referencing resources in B which don't exist. You have to move all to A so its self-sufficient, or introduce new stack which will hold common resources and which is deployed before A and B.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to Vigges Developer Community for programmer and developer-Open, Learning and Share
...