Skip to content

GitOps & Deployments Toolkit

Toolkit Track | 4 Modules | ~3 hours total

The GitOps & Deployments Toolkit covers the essential tools for declarative, Git-driven Kubernetes deployments. These tools implement the GitOps methodology—using Git as the single source of truth for infrastructure and application configuration.

This toolkit builds on the concepts from GitOps Discipline and shows you how to implement those principles with production-grade tools.

Before starting this toolkit:

  • GitOps Discipline — GitOps principles and practices
  • Basic Kubernetes knowledge (Deployments, Services)
  • Git fundamentals
  • kubectl experience
#ModuleComplexityTime
2.1ArgoCD[COMPLEX]45-50 min
2.2Argo Rollouts[COMPLEX]45-50 min
2.3Flux[COMPLEX]40-45 min
2.4Helm & Kustomize[MEDIUM]35-40 min

After completing this toolkit, you will be able to:

  1. Deploy with ArgoCD — Applications, sync strategies, App of Apps, RBAC
  2. Implement progressive delivery — Canary, blue-green, automated analysis
  3. Use Flux GitOps Toolkit — Sources, Kustomizations, image automation
  4. Package with Helm — Charts, templates, dependencies, releases
  5. Customize with Kustomize — Bases, overlays, patches, components
WHICH GITOPS TOOL?
─────────────────────────────────────────────────────────────────
Need a UI?
├── Yes → ArgoCD
│ • Great visualization
│ • Developer-friendly
│ • Easy onboarding
└── No → Flux
• CLI/automation-first
• Image automation built-in
• Lower resource usage
Need progressive delivery?
├── Yes → Argo Rollouts
│ • Canary deployments
│ • Blue-green switches
│ • Automated analysis
└── No → Standard Deployment
• Rolling updates
• Simpler setup
Package management?
├── Third-party apps → Helm
│ • Chart repositories
│ • Version management
│ • Release tracking
└── Own apps → Kustomize
• No templates
• Pure YAML
• Environment overlays
BEST PRACTICE: Combine tools!
• Helm for packaging
• Kustomize for environment variants
• ArgoCD/Flux for deployment
• Argo Rollouts for progressive delivery
┌─────────────────────────────────────────────────────────────────┐
│ GITOPS DEPLOYMENT STACK │
├─────────────────────────────────────────────────────────────────┤
│ │
│ GIT REPOSITORY (Source of Truth) │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ • Helm charts │ │
│ │ • Kustomize overlays │ │
│ │ • Plain YAML manifests │ │
│ │ • Application configurations │ │
│ └────────────────────────────┬─────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ GITOPS CONTROLLER │ │
│ │ │ │
│ │ ┌─────────────────┐ ┌─────────────────┐ │ │
│ │ │ ArgoCD │ OR │ Flux │ │ │
│ │ │ │ │ │ │ │
│ │ │ • Sync to Git │ │ • Reconcile │ │ │
│ │ │ • Detect drift │ │ • Image update │ │ │
│ │ │ • Visualize │ │ • Notifications │ │ │
│ │ └─────────────────┘ └─────────────────┘ │ │
│ └────────────────────────────┬─────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ PROGRESSIVE DELIVERY │ │
│ │ │ │
│ │ ┌─────────────────┐ │ │
│ │ │ Argo Rollouts │ │ │
│ │ │ │ │ │
│ │ │ • Canary │ │ │
│ │ │ • Blue-Green │ │ │
│ │ │ • Analysis │ │ │
│ │ └─────────────────┘ │ │
│ └────────────────────────────┬─────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ KUBERNETES CLUSTER │ │
│ │ │ │
│ │ Desired state from Git = Actual state in cluster │ │
│ └──────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘
Module 2.1: ArgoCD
│ GitOps with UI, sync strategies
Module 2.2: Argo Rollouts
│ Progressive delivery, canary, analysis
Module 2.3: Flux
│ GitOps toolkit, image automation
Module 2.4: Helm & Kustomize
│ Package management, overlays
[Toolkit Complete] → CI/CD Pipelines Toolkit
PrincipleArgoCD ImplementationFlux Implementation
DeclarativeApplication CRDKustomization/HelmRelease
VersionedGit repo as sourceGitRepository source
AutomatedAuto-sync policyReconciliation loop
AuditableGit history + UIGit history + events
DEPLOYMENT SCENARIO TOOL RECOMMENDATION
─────────────────────────────────────────────────────────────────
Installing Prometheus → Helm chart
├── Available from chart repo
├── Many configuration options
└── Upstream maintains it
Your microservice to 3 envs → Kustomize overlays
├── Same base, different configs
├── You control the manifests
└── Simple differences
Breaking change in API → Argo Rollouts canary
├── Need gradual rollout
├── Want automated rollback
└── Have metrics to analyze
100 apps across 10 clusters → ArgoCD ApplicationSets
├── Template-based generation OR Flux multi-cluster
├── Consistent patterns
└── Central visibility

“GitOps is not about tools—it’s about the practice of using Git as source of truth. These tools make that practice operational.”