Is a branch within DevOps that is focused on automation through configuration in Git repositories. That configuration is then used to setup and update environments and services.
Using git operations such as push
, and pull requests
we can automate what happens next.
This can integrate with for example Terraform and Ansible workflows, and it can integrate with CI/CD pipelines such as build with AWS CodePipeline.
It’s a different paradigm from traditional DevOps that may have more fractured setups because there are various teams with different scenarios to automate.
The GitOps concept requires some getting used to. But it has some definitive advantages;
- Efficiency improvements because everything is in your git repository.
- A better developer experience, with each pull requests updates are automatically applied to the environments related.
- Integrates well with Docker and Kubernetes. Updating the cluster as your git repository changes automatically.