GitOps ● Ops practices using Git ● Use Git as source of truth ● Drive operations through git repo ● Get version control, history, peer review, and rollback ● Continuous delivery - Automated pipelines ● Webhooks: push to trigger build/test ● PRs & merge branch to deploy
GitOps - Patterns ● Use declarative configuration to define application and services ● All changes go through git review process, none using kubectl ● Use an operator in the cluster to drive observed state to desired state, as declared by the configuration in git ● pre-push hook to create manifests ○ Render templates for correct env ○ Secrets ● pre-receive hook or webhooks to build artifacts and do kubectl set-image ● Power to developer ● Own tooling