Skip to content

v1.7 to 1.8

The argocd-application-controller converted to StatefulSet

The argocd-application-controller has been converted to StatefulSet. That means you need to manually delete argocd-application-controller Deployment after upgrading. Similarly if you decided to rollback to v1.7 don't forget to delete argocd-application-controller StatefulSet.

Health assessment of argoproj.io/Application CRD has been removed

The health assessment of argoproj.io/Application CRD has been removed (see #3781 for more information). You might need to restore it if you are using app-of-apps pattern and orchestrating synchronization using sync waves. Add the following resource customization in argocd-cm ConfigMap:

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: argocd-cm
  namespace: argocd
  labels:
    app.kubernetes.io/name: argocd-cm
    app.kubernetes.io/part-of: argocd
data:
  resource.customizations: |
    argoproj.io/Application:
      health.lua: |
        hs = {}
        hs.status = "Progressing"
        hs.message = ""
        if obj.status ~= nil then
          if obj.status.health ~= nil then
            hs.status = obj.status.health.status
            if obj.status.health.message ~= nil then
              hs.message = obj.status.health.message
            end
          end
        end
        return hs

To modify an existing installation with no existing resources.customizations, you can save the data: stanza to file and patch the configmap with e.g.: kubectl -n argocd patch configmaps argocd-cm --patch-file argocd-cm-patch.yaml

gRPC metrics are disabled by default

The gRPC metrics are not exposed by default by argocd-server and argocd-repo-server anymore. These metrics appear to be too expensive so we've decided to disable them by default. Metrics can be enabled using ARGOCD_ENABLE_GRPC_TIME_HISTOGRAM=true environment variable.

From here on you can follow the regular upgrade process.