reference resources between CDK stacks

0

Hi Team,

I have 2 CDK stacks one in the Front end project and the second in the Backend project.

the first stack needs resources ref from the second stack (and vice versa can be true)

I have a lambda function in the backend stack that needs to call another lambda in the front end stack,

If I deploy the backend CDK stack first, how can I make a reference/call to the second lambda in the front end stack?

If I use event bridge or SNS I still need to have the name of the target lambda which is the lambda created by the CDK front end or I need the SNS ref to be shared between the 2 stacks for pub/sub.

any idea how to solve this :)

Thank you.

2개 답변
3

CloudFormation supports the concept of exporting outputs from one stack and importing their values into another stack.

In CDK, you can export a resource's output by creating a cfnOutput with an exportName property. You can also use Fn.ImportValue to import an exported value to a stack from a different stack.

Here's a blog post that illustrates this concept in further detail.

Note that neither CDK nor CloudFormation support circular stack dependencies, so you can't have stack A depend on a resource in stack B while also having stack B depend on a resource in stack A. The stack dependency graph must be acyclical.

AWS
전문가
답변함 2년 전
1

CDK can handle export/import of the resource variable automatically.

If you make a resource a member variable of the stack instance, and reference that stack member variable from the other stack by passing the variable as a property of stack props parameter, CDK will export the resource reference, and import it from the other stack automatically.

You can find more detailed information from https://docs.aws.amazon.com/cdk/v2/guide/resources.html#resource_stack.

Be aware that this operation only supported in a same region stacks. If you need to deploy the two stacks in two different regions, you need other mechanism.

AWS
답변함 2년 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인

관련 콘텐츠