in src/tools/diagnostics/updatecenter_troubleshooter.py [0:0]
def check_os_version():
rule_id = "Linux.OperatingSystemCheck"
rule_group_id = "prerequisites"
os_tuple = utils.get_linux_distribution()
os_version = os_tuple[0] + "-" + os_tuple[1]
supported_os_url = "https://docs.microsoft.com/en-us/azure/automation/automation-update-management#clients"
# We support (Ubuntu 14.04, Ubuntu 16.04, SuSE 11, SuSE 12, Redhat 6, Redhat 7, CentOs 6, CentOs 7)
if re.search("Ubuntu-20.04", os_version, re.IGNORECASE) or \
re.search("Ubuntu-16.04", os_version, re.IGNORECASE) or \
re.search("Ubuntu-18.04", os_version, re.IGNORECASE) or \
re.search("SuSE-12", os_version, re.IGNORECASE) or \
re.search("SLES-12", os_version, re.IGNORECASE) or \
re.search("SLES-15", os_version, re.IGNORECASE) or \
re.search("SuSE-15", os_version, re.IGNORECASE) or \
re.search("rhel-7", os_version, re.IGNORECASE) or \
re.search("rhel-8", os_version, re.IGNORECASE) or \
re.search("centos-8", os_version, re.IGNORECASE) or \
re.search("centos-7", os_version, re.IGNORECASE) or \
re.search("Oracle-8", os_version, re.IGNORECASE) or \
re.search("Oracle-7", os_version, re.IGNORECASE) :
write_log_output(rule_id, rule_group_id, status_passed, empty_failure_reason, "Operating system version is supported")
else:
log_msg = "Operating System version (%s) is not supported. Supported versions listed here: %s" % (os_version, supported_os_url)
write_log_output(rule_id, rule_group_id, status_failed, empty_failure_reason, log_msg, supported_os_url)