AWS Cloud Operations Blog

Managing multiple stacks and overriding parameters in AWS CloudFormation

In Q4 2018, the AWS CloudFormation team released a refreshed version of the management console as an opt-in experience. This redesign re-explored many of the common ways that you can interact with this service.

In this post, I’d like to introduce a suite of updates that makes the redesign into the default console experience. The updates bring a more robust approach to accessibility, performance enhancements, and better metrics, which helps AWS iterate on feedback quicker. AWS thanks all of you who used the opt-in experience and submitted feedback; we are listening.

I’d like to take you through some of the flows that have improved since the 2018 release. For more information, see Working with Nested Stacks and Override Parameters on Stack Instances.

Managing multiple stacks

While the initial implementation worked well for drilling into individual stacks, customers asked for a better way to navigate multiple stacks. We’re pleased to announce a revamped split-pane view for the stacks page. This new view makes navigating between different stack events, resources, or outputs much easier.

In this example screenshot, I created a nested stack for a fictitious company named AnyCompany. This nested stack deploys a full reproduction of their production environment for testing purposes.

Nested stack parent creation

As stacks are being created, you can quickly cycle through the events, resources, and outputs of any of the stacks. After all the items have been created, you can limit your view to the parent stacks, to simplify the view.

Nested stack parent-only view

This view allows you to quickly traverse through large groups of stacks and browse through events easily. You can also use the powerful filtering tools to nimbly navigate through any numbers of stacks and keep relevant pieces of information together.

Overriding parameters on your StackSets

Back in Q4 2017, CloudFormation StackSets released a feature that allowed you to override parameter values by account and Region in stack instances. Before this release, you could only have one value for any parameter in your template shared across all Regions.

The new console allows you to use this feature to have fine-grained control of exactly which parameter is getting overridden and which parameter is getting reset back to the StackSet default.

In this example, AnyCompany must create a config rule to verify that all accounts and Regions in the StackSet have the mandatory two-factor authentication (2FA), to be verified every twelve hours. AnyCompany decides that they want three specific accounts to have a limit of 24-hours instead of 12 hours in the us-east-1 Region.

In the details view of the StackSet, choose Actions, Override StackSet parameters.

StackSet details

On the Set Deployment options page, enter the accounts and Regions.

Find the specific parameters to override and choose Edit override value, Override StackSet value. The dialog box allows you to specify the values to which the parameters can be set, as defined by the StackSet template.

Confirm the new correct value on the page, confirm one more time on the confirmation page, and then choose Submit.

The transaction is complete and a deployment begins to roll out all the overridden parameters to these selected stack instances. When the deployment completes, all selected stack instances now have the overridden parameter values.

Conclusion

I’ve shown you a couple of new user flows that the AWS CloudFormation console experience has improved in the latest update. I walked through an example of how to browse events and resources between multiple stacks, as well as how to override select parameters in a StackSet. I’m looking forward to hearing your feedback!


About the Author

Dan Blanco is a Developer Advocate for AWS CloudFormation based in Seattle. Dan writes blogs, templates, code, and tips to consistently improve the developer experience for CloudFormation users. When Dan’s not bolted to his laptop, you’ll find him playing a new board game or cooking up something in the kitchen. You can find more of Dan on Twitter (@TheDanBlanco) or on the AWS Developers #cloudformation Slack Channel