Awesome
<div align="center">Argo Watcher
The project bridges traditional pipelines and GitOps, improving deployment visibility with Argo CD Image Updater and a built-in GitOps repo updater
<img src="https://raw.githubusercontent.com/shini4i/assets/main/src/argo-watcher/demo.png" alt="Showcase" height="441" width="680"> </div>Why Use Argo Watcher
Argo Watcher not only addresses the critical challenge of visibility during deployments with Argo CD Image Updater but also introduces optional built-in image updater.
It actively monitors the ArgoCD API for application changes and synchronizes the status of your image-related modifications, streamlining and potentially accelerating your deployment processes.
Prerequisites
- ArgoCD
- Argo CD Image Updater (we encourage you to try out built-in GitOps repo updater instead)
- CI/CD solution of your choice
Possible workflow
A possible workflow with Argo Watcher:
- Build and Deploy: Build a new Docker image of your application and push it to your image repository.
- Monitoring Setup: Run an Argo Watcher Client job after the new image is pushed. This job oversees the deployment process.
- Image Update in GitOps repo: Argo CD Image Updater or Argo Watcher commits the updated image tag to the GitOps repository, triggering deployment.
- Deployment Monitoring: Argo Watcher monitors and reports the deployment status in real-time.
- Pipeline Status Reporting: The client returns an exit code reflecting the deployment task status, marking the workflow's completion.
[!TIP] In addition to pipeline logs, the whole process can be observed through the web UI.
Documentation
The up to date documentation is available here: argo-watcher.readthedocs.io.
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.