Repository navigation
chore: updated argo-cd to v3.6.1 - #1288
Open
vitalii-codefresh wants to merge 5 commits into
Open
vitalii-codefresh wants to merge 5 commits into
vitalii-codefresh wants to merge 5 commits into
Conversation
vitalii-codefresh
requested review from
a team and
masontikhonov
as code owners
November 11, 2026 13:39
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changelog
Breaking changes
Warning
This release bumps the bundled ArgoCD to v3.6.1.
Increased minimal supported version of BYOA up from 3.3.X to 3.4.X (supported range is now
>=3.4 <=3.6)ArgoCD 3.6 introduces the following breaking changes: More about changes in Argo CD here.
ARGOCD_REPO_OTLP_HEADERSis nowARGOCD_REPO_SERVER_OTLP_HEADERS. The old name is no longer read. The default manifests already use the new name, but custom Deployment patches or Helm values that set the old variable must be updated.otlp.insecurenow fully controls TLS:"true"(default) always uses plaintext. SettingOTEL_EXPORTER_OTLP_CERTIFICATE/ client cert env vars no longer enables TLS on its own, so setotlp.insecure: "false"if you relied on that. With"false",OTEL_EXPORTER_OTLP_INSECUREandhttp://endpoints no longer force plaintext. A component fails to start if its OTLP TLS env vars point to an unreadable CA or an incomplete client cert/key pair.otlp.insecure: "false", Argo CD also trusts the CA for the collector host fromargocd-tls-certs-cm, and honorsOTEL_EXPORTER_OTLP_CERTIFICATE,OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE,OTEL_EXPORTER_OTLP_CLIENT_KEY(mTLS) andOTEL_EXPORTER_OTLP_HEADERS. The application controller now mountsargocd-tls-certs-cm.=: each pair now splits on its first=, matching the--otlp-headersflag. Previously, such a value caused all headers to be dropped.AlwaysSample, the root sampling rate is now set with--otlp-sample-ratio/ARGOCD_<COMPONENT>_OTLP_SAMPLE_RATIO(default1.0keeps existing behavior). Sampling decisions propagate to repo-server and commit-server, so set the same ratio on all components. An inbound W3Ctraceparentmarked "not sampled" is now honored. An out-of-range orNaNflag value fails at startup; an invalid env var value is ignored with a warning.otelgrpcandotelhttpare nowv0.70.0(semantic conventions v1.42.0 / v1.43.0). Some span attribute names changed or were dropped, so Grafana dashboards and alerts may need updates.otelgrpcnow setsserver.address/server.portfrom the gRPC dial target rather than the resolved peer IP.--local-includepaths forargocd app diff: with--localand--server-side-generate, the defaults now also include*.tpl(Helm template helpers) andChart.lock, in addition to*.yaml,*.yml,*.json. Specifying--local-includereplaces the defaults entirely, so list every pattern you need. To restore pre-3.6 behavior:--local-include "*.yaml" --local-include "*.yml" --local-include "*.json".Behavioral changes:
controller.diff.server.sideis enabled, theargocd.argoproj.io/compare-options: ServerSideDiff=trueannotation is set, or (new in 3.6) theServerSideApply=truesync option is enabled. This adds kube-apiserver load, and validating webhooks now run during diff, so rejections appear as diff errors. To keep the legacy diff for an app withServerSideApply=true, set theServerSideDiff=falseannotation (it always takes precedence).PromotionStrategyandChangeTransferPolicynow reportHealthy(notProgressing) while a promotion is in progress. Automation that treatsProgressingas "promotion active" should use the health message or Promoter status fields instead.Updated health statusevent now adds a(Caused by ...)suffix naming up to three resources, for exampleUpdated health status: Healthy -> Degraded (Caused by apps/Deployment:default/api). Update any parser of these events to tolerate the suffix.API changes:
configHashfield on theClusterobject. It is computed at query time, not stored in the cluster secret, and should be treated as opaque.pkg/utils/kube/KubectlOptionsRunner.Create()now ignores its third argument (cmd *cobra.Command). It will be removed in the next major release.Features and enhancements
postgresql.cnpg.io/Database: reportsHealthyonly whenstatus.appliedis set andstatus.observedGenerationmatches the current generation.deletionMessageto override this.More about changes in Argo CD here.
Related tickets