github.com/argoproj/argo-cd/v3@v3.2.1/resource_customizations/argoproj.io/ApplicationSet/health.lua (about)

     1  local hs = {}
     2  
     3  if obj.status ~= nil then
     4    if obj.status.conditions ~= nil then
     5      for i, condition in pairs(obj.status.conditions) do
     6        if condition.type == "ErrorOccurred" and condition.status == "True" then
     7          hs.status = "Degraded"
     8          hs.message = condition.message
     9          return hs
    10        end
    11      end
    12      for i, condition in pairs(obj.status.conditions) do
    13        if condition.type == "ResourcesUpToDate" and condition.status == "False" then
    14          hs.status = "Degraded"
    15          hs.message = condition.message
    16          return hs
    17        end
    18      end
    19      for i, condition in pairs(obj.status.conditions) do
    20        if condition.type == "RolloutProgressing" and condition.status == "True" then
    21          hs.status = "Progressing"
    22          hs.message = condition.message
    23          return hs
    24        end
    25      end
    26      for i, condition in pairs(obj.status.conditions) do
    27        if condition.type == "ResourcesUpToDate" and condition.status == "True" then
    28          hs.status = "Healthy"
    29          hs.message = condition.message
    30          return hs
    31        end
    32      end
    33    end
    34  end
    35  
    36  hs.status = "Progressing"
    37  hs.message = "Waiting for the status to be reported"
    38  return hs