argocd: update dependency argoproj/argo-cd to v0.12.3#415
Conversation
Infro diff for e8579c8
Detailstime="2026-05-19T02:53:30Z" level=warning msg="Failed to invoke grpc call. Use flag --grpc-web in grpc calls. To avoid this warning message, use flag --grpc-web."
time="2026-05-19T02:53:39Z" level=warning msg="Failed to invoke grpc call. Use flag --grpc-web in grpc calls. To avoid this warning message, use flag --grpc-web."
===== coordination.k8s.io/Lease /db9c8771.cnpg.io ======
--- /tmp/argocd-diff961644130/db9c8771.cnpg.io-live.yaml
+++ /tmp/argocd-diff961644130/db9c8771.cnpg.io
@@ -0,0 +1,11 @@
+apiVersion: coordination.k8s.io/v1
+kind: Lease
+metadata:
+ annotations:
+ argocd.argoproj.io/tracking-id: cloudnative-pg:coordination.k8s.io/Lease:cloudnative-pg/db9c8771.cnpg.io
+ labels:
+ app.kubernetes.io/component: manager
+ app.kubernetes.io/instance: cloudnative-pg
+ app.kubernetes.io/name: cloudnative-pg
+ name: db9c8771.cnpg.io
+spec: {}
Detailstime="2026-05-19T02:53:40Z" level=warning msg="Failed to invoke grpc call. Use flag --grpc-web in grpc calls. To avoid this warning message, use flag --grpc-web."
time="2026-05-19T02:53:44Z" level=warning msg="Failed to invoke grpc call. Use flag --grpc-web in grpc calls. To avoid this warning message, use flag --grpc-web."
===== apps/Deployment external-dns/external-dns ======
--- /tmp/argocd-diff2297319729/external-dns-live.yaml
+++ /tmp/argocd-diff2297319729/external-dns
@@ -172,11 +172,6 @@
- --provider=aws
- --txt-owner-id=digitalocean-hashbang
- --txt-prefix=_owner.
- - --source=crd
- - --domain-filter=hashbang.sh
- - --managed-record-types=A
- - --managed-record-types=CNAME
- - --managed-record-types=TXT
env:
- name: AWS_REGION
value: us-west-2
Detailstime="2026-05-19T02:54:12Z" level=warning msg="Failed to invoke grpc call. Use flag --grpc-web in grpc calls. To avoid this warning message, use flag --grpc-web."
time="2026-05-19T02:54:22Z" level=warning msg="Failed to invoke grpc call. Use flag --grpc-web in grpc calls. To avoid this warning message, use flag --grpc-web."
===== apps/Deployment keycloak/keycloak ======
--- /tmp/argocd-diff2519661585/keycloak-live.yaml
+++ /tmp/argocd-diff2519661585/keycloak
@@ -259,7 +259,7 @@
name: keycloak-config-5k62mm682d
- secretRef:
name: keycloak-config-hmkt6446bt
- image: quay.io/keycloak/keycloak:26.6.1@sha256:26ae26445475f7fac5f90ee138b1bdb64324f5815fb16133ffdbdb122d97c4d8
+ image: quay.io/keycloak/keycloak:26.6.1@sha256:dea26401d06341095cc4ea9d66896200b55de5ca1daa1d2fcbe58493afa6e0ad
imagePullPolicy: IfNotPresent
livenessProbe:
failureThreshold: 3
Detailstime="2026-05-19T02:54:58Z" level=warning msg="Failed to invoke grpc call. Use flag --grpc-web in grpc calls. To avoid this warning message, use flag --grpc-web."
time="2026-05-19T02:55:04Z" level=warning msg="Failed to invoke grpc call. Use flag --grpc-web in grpc calls. To avoid this warning message, use flag --grpc-web."
===== apps/Deployment wkd/wkd ======
--- /tmp/argocd-diff504213653/wkd-live.yaml
+++ /tmp/argocd-diff504213653/wkd
@@ -232,7 +232,7 @@
value: enroll
- name: FOLDER
value: /tmp/keys
- image: kiwigrid/k8s-sidecar:2.7.1@sha256:2670f251f80d990635460c0116497a9cc3202069e8826f1a279af300ecd9f75e
+ image: kiwigrid/k8s-sidecar:2.7.3@sha256:694950d736c8b532eba4006527ccbdac98fefc9f30b3346ba2de50b6cad91c94
imagePullPolicy: IfNotPresent
name: watcher
resources: {} |
Renovate Ignore NotificationBecause you closed this PR without merging, Renovate will ignore this update ( If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR. |
This PR contains the following updates:
0dc6b1b57dd5bb925d5b03c3d09419ab9fb4225e→v0.12.3Release Notes
argoproj/argo-cd (argoproj/argo-cd)
v0.12.3Compare Source
Quick Start
Non-HA:
HA:
Changes since v0.12.2
v0.12.2Compare Source
Changes since v0.12.1
v0.12.1Compare Source
Changes since v0.12.0
deletionTimestamp(#1406)kustomize edit set image. (#1275)v0.12.0Compare Source
New Features
Improved UI
Many improvements to the UI were made, including:
Custom Health Assessments (CRD Health)
Argo CD has long been able to perform health assessments on resources, however this could only
assess the health for a few native kubernetes types (deployments, statefulsets, daemonsets, etc...).
Now, Argo CD can be extended to gain understanding of any CRD health, in the form of Lua scripts.
For example, using this feature, Argo CD now understands the CertManager Certificate CRD and will
report a Degraded status when there are issues with the cert.
Configuration Management Plugins
Argo CD introduces Config Management Plugins to support custom configuration management tools other
than the set that Argo CD provides out-of-the-box (Helm, Kustomize, Ksonnet, Jsonnet). Using config
management plugins, Argo CD can be configured to run specified commands to render manifests. This
makes it possible for Argo CD to support other config management tools (kubecfg, kapitan, shell
scripts, etc...).
High Availability
Argo CD is now fully HA. A set HA of manifests are provided for users who wish to run Argo CD in
a highly available manner. NOTE: The HA installation will require at least three different nodes due
to pod anti-affinity roles in the specs.
Improved Application Source
Additional Prometheus Metrics
Argo CD provides the following additional prometheus metrics:
Fuzzy Diff Logic
Argo CD can now be configured to ignore known differences for resource types by specifying a json
pointer to the field path to ignore. This helps prevent OutOfSync conditions when a user has no
control over the manifests. Ignored differences can be configured either at an application level,
or a system level, based on a group/kind.
Resource Exclusions
Argo CD can now be configured to completely ignore entire classes of resources group/kinds.
Excluding high-volume resources improves performance and memory usage, and reduces load and
bandwidth to the Kubernetes API server. It also allows users to fine-tune the permissions that
Argo CD needs to a cluster by preventing Argo CD from attempting to watch resources of that
group/kind.
gRPC-Web Support
The argocd CLI can be now configured to communicate to the Argo CD API server using gRPC-Web
(HTTP1.1) using a new CLI flag
--grpc-web. This resolves some compatibility issues users wereexperiencing with ingresses and gRPC (HTTP2), and should enable argocd CLI to work with virtually
any load balancer, ingress controller, or API gateway.
CLI features
Argo CD introduces some additional CLI commands:
argocd app edit APPNAME- to edit an application spec using preferred EDITORargocd proj edit PROJNAME- to edit an project spec using preferred EDITORargocd app patch APPNAME- to patch an application specargocd app patch-resource APPNAME- to patch a specific resource which is part of an applicationBreaking Changes
Label selector changes, dex-server rename
The label selectors for deployments were been renamed to use kubernetes common labels
(
app.kubernetes.io/name=NAMEinstead ofapp=NAME). Since K8s deployment label selectors areimmutable, during an upgrade from v0.11 to v0.12, the old deployments should be deleted using
--cascade=falsewhich allows the new deployments to be created without introducing downtime.Once the new deployments are ready, the older replicasets can be deleted. Use the following
instructions to upgrade from v0.11 to v0.12 without introducing downtime:
Deprecation of spec.source.componentParameterOverrides
For declarative application specs, the
spec.source.componentParameterOverridesfield is nowdeprecated in favor of application source specific config. They are replaced with new fields
specific to their respective config management. For example, a Helm application spec using the
legacy field:
should move to:
Argo CD will automatically duplicate the legacy field values to the new locations (and vice versa)
as part of automatic migration. The legacy
spec.source.componentParameterOverridesfield will bekept around for the v0.12 release (for migration purposes) and will be removed in the next Argo CD
release.
Removal of spec.source.environment and spec.source.valuesFiles
The
spec.source.environmentandspec.source.valuesFilesfields, which were deprecated in v0.11,are now completely removed from the Application spec.
API/CLI compatibility
Due to API spec changes related to the deprecation of componentParameterOverrides, Argo CD v0.12
has a minimum client version of v0.12.0. Older CLI clients will be rejected.
Changes since v0.11:
argocd app set -prequired repo privileges. (#1280)v0.11.2Compare Source
v0.11.1Compare Source
kubctl convertissue preventing deployment of extensions/NetworkPolicy (#1012)app diff --localcommand (#1008)v0.11.0Compare Source
This is Argo CD's biggest release ever and introduces a completely redesigned controller architecture.
New Features
Performance & Scalability
The application controller has a completely redesigned architecture which improved performance and
scalability during application reconciliation.
This was achieved by introducing an in-memory, live state cache of lightweight Kubernetes object
metadata. During reconciliation, the controller no longer performs expensive, in-line queries of app
related resources in K8s API server, instead relying on the metadata available in the live state
cache. This dramatically improves performance and responsiveness, and is less burdensome to the K8s
API server.
Object relationship visualization for CRDs
With the new controller design, Argo CD is now able to understand ownership relationship between
all Kubernetes objects, not just the built-in types. This enables Argo CD to visualize
parent/child relationships between all kubernetes objects, including CRDs.
Multi-namespaced applications
During sync, Argo CD will now honor any explicitly set namespace in a manifest. Manifests without a
namespace will continue deploy to the "preferred" namespace, as specified in app's
spec.destination.namespace. This enables support for a class of applications which install tomultiple namespaces. For example, Argo CD can now install the
prometheus-operator
helm chart, which deploys some resources into
kube-system, and others into theprometheus-operatornamespace.Large application support
Full resource objects are no longer stored in the Application CRD object status. Instead, only
lightweight metadata is stored in the status, such as a resource's sync and health status.
This change enabled Argo CD to support applications with a very large number of resources
(e.g. istio), and reduces the bandwidth requirements when listing applications in the UI.
Resource lifecycle hook improvements
Resource lifecycle hooks (e.g. PreSync, PostSync) are now visible/manageable from the UI.
Additionally, bare Pods with a restart policy of Never can now be used as a resource hook, as an
alternative to Jobs, Workflows.
K8s recommended application labels
The tracking label for resources has been changed to use
app.kubernetes.io/instance, asrecommended in Kubernetes recommended labels,
(changed from
applications.argoproj.io/app-name). This will enable applications managed by Argo CDto interoperate with other tooling which are also converging on this labeling, such as the
Kubernetes dashboard. Additionally, Argo CD no longer injects any tracking labels at the
spec.template.metadatalevel.External OIDC provider support
Argo CD now supports auth delegation to an existing, external OIDC providers without the need for
running Dex (e.g. Okta, OneLogin, Auth0, Microsoft, etc...)
The optional, Dex IDP OIDC provider is still bundled as part of the
default installation, in order to provide a seamless out-of-box experience, enabling Argo CD to
integrate with non-OIDC providers, and to benefit from Dex's full range of
connectors.
OIDC group bindings to Project Roles
OIDC group claims from an OAuth2 provider can now be bound to a Argo CD project roles. Previously,
group claims could only be managed in the centralized ConfigMap,
argocd-rbac-cm. They can now bemanaged at a project level. This enables project admins to self service access to applications
within a project.
Declarative Argo CD configuration
Argo CD settings can be now be configured either declaratively, or imperatively. The
argocd-cmConfigMap now has a
repositoriesfield, which can reference credentials in a normal Kubernetessecret which you can create declaratively, outside of Argo CD.
Helm repository support
Helm repositories can be configured at the system level, enabling the deployment of helm charts
which have a dependency to external helm repositories.
Breaking changes:
Argo CD's resource names were renamed for consistency. For example, the application-controller
deployment was renamed to argocd-application-controller. When upgrading from v0.10 to v0.11,
the older resources should be pruned to avoid inconsistent state and controller in-fighting.
As a consequence to moving to recommended kubernetes labels, when upgrading from v0.10 to v0.11,
all applications will immediately be OutOfSync due to the change in tracking labels. This will
correct itself with another sync of the application. However, since Pods will be recreated, please
take this into consideration, especially if your applications are configured with auto-sync.
There was significant reworking of the
app.statusfields to reduce the payload size, simplifythe datastructure and remove fields which were no longer used by the controller. No breaking
changes were made in
app.spec.An older Argo CD CLI (v0.10 and below) will not be compatible with Argo CD v0.11. To keep
CI pipelines in sync with the API server, it is recommended to have pipelines download the CLI
directly from the API server https://${ARGOCD_SERVER}/download/argocd-linux-amd64 during the CI
pipeline.
Changes since v0.10:
v0.10.6Compare Source
v0.10.5Compare Source
v0.10.4Compare Source
v0.10.3Compare Source
v0.10.2Compare Source
v0.10.1Compare Source
v0.10.0Compare Source
Changes since v0.9:
yamlfiles while creating a Helm App (#664)values-(issue #663)v0.9.2Compare Source
v0.9.1Compare Source
v0.9.0Compare Source
Notes about upgrading from v0.8
(e.g. Namespaces, ClusterRoles, CustomResourceDefinitions). When upgrading from v0.8 to v0.9, to
match the behavior of v0.8 (which did not have restrictions on deploying resources) and continue to
allow deployment of cluster-scoped resources, an additional command should be run:
The above command allows the
defaultproject to deploy any cluster-scoped resources which matchesthe behavior of v0.8.
server.crtandserver.keyto the standardtls.crtandtls.keykeys. This enables Argo CDto integrate better with Ingress and cert-manager. When upgrading to v0.9, the
server.crtandserver.keykeys in argocd-secret should be renamed to the new keys.Changes since v0.8:
v0.8.2Compare Source
argocd sync/waitv0.8.1Compare Source
v0.8.0Compare Source
Notes about upgrading from v0.7
RBAC policy rules, need to be rewritten to include one extra column with the effect:
allowordeny. For example, if a rule was written like this:Changes since v0.7:
argocd app waitprinting incorrect Sync output (issue #542)v0.7.2Compare Source
v0.7.1Compare Source
argocd relogin(#475)v0.7.0Compare Source
argocd relogincommand as a convenience around login to current contextv0.6.2Compare Source
v0.6.1Compare Source
v0.6.0Compare Source
v0.5.4Compare Source
v0.5.3Compare Source
v0.5.2Compare Source
v0.5.1Compare Source
v0.5.0Compare Source
v0.4.7Compare Source
v0.4.6Compare Source
v0.4.5Compare Source
v0.4.4Compare Source
v0.4.3Compare Source
v0.4.2Compare Source
v0.4.1Compare Source
v0.4.0Compare Source
v0.3.3Compare Source
v0.3.2Compare Source
v0.3.1Compare Source
v0.3.0Compare Source
[
v0.2.0](https://redirect.github.com/argoproj/argo-cd/bloConfiguration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.