separate groups (mindset) • GitOps focuses on ops (operating model) • GitOps could be used with or without DevOps and vice versa • Still, GitOps might be... The right way to do DevOps Alexis Richardson 9
pull pull deploy Advantages of GitOps • No access to cluster from outside (might also solve firewall/zone issues) • No credentials on CI server (neither cluster access nor for apps) • Forces declarative description • IaC is auditable • Self-healing • Scalability - one repo many applications 10
tips on criteria for tool selection, • comparison of ArgoCD and Flux • ArgoCD vs Flux (10/2022) cloudogu.com/blog/gitops-tools iX 4/2021 community.cloudogu.com/t/flux-or-argocd-the-great-controversy 16
platform teams • Adapt deployment process • Migrate applications • Adapt error handling and alerting • avoid failing late and silently • accustom to new notification mechanism • still, reason might be difficult to pinpoint 21
GitOps Repo pull CI Server GitOps operator OCI Registry push app code push infra code pull push pull deploy GitOps tools: Put infra in separate repo! See argo-cd.readthedocs.io/en/release-2.5/user-guide/best_practices 27
team, folder per stage+app (mixed with repo per app) • IaC either • lives in app repo and is pushed by CI-Server or • in GitOps repo (3rd party apps). • Promotion between stages: • commit to staging folder only ( protect production), • create short lived branches and pull requests for prod ├── staging │ └── application │ └── deployment.yaml └── production └── application └── deployment.yaml 38