WORK IN PROGRESS - DO NOT USE!
This is a reference for automated Terraform pipelines using Jenkins.
For the time being this repository includes a single pipeline. More pipelines might be added in the future.
The pipeline requires a Jenkins server with the following plugins installed:
- Pipeline
- Git Plugin
- AnsiColor Plugin
- Workspace Cleanup Plugin
- Email-ext plugin
- AWS SQS Plugin
- Pipeline Utility Steps
The pipeline relies on multiple downstream jobs which may run in parallel. To support this, Jenkins must have enough Build Executors enabled.
In addition, the pipeline relies on a Terraform binary to be present at
/usr/local/bin/terraform
(this path can be changed by editing a variable in the Jenkinsfile).
- Backend configuration for development
- Separate the backend config into a separate file and not load it when developing?
- Automated plan on feature branch creation?
- Notify a committer about a pending approval (with the plan output)
- Currently there is a bug which causes missed emails in concurrent builds.
- Safety-related improvements and bug fixes
- Only apply on
master
branch