- One repository holds the application code, resource definitions, configuration data, and container images.
- The other repository contains the Kubernetes manifests. These YAML files detail the desired state of the cluster, including key resources such as Deployments, Services, Ingresses, ConfigMaps, and Secrets.
- A developer commits new changes to the application code repository.
- A CI pipeline is triggered, executing several steps:
- Running unit tests
- Building artifacts
- Constructing a Docker image
- Pushing the image to a container registry

Beyond automated deployments, GitOps with ArgoCD provides a reliable rollback mechanism. In case of issues or failures, you can revert to a previously stable version using the following commands: