This version removes support for:
- deprecated repository credentials (parameter
configs.repositoryCredentials
) - option to run application controller as a Deployment
- the parameters
server.additionalApplications
andserver.additionalProjects
Please carefully read the following section if you are using these parameters!
In order to upgrade Applications and Projects safely against CRDs' upgrade, server.additionalApplications
and server.additionalProjects
are moved to argocd-apps.
If you are using server.additionalApplications
or server.additionalProjects
, you can adopt to argocd-apps as below:
- Add helm.sh/resource-policy annotation to avoid resources being removed by upgrading Helm chart
You can keep your existing CRDs by adding "helm.sh/resource-policy": keep
on additionalAnnotations
, under server.additionalApplications
and server.additionalProjects
blocks, and running helm upgrade
.
e.g:
server:
additionalApplications:
- name: guestbook
namespace: argocd
additionalLabels: {}
additionalAnnotations:
"helm.sh/resource-policy": keep # <-- add this
finalizers:
- resources-finalizer.argocd.argoproj.io
project: guestbook
source:
repoURL: https://github.com/argoproj/argocd-example-apps.git
targetRevision: HEAD
path: guestbook
directory:
recurse: true
destination:
server: https://kubernetes.default.svc
namespace: guestbook
syncPolicy:
automated:
prune: false
selfHeal: false
ignoreDifferences:
- group: apps
kind: Deployment
jsonPointers:
- /spec/replicas
info:
- name: url
value: https://argoproj.github.io/
You can also keep your existing CRDs by running the following scripts.
# keep Applications
for app in "guestbook"; do
kubectl annotate --overwrite application $app helm.sh/resource-policy=keep
done
# keep Projects
for project in "guestbook"; do
kubectl annotate --overwrite appproject $project helm.sh/resource-policy=keep
done
-
Upgrade argo-cd Helm chart to v5.0.0
-
Remove keep helm.sh/resource-policy annotation
# delete annotations from Applications
for app in "guestbook"; do
kubectl annotate --overwrite application $app helm.sh/resource-policy-
done
# delete annotations from Projects
for project in "guestbook"; do
kubectl annotate --overwrite appproject $project helm.sh/resource-policy-
done