- Version your Infrastructure
- Simplified configuration files over CloudFormation
- Infrastructure as code that is in lockstep with feature deployments
- Supports a Myriad of Cloud Providers
- Can spawn up infrastructure across different Cloud Platforms
- Infrastructure orchestration
- One click process to set/teardown everything
- Zip application to deploy & append version number to file
- cd into directory of environment to deploy
- First time ONLY in directory will need to
terraform init
for environment - When deploying to an environment:
- Execute
terraform plan -out=plan.pilot
to create plan file - Execute
terraform apply plan.pilot
to deploy to Pilot environment
- Execute
- More explicit deployment mechanism
- Less verbose deployment mechanism
- Easy to understand and organize files
- Need to create multiple initializations
- Version of application is a little muddy