-
Notifications
You must be signed in to change notification settings - Fork 3.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Model stack dependencies / deployment order #937
Comments
This is should be covered by cloud assemblies (#233). In some cases it should be possible to deduce these automatically when there are cross-stack dependencies. |
It will also help for integration tests. Yes, it would be better if these were derived automatically, but they aren't right now and this is a low-effort investment to get at least some affordances in place and update our tools to be able to act upon the data. We can always improve the dependency collection mechanism later. |
Sure |
Is there a way to force all these exports? So that there is no need to delete these Cfn Outputs in the first place. |
We actually have a stack dependency mechanism right now, so I'm closing this PR. @abelmokadem, I don't really understand your comment about forcing exports and deleting outputs, but feel free to make a new issue about it. |
Sometimes stacks need to be deployed in a particular order in order for the deployment to succeed, as one stack depends on artifacts created by another (either via
Fn::Import
, or indirectly through custom resources, SSM parameters, ...). Currently, the CDK does not understand those dependencies andcdk deploy
processes stacks in an arbitrary order.In order to enable more sophisticated scenarios for interactions between stacks, for example allowing a construct to create a "helper" CDK Stack to be deployed before it's host stack.
An example use-case is when creating a custom domain mapping for an edge-optimized API Gateway endpoint, the ACM certificate needs to reside in the
us-east-1
region, regardless of the region the API is defined in. One might want to create a "helper" stack inus-east-1
to manage the certificate.Initially, the dependency would be explicitly modeled, but it could be determined automatically in the future.
For example, it could look like the following:
The text was updated successfully, but these errors were encountered: