From 51fa4e8a54319483964c2782183ffa4dcc3e0e76 Mon Sep 17 00:00:00 2001 From: Alexandre Gaudreault Date: Tue, 2 Sep 2025 14:51:47 -0400 Subject: [PATCH] fix: do not change CronJob to progressing (#24269) Signed-off-by: Alexandre Gaudreault --- docs/operator-manual/upgrading/3.1-3.2.md | 33 ++++++++++++++++------- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/docs/operator-manual/upgrading/3.1-3.2.md b/docs/operator-manual/upgrading/3.1-3.2.md index 4431414205..b2eff599c7 100644 --- a/docs/operator-manual/upgrading/3.1-3.2.md +++ b/docs/operator-manual/upgrading/3.1-3.2.md @@ -2,7 +2,7 @@ ## Argo CD Now Respects Kustomize Version in `.argocd-source.yaml` -Argo CD provides a way to [override Application `spec.source` values](../../user-guide/parameters.md#store-overrides-in-git) +Argo CD provides a way to [override Application `spec.source` values](../../user-guide/parameters.md#store-overrides-in-git) using the `.argocd-source.yaml` file. Before Argo CD v3.2, you could set the Kustomize version in the Application's `.spec.source.kustomize.version` field, @@ -17,23 +17,38 @@ kustomize: ## Deprecated fields in the repo-server GRPC service -The repo-server's GRPC service is generally considered an internal API and is not recommended for use by external -clients. No user-facing services or functionality have changed. However, if you are using the repo-server's GRPC service +The repo-server's GRPC service is generally considered an internal API and is not recommended for use by external +clients. No user-facing services or functionality have changed. However, if you are using the repo-server's GRPC service directly, please note field deprecations in the following messages. -The `kustomizeOptions.binaryPath` field in the `ManifestRequest` and `RepoServerAppDetailsQuery` messages has been -deprecated. Instead of calculating the correct binary path client-side, the client is expected to populate the -`kustomizeOptions.versions` field with the [configured Kustomize binary paths](../../user-guide/kustomize.md#custom-kustomize-versions). -This allows the repo-server to select the correct binary path based on the Kustomize version configured in the +The `kustomizeOptions.binaryPath` field in the `ManifestRequest` and `RepoServerAppDetailsQuery` messages has been +deprecated. Instead of calculating the correct binary path client-side, the client is expected to populate the +`kustomizeOptions.versions` field with the [configured Kustomize binary paths](../../user-guide/kustomize.md#custom-kustomize-versions). +This allows the repo-server to select the correct binary path based on the Kustomize version configured in the Application's source field as well as any [overrides configured via git](../../user-guide/parameters.md#store-overrides-in-git). The `kustomizeOptions.binaryPath` will continue to be respected when `kustomizeOptions.versions` is not set, but this is -not recommended. It will prevent overrides configured via git from being respected. The `kustomizeOptions.binaryPath` +not recommended. It will prevent overrides configured via git from being respected. The `kustomizeOptions.binaryPath` field will be removed in a future release. If the repo-server encounters a request with the `kustomizeOptions.binaryPath` field set, it will log a warning message: > kustomizeOptions.binaryPath is deprecated, use KustomizeOptions.versions instead -The `ManifestRequest` and `RepoServerAppDetailsQuery` messages are used by the following GRPC services: +The `ManifestRequest` and `RepoServerAppDetailsQuery` messages are used by the following GRPC services: `GenerateManifest`, `GenerateManifestWithFiles`, and `GetAppDetails`. + +## CronJob Health + +This realease introduce the addition of CronJob's health, a longtime omitted heath status for a native Kubernetes resource. +The health of a CronJob is based on whether or not Jobs are currently running, and if the last completed Job was successful. + +After the upgrade, Application's status may transition to `Degraded`, `Progressing` or `Suspended` depending on the CronJob health. + +If the CronJob is permanently `Suspended`, then the aggregated health of the Application will now be `Suspended` instead of `Healthy`. +If the CronJob is permanently running jobs, then the aggregated health of the Application will now be `Progressing` instead of `Healthy`. + +If you do not want your CronJob to affect the Application's aggregated Health, you can configure the annotation +`argocd.argoproj.io/ignore-healthcheck: "true"` on the CronJob resource. + +The health can also be configured globally using the `resource.customizations.health.batch_CronJob` configuration to change the default behaviour.