aws-solutions / aws-control-tower-customizations

The Customizations for AWS Control Tower solution combines AWS Control Tower and other highly-available, trusted AWS services to help customers more quickly set up a secure, multi-account AWS environment using AWS best practices.
https://docs.aws.amazon.com/controltower/latest/userguide/cfct-overview.html
Apache License 2.0
356 stars 205 forks source link

Option to set concurrency on the individual resources level #74

Open RemekHet opened 2 years ago

RemekHet commented 2 years ago

User have an option to decide if they want to deploy resources across regions in parallel or sequential. This is a very useful feature that improves performance but at this moment can be set only on the top level, meaning all StackSet resources will use the same concurrency. Would be even more helpful user could set concurrency on the resource level in way that some resources can be deploy parallel and other sequential.

Anyone who sees this as a useful feature, +1

manifest example:

resources:

groverlalit commented 2 years ago

This would useful for a specific use case where the resources deployed by the stack set has inter-region dependency and requires sequential concurrency model.

Please add your reaction to this issue if you wish to support this feature request. (How?). Thanks

mcripps9 commented 2 years ago

I added my +1. Our specific use case is to always have the main region deploy first, then the rest of the regions can go in any order. We (actually, our AWS PS guy) achieved this by having the stack in two different stacksets in the manifest - one for the main region, and one for the rest, but that is kind of kludgy.

suankan commented 1 year ago

This is a highly desired feature for CfCT to be able to deploy StackSets concurrently.

An alternative solution could be based on a dependencies graph so that user does not even have to setup explicit option like concurrency: sequential/parallel for each individual StackSet resource in the manifest.yaml.

But as a first easy goal even the manual concurrency management via explicit options like concurrency: sequential/parallel per each StackSet resource would be highly desired as well.

balltrev commented 1 year ago

Thanks for the feedback here. I've gone ahead and created a backlog item to discuss this concurrency management optionality with the team.

suankan commented 1 year ago

@balltrev is it possible to provide any probability and time for implementing this?