diff options
author | Bella Zhang <bella@cclinux.org> | 2022-12-22 14:22:48 +0800 |
---|---|---|
committer | Jake Hunsaker <jhunsake@redhat.com> | 2023-01-02 10:37:45 -0500 |
commit | 089839231aa54261f274f9e963f2d07d3dc7de86 (patch) | |
tree | d564efa02469438abfe81b7ab0726bf1327c76c4 | |
parent | 4c10dac56724c7903b349c3bef9b8661356d9c26 (diff) | |
download | sos-089839231aa54261f274f9e963f2d07d3dc7de86.tar.gz |
[policies] Add policy for Circle Linux
Circle Linux is an production-ready distribution from RHEL.
Signed-off-by: Bella Zhang <bella@cclinux.org>
-rw-r--r-- | sos/policies/distros/circle.py | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/sos/policies/distros/circle.py b/sos/policies/distros/circle.py new file mode 100644 index 00000000..763348dd --- /dev/null +++ b/sos/policies/distros/circle.py @@ -0,0 +1,49 @@ +# Copyright (C) Bella Zhang <bella@cclinux.org> + +# 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 CirclePolicy(RedHatPolicy): + + distro = "Circle Linux" + vendor = "The Circle Linux Project" + vendor_urls = [('Distribution Website', 'https://cclinux.org')] + + def __init__(self, sysroot=None, init=None, probe_runtime=True, + remote_exec=None): + super(CirclePolicy, 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 + + # Return False if /etc/os-release is missing + if not os.path.exists(OS_RELEASE): + return False + + # Return False if /etc/circle-release is missing + if not os.path.isfile('/etc/circle-release'): + return False + + with open(OS_RELEASE, 'r') as f: + for line in f: + if line.startswith('NAME'): + if 'Circle Linux' in line: + return True + + return False + +# vim: set et ts=4 sw=4 : |