Skip to content

GitOps Workflows

Kupe Cloud uses managed Argo CD for application delivery, but the workflow is still standard GitOps. Git holds the desired state, Argo CD reconciles it, and promotion happens by changing Git rather than by applying manifests directly to the cluster.

  1. Update manifests, Helm values, or Kustomize overlays in Git.
  2. Open a pull request and review the change.
  3. Merge the change for the target environment.
  4. Let Argo CD reconcile the Application.
  5. Validate rollout health, routing, logs, and metrics.
  6. Promote the same change to the next environment through Git.

Kupe Cloud does not require a specific repo layout, but the most maintainable setups keep environment differences explicit.

Typical patterns include:

  • one repo per application, with environment overlays or values files
  • one Argo Application per environment
  • small, deliberate differences between dev, staging, and prod

For example:

my-app/
base/
overlays/
dev/
staging/
prod/

A simple promotion model works well for most teams:

  1. Deploy first to a development cluster.
  2. Validate the change with real traffic, logs, and metrics.
  3. Promote by pull request into the next environment.
  4. Let Argo CD reconcile the destination cluster.
  5. Repeat the same process for production.

This keeps promotion auditable and makes it clear which Git change reached each environment.

Argo CD supports several sync modes. The right choice depends on how tightly you want Git to control the cluster.

PolicyBehaviorTypical use
Manual syncChanges wait for approval in Argo CDProduction changes with stricter release control
Auto syncNew Git commits sync automaticallyFast-moving development environments
Auto sync + pruneResources removed from Git are deleted from the clusterMature GitOps setups that want clean reconciliation
Auto sync + self-healManual drift in the cluster is corrected automaticallyTeams that want Git to remain authoritative

Manual sync is often the safest starting point for production. Development and staging usually benefit from more automation.

Drift happens when the live cluster no longer matches Git.

Common causes include:

  • manual kubectl apply changes
  • emergency hotfixes made directly in the cluster
  • resources created outside the Argo-managed source

When selfHeal is enabled, Argo CD will correct that drift automatically. When it is disabled, drift remains visible in the Argo UI until you sync again.

The cleanest model is to treat Git as the source of truth and avoid direct changes in managed namespaces wherever possible.

On Kupe Cloud, the safest rollback is usually a Git revert:

  1. Revert the commit that introduced the issue.
  2. Merge the revert through the normal review path.
  3. Let Argo CD reconcile back to the previous known-good state.
  4. Validate health, traffic, logs, and metrics before promoting again.

This keeps rollback history visible and avoids hidden changes that never made it back to Git.

After every deployment or promotion, check:

  • Argo CD app status is Synced and Healthy
  • workload rollout completed successfully
  • service endpoints are ready
  • HTTPRoute is accepted if the app is externally exposed
  • logs and metrics look normal for the change window

If the change affects user traffic, validate the route and application behavior before promoting it any further.