argo-cd/resource_customizations/cert-manager.io/Certificate/health.lua
Chris Murray 888687452f
fix: cert-manager.io/certificate health.lua for consistent issuing (Issue #16523) (#16520)
* Update cert-manager.opcertificate health.lua

Signed-off-by: Chris Murray <chris@distrail.io>

* adding test case for cert issuing

Signed-off-by: Chris Murray <chris@distrail.io>

* fixing typo

Signed-off-by: Chris Murray <chris@distrail.io>

---------

Signed-off-by: Chris Murray <chris@distrail.io>
2023-12-05 01:12:33 +05:30

31 lines
875 B
Lua

local hs = {}
if obj.status ~= nil then
if obj.status.conditions ~= nil then
-- 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
end
for i, condition in ipairs(obj.status.conditions) do
if condition.type == "Ready" and condition.status == "False" then
hs.status = "Degraded"
hs.message = condition.message
return hs
end
if condition.type == "Ready" and condition.status == "True" then
hs.status = "Healthy"
hs.message = condition.message
return hs
end
end
end
end
hs.status = "Progressing"
hs.message = "Waiting for certificate"
return hs