From 3b76979a51f8b8e65991c00cd4ebab2f23a467a6 Mon Sep 17 00:00:00 2001 From: shixuantong Date: Mon, 8 Mar 2021 20:56:05 +0800 Subject: [PATCH] add openEuler policy this patch is based on sos-3.6. --- sos/policies/openEuler.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 sos/policies/openEuler.py diff --git a/sos/policies/openEuler.py b/sos/policies/openEuler.py new file mode 100644 index 0000000..0c9b8f3 --- /dev/null +++ b/sos/policies/openEuler.py @@ -0,0 +1,29 @@ +from __future__ import print_function + +from sos.plugins import RedHatPlugin +from sos.policies.redhat import RedHatPolicy, OS_RELEASE +import os + +class OpenEulerPolicy(RedHatPolicy): + + distro = "OpenEuler" + vendor = "the openEuler Project" + vendor_url = "https://openeuler.org/" + + def __init__(self, sysroot=None): + super(OpenEulerPolicy, self).__init__(sysroot=sysroot) + + @classmethod + def check(cls): + """This method checks to see if we are running on OpenEuler. It returns + True or False.""" + try: + with open("/etc/openEuler-release", "r") as f: + return "openEuler" in f.read() + except IOError: + return False + + def openEuler_version(self): + pkg = self.pkg_by_name("openEuler-release") or \ + self.all_pkgs_by_name_regex("openEuler-release-.*")[-1] + return int(pkg["version"]) -- 1.8.3.1