A tool for running infrastructure as code (e.g. Terraform) anywhere with ease.
- Ability to change and test infrastructure changes locally with a production like environment
- Ability to make infrastructure changes without making pipeline changes
- Quality developer experience
- Container-based, execute anywhere and on any CI/CD system
- Multi-Region deployments built-in
- Handling groups of regions for data privacy regulations
- Enabling "terraservices"
- Keeping Your Pipelines Simple
- Plugin-based
Please see runiac.io for latest docs
We'd love to hear from you! Submit github issues for questions, issues or feedback.
Table of Contents generated with DocToc
See runiac in action on runiac.io
homebrew tap:
brew install optum/tap/runiac
manually:
Download the pre-compiled binaries from the releases page and copy to the desired location.
For more detailed examples of runiac, be sure to check out the starters on github!
To use runiac to deploy your infrastructure as code, you will need:
Docker
installed locallyruniac
installed locally
Execute runiac deploy -h
Please read CONTRIBUTING.md first.
runiac is only executed locally with unit tests. To verify changes with the example projects locally, one would need to build the runiac deploy container locally first.
Docker Build:
$ DOCKER_BUILDKIT=1 docker build -t runiacdeploydev .
We recommend adding an alias to install the cli locally:
alias runiacdev='(cd <LOCAL_PROJECT_LOCATION>/cmd/cli && go build -o $GOPATH/bin/runiacdev) && runiacdev'
This allows one to use the the examples
for iterating on runiac changes.
$ cd examples/...
$ runiacdev -a <YOUR_GCP_PROJECT_ID> -e nonprod --local --container runiacdeploydev
NOTE: If only making changes to the CLI, you do not need to build the container locally
--container runiacdeploydev