Argo Image Updater

Definition

Argo Image Updater is an open-source tool designed to automate the process of updating container images in Kubernetes clusters managed by Argo CD. It monitors container image registries for new image versions and updates the Kubernetes manifests accordingly, ensuring that applications are always running the latest versions of their container images. This tool helps streamline the continuous delivery process by integrating seamlessly with Argo CD to manage application deployments.

Secure Settings Example

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: my-app
spec:
  source:
    repoURL: 'https://github.com/my-org/my-repo.git'
    path: 'deployments'
    targetRevision: HEAD
  destination:
    server: 'https://kubernetes.default.svc'
    namespace: 'my-namespace'
  syncPolicy:
    automated:
      prune: true
      selfHeal: true
  imageUpdater:
    interval: 5m
    registries:
      - name: my-registry
        url: 'https://registry.example.com'
        credentials:
          username: 'my-username'
          passwordSecret:
            name: 'registry-credentials'
            key: 'password'
    updateStrategy:
      matchTags: true
      semver: true

Insecure Settings Example

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: my-app
spec:
  source:
    repoURL: 'https://github.com/my-org/my-repo.git'
    path: 'deployments'
    targetRevision: HEAD
  destination:
    server: 'https://kubernetes.default.svc'
    namespace: 'my-namespace'
  syncPolicy:
    automated:
      prune: false
      selfHeal: false
  imageUpdater:
    interval: 1m
    registries:
      - name: my-registry
        url: 'https://registry.example.com'
        credentials:
          username: 'my-username'
          password: 'my-password' # Hardcoded credentials
    updateStrategy:
      matchTags: false
      semver: false