Covers how to allow and deny specific stacks for specific environments. Good examples are route53 and ACM certs for CloudFront.
For the example, let's say you have these stacks:
$ terraspace list
app/stacks/route53
app/stacks/stack1
app/stacks/stack2
If might only want to allow the route53 stack to deploy when TS_ENV=global
TS_ENV=global terraspace up route53
And the stack1 and stack2 stacks, is allowed to be deploy for other TS_ENV environments.
TS_ENV=dev terraspace up stack1
TS_ENV=dev terraspace up stack2
TS_ENV=prod terraspace up stack1
TS_ENV=prod terraspace up stack2
We'll show you how to achieve this with
config/app.rb
config/app.rb
Terraspace.configure do |config|
config.allow.stacks = ["stack1"]
# config.deny.stacks = ["stack2"]
end
Interestingly, configuring config.allow.stacks and config.deny.stacks will be respected by terraspace all. So you don't have to do more configurations, Terraspace is smart enough to figure it out automatically.
Related Links
- Terraspace Docs: Terraspace Config Restricting Stacks
- GitHub Repo: boltops-learn/terraspace-restricting-stacks
Terraspace Fundamentals
2h 30m
Explore lesson as part of a learning path
Get full access to these great resources
All for less than the price of coffee a day