I believe this issue was introduced in the above change. The check has two separate loops. The first section checks all conditions for type = "Issuing" and status = "True" and if found, sets the health status to Progressing.
Code:
-- Always Handle Issuing First to ensure consistent behaviour
for i, condition in ipairs(obj.status.conditions) do
if condition.type == "Issuing" and condition.status == "True" then
hs.status = "Progressing"
hs.message = condition.message
return hs
end
When presented with the following status conditions:
status:
conditions:
- lastTransitionTime: "2024-04-09T23:38:04Z"
message: Certificate is up to date and has not expired
observedGeneration: 1
reason: Ready
status: "True"
type: Ready
- lastTransitionTime: "2024-06-08T22:38:03Z"
message: Renewing certificate as renewal was scheduled at 2024-06-08 22:38:03
+0000 UTC
observedGeneration: 1
reason: Renewing
status: "True"
type: Issuing
The health check will always set to progressing, even though the renewal has been issued successfully.
To Reproduce
Generate a certificate, and wait for renewal. Once the renewal has been issued the health status will stay in Progressing in ArgoCD.
Expected behavior
After the renewal has been successfully issued the health status should show Ready.
Checklist:
argocd version
.Describe the bug
https://github.com/argoproj/argo-cd/pull/16520
I believe this issue was introduced in the above change. The check has two separate loops. The first section checks all conditions for
type = "Issuing"
andstatus = "True"
and if found, sets the health status toProgressing
.Code:
When presented with the following status conditions:
The health check will always set to progressing, even though the renewal has been issued successfully.
To Reproduce
Generate a certificate, and wait for renewal. Once the renewal has been issued the health status will stay in
Progressing
in ArgoCD.Expected behavior
After the renewal has been successfully issued the health status should show
Ready
.Version
ArgoCD version 2.10.
I worked around this issue by creating a resource customization and setting the health check back to pre-2.10 (https://github.com/argoproj/argo-cd/blob/v2.9.17/resource_customizations/cert-manager.io/Certificate/health.lua).