·200 words·1 min
Table of Contents
Universal Settings to Consider #
Remote State #
Are you going to maintain a single state file or group linked modules/deployments to shared state files?
Shared Provider Directory #
To limit the requirement of downloading providers each time, are you going to specify a source directory for your provider files?
#
Workspaces #
Pros #
- Can easily switch between configurations of a single module
- Less root configuration folders to maintain, all similar workspaces can be run from the same directory
Cons #
- May be difficult to evaluate the resources deployed
- Doesn’t handle differences well between deployments
Copying Root Configuration Directories #
Pros #
- Your directory tree represents your infrastructure
- Only need to update tfvars file to adjust between deployments
Cons #
- Requires a lot of path references
- A lot of file duplication
- Default variable values are difficult to use because all potential variables must be used in the source configurations files
Using -chdir #
Pros #
- Deployment can be represented by a sinlge tfvars file
Cons #
- Requires path references
- Must track which source directory you deployed from
Creating main.tf configurations programmatically #
Pros #
- Easy to read
- Simple file deployment structure
Cons #
- Must maintain code to build configurations