Argo CD With Helm: Charts, Values, and Versioned Releases
Helm vs. Plain Kubernetes Resources
Helm is the package manager for Kubernetes, the same way apt is for Debian-based systems and yum or dnf is for Red Hat-based systems. But it is more than a package manager. Helm simplifies the deployment and configuration management of Kubernetes applications. It lets you define, install, and upgrade applications using templates you can reuse across environments.
Helm lets you parameterize Kubernetes manifests instead of hardcoding values into them. That is the difference that matters here: a plain manifest is fixed, a Helm chart is a template plus a set of values.
In our previous examples, when we deployed our todo app, we created Kubernetes resources as plain YAML files and an Argo CD Application to manage their lifecycle.
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: todo-app
namespace: argocd
spec:
destination:
namespace: default
server: https://kubernetes.default.svc
project: default
source:
path: manifests
repoURL: $GITLAB_URL
targetRevision: main
syncPolicy:
automated:
prune: true
selfHeal: true
allowEmpty: false
[...]
GitOps the Hard Way, with Argo CD
Build Real GitOps Pipelines From Empty Clusters to Automated DeploysEnroll now to unlock all content and receive all future updates for free.
