diff options
author | zoedong <zoedong@tencent.com> | 2023-01-05 14:44:33 +0800 |
---|---|---|
committer | Jake Hunsaker <jhunsake@redhat.com> | 2023-01-09 10:56:39 -0500 |
commit | 684f3acb5a82215cc1cb07c5ea78853e91e3834c (patch) | |
tree | 5424a65ceb21faca274ef4c4f3d1d3e6736a77d0 | |
parent | a8c674a851d1cb0e11f6c144ad663970806ce5a3 (diff) | |
download | sos-684f3acb5a82215cc1cb07c5ea78853e91e3834c.tar.gz |
[policies] Add policy for OpenCloudOS
Signed-off-by: zoedong <zoedong@tencent.com>
-rw-r--r-- | sos/policies/distros/opencloudos.py | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/sos/policies/distros/opencloudos.py b/sos/policies/distros/opencloudos.py new file mode 100644 index 00000000..df510e55 --- /dev/null +++ b/sos/policies/distros/opencloudos.py @@ -0,0 +1,42 @@ +# Copyright (c) 2022 Tencent., ZoeDong <zoedong@tencent.com> +# This file is part of the sos project: https://github.com/sosreport/sos +# +# This copyrighted material is made available to anyone wishing to use, +# modify, copy, or redistribute it subject to the terms and conditions of +# version 2 of the GNU General Public License. +# +# See the LICENSE file in the source distribution for further information. + +from sos.policies.distros.redhat import RedHatPolicy, OS_RELEASE +import os + + +class OpenCloudOSPolicy(RedHatPolicy): + distro = "OpenCloudOS Stream" + vendor = "OpenCloudOS" + vendor_urls = [('Distribution Website', 'https://www.opencloudos.org/')] + + def __init__(self, sysroot=None, init=None, probe_runtime=True, + remote_exec=None): + super(OpenCloudOSPolicy, self).__init__(sysroot=sysroot, init=init, + probe_runtime=probe_runtime, + remote_exec=remote_exec) + + @classmethod + def check(cls, remote=''): + + if remote: + return cls.distro in remote + + if not os.path.exists(OS_RELEASE): + return False + + with open(OS_RELEASE, 'r') as f: + for line in f: + if line.startswith('NAME'): + if 'OpenCloudOS Stream' in line: + return True + + return False + +# vim: set et ts=4 sw=4 : |