in azext_edge/edge/providers/check/base/check_manager.py [0:0]
def _process_status(self, target_name: str, status: str, namespace: str = ALL_NAMESPACES_TARGET) -> None:
namespace_status = self.targets[target_name][namespace].get("status")
# success only overrides skipped status (default)
if status == CheckTaskStatus.success.value:
if namespace_status == CheckTaskStatus.skipped.value:
self.targets[target_name][namespace]["status"] = status
if self.worst_status == CheckTaskStatus.skipped.value:
self.worst_status = status
# warning overrides any state that is not "error"
elif status == CheckTaskStatus.warning.value:
if namespace_status != CheckTaskStatus.error.value:
self.targets[target_name][namespace]["status"] = status
if self.worst_status != CheckTaskStatus.error.value:
self.worst_status = status
# error overrides any state
elif status == CheckTaskStatus.error.value:
self.targets[target_name][namespace]["status"] = status
self.worst_status = status