Skip to content

argocd

This example demonstrates how to use ArgoCD with Zarf to deploy the stefanprodan/podinfo app using GitOps.

It uses a vanilla configuration of ArgoCD with upstream containers.

To learn more about how Zarf handles git repositories, see the Git Repositories section of the package components documentation.

kind: ZarfPackageConfig
metadata:
name: argocd
description: Example showcasing installing ArgoCD
components:
- name: argocd-helm-chart
required: true
charts:
- name: argo-cd
version: 5.54.0
namespace: argocd
url: https://argoproj.github.io/argo-helm
releaseName: argocd-baseline
valuesFiles:
- baseline/values.yaml
images:
- docker.io/library/redis:7.0.15-alpine
- quay.io/argoproj/argocd:v2.9.6
# Cosign artifacts for images - argocd - argocd-helm-chart
- quay.io/argoproj/argocd:sha256-2dafd800fb617ba5b16ae429e388ca140f66f88171463d23d158b372bb2fae08.sig
- quay.io/argoproj/argocd:sha256-2dafd800fb617ba5b16ae429e388ca140f66f88171463d23d158b372bb2fae08.att
- name: argocd-apps
required: true
charts:
- name: argocd-apps
version: 1.6.1
namespace: podinfo
url: https://argoproj.github.io/argo-helm
releaseName: argocd-apps
valuesFiles:
- apps/values.yaml
repos:
- https://github.com/stefanprodan/podinfo.git
images:
- ghcr.io/stefanprodan/podinfo:6.4.0
actions:
onDeploy:
after:
# This will use a wait action to wait for the pods to be ready
- description: Podinfo pod to be ready via wait action
wait:
cluster:
kind: pod
name: app.kubernetes.io/name=apps-podinfo
namespace: podinfo
condition: ready