Skip to content

A service that bridges traditional pipelines and GitOps, improving deployment visibility. Includes a built-in GitOps repo updater.

License

Notifications You must be signed in to change notification settings

shini4i/argo-watcher

Repository files navigation

Argo Watcher

Improve visibility of deployments managed by Argo CD Image Updater

GitHub Actions GitHub go.mod Go version GitHub release (latest by date) Coverage Go Report Card GitHub

Showcase

Why use Argo Watcher

Argo Watcher solves an essential problem of visibility when deploying projects with Argo CD Image Updater.

Argo Watcher monitors ArgoCD API for changes in your application and syncs the status for your image-related changes.

Prerequisites

Argo Watcher is a standalone application, for it is designed to work with:

  1. ArgoCD
  2. Argo CD Image Updater
  3. CI/CD solution of your choice

Possible workflow

The workflow for deployment might be the following

  1. Build and push a new image of your application
  2. The next step should be a job that runs Argo Watcher Client, which triggers deployment monitoring
  3. Argo CD Image Updater detects a new image and commits the changes to GitOps repo that starts the deployment
  4. Throughout the deployment, ArgoWatcher monitors the current status of the Application
  5. The client returns the exit code based on the resulting task status, marking the pipeline as either successful or failed
A simplified diagram
Showcase

Documentation

  • Installation instructions and more information can be found in the docs.
  • Development instructions can be found in the docs.
  • A short story about why this project was created can be found here.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.