BitOps is a way to describe the infrastructure and things deployed onto that infrastructure for multiple environments in a single place called an Operations Repo.
- Configurable: Configure how you want bitops to deploy your application with environment variables or yaml
- Event Hooks: If bitops doesn't have built-in support for your usecase, execute arbitrary bash scripts at different points in bitops' lifecycle.
- Run Anywhere: By bundling all logic in bitops, you can have the same experience regardless of which pipeline service runs your CI. You can even run bitops locally!
How it works
BitOps is a boiler plate docker image for DevOps work. An operations repository is mounted to a bitops image's
/opt/bitops_deployment directory. BitOps will
- Auto-detect any configuration belonging to one of its supported tools
- Loop through each tool and
- Run any pre-execute hooks
- Read in
- Execute the tool
- Run any post-execute hooks
BitOps is packaged as a docker image and is available on dockerhub.
docker pull bitovi/bitops cd $YOUR_OPERATIONS_REPO docker run bitovi/bitops -v $(pwd):/opt/bitops_deployment
BitOps is configured in 3 steps:
- Select your environment
- Configure aceess to your cloud provider
- Configure how you want your deployment tools to execute
- Provision infrastructure with CloudFormation
- Provision infrastructure with Terraform
- Configure infrastructure with Ansible
- Deploy to kubernetes with Helm
Supported Cloud Providers
Support / Contributing
We welcome any contributions from the community with open arms. Take a look at our Contributing guide.
Come hangout with us on Slack!