Skip to content
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

Support provisioning actions on different stacks in parallel #13

Open
krishnan-mani opened this issue Dec 31, 2017 · 0 comments
Open

Support provisioning actions on different stacks in parallel #13

krishnan-mani opened this issue Dec 31, 2017 · 0 comments

Comments

@krishnan-mani
Copy link
Owner

krishnan-mani commented Dec 31, 2017

At the moment, we support strictly sequential processing of all listed stacks (and their corresponding contexts and environments)

However, this may be considered as a constraint when multiple stacks that are independent of each other need to be processed. This results in an increased time-to-completion when processing multiple stacks, and also indirectly limits provisioning actions on "later" stacks, when, for example, there are errors provisioning "earlier" stacks (due to the current 'fail-fast' behavior)

When stacks are entirely unrelated, it is prudent to let them provision, despite the failure of provisioning actions on other stacks.

Some stacks within a group of stacks may rely on the successful provisioning of other stacks (for example: due to cross-stack references between stacks) that "precede" them.

However, there may be multiple groups of stacks, such that each group forms a "closure" of stacks that either impact or are impacted by provisioning of other stacks within the same group. Again, groups may be completely independent of each other, or there my be a precedence between groups that must be provisioned in some order.

Similarly, some form of "concurrency control" is desirable that lets the user control how many such stacks can be provisioned in parallel.

(Suggestion: attempting to use with space-odyssey may be an interesting exercise to test this)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant