Пример #1
0
    def osExplorer(self):
        """
            Check the compatibility of OS and kernel
        """
        kernel_ver = None
        os_status = "FAIL"
        kernel_status = "FAIL"
        os_message = "Unsupported platform version"
        os_name = "Unknown OS"
        kernel_message = ''
        self.rc = True

        res = deployUtil.getOSVersion()

        os_message = "Unsupported platform version: " + res
        verTest = deployUtil.versionCompare(res, MINIMAL_SUPPORTED_PLATFORM)
        if verTest == 99:
            #import error
            os_message = "Unable to test for minimal platform version: missing python library"
            self.rc = False
        elif verTest < 0:
            self.rc = False
        else:
            if rhel6based:
                os_name = "RHEL6"
            else:
                os_name = "RHEL5"
            os_message = "Supported platform version"
            os_status = "OK"

        if self.rc:
            res = deployUtil.getKernelVersion()
            try:
                kernel_ver = res.split()[0]
                if re.match(KERNEL_VER, kernel_ver):
                    kernel_ver = int(kernel_ver.split('-')[1].split('.')[0])
                else:
                    kernel_ver = 0
            except:
                kernel_ver = 0

            if kernel_ver >= KERNEL_MIN_VER:
                kernel_status = "OK"
                kernel_message = "Supported kernel version: " + str(kernel_ver)
            else:
                kernel_status = "FAIL"
                kernel_message = ("Unsupported kernel version: " +
                                  str(kernel_ver) +
                                  ". Minimal supported version: " +
                                  str(KERNEL_MIN_VER))
                self.rc = False

        if os_name is not None:
            self._xmlOutput('OS', os_status, "type", os_name, os_message)
        if kernel_ver is not None:
            self._xmlOutput('KERNEL', kernel_status, "version", kernel_ver,
                            kernel_message)

        return self.rc
Пример #2
0
    def osExplorer(self):
        """
            Check the compatibility of OS and kernel
        """
        kernel_ver = None
        os_status = "FAIL"
        kernel_status = "FAIL"
        os_message = "Unsupported platform version"
        os_name = "Unknown OS"
        kernel_message = ''
        self.rc = True

        res = deployUtil.getOSVersion()

        os_message = "Unsupported platform version: " + res
        verTest = deployUtil.versionCompare(res, MINIMAL_SUPPORTED_PLATFORM)
        if verTest == 99:
            #import error
            os_message = "Unable to test for minimal platform version: missing python library"
            self.rc = False
        elif verTest < 0:
            self.rc = False
        else:
            if rhel6based:
                os_name = "RHEL6"
            else:
                os_name = "RHEL5"
            os_message = "Supported platform version"
            os_status = "OK"

        if self.rc:
            res = deployUtil.getKernelVersion()
            try:
                kernel_ver = res.split()[0]
                if re.match(KERNEL_VER, kernel_ver):
                    kernel_ver = int(kernel_ver.split('-')[1].split('.')[0])
                else:
                    kernel_ver = 0
            except:
                kernel_ver = 0

            if kernel_ver >= KERNEL_MIN_VER:
                kernel_status = "OK"
                kernel_message = "Supported kernel version: " + str(kernel_ver)
            else:
                kernel_status = "FAIL"
                kernel_message = (
                    "Unsupported kernel version: " + str(kernel_ver) +
                    ". Minimal supported version: " + str(KERNEL_MIN_VER)
                )
                self.rc = False

        if os_name is not None:
            self._xmlOutput('OS', os_status, "type", os_name, os_message)
        if kernel_ver is not None:
            self._xmlOutput('KERNEL', kernel_status, "version", kernel_ver, kernel_message)

        return self.rc
Пример #3
0
    def osExplorer(self):
        """
            Check the compatibility of OS and kernel
        """
        os_status = "FAIL"
        kernel_status = "FAIL"
        os_message = "Unsupported platform version"
        os_name = "Unknown OS"
        kernel_message = ''
        self.rc = True

        res = deployUtil.getOSVersion()

        os_message = "Unsupported platform version: " + res
        verTest = deployUtil.versionCompare(res, MINIMAL_SUPPORTED_PLATFORM)
        if verTest == 99:
            #import error
            os_message = "Unable to test for minimal platform version: " \
                "missing python library"
            self.rc = False
        elif verTest < 0:
            self.rc = False
        else:
            if fedorabased:
                os_name = "FEDORA"
            elif rhel6based:
                os_name = "RHEL6"
            else:
                os_name = "RHEL5"
            os_message = "Supported platform version"
            os_status = "OK"

        if self.rc:
            kernel_vr = deployUtil.getKernelVR()
            if deployUtil.compareVR(kernel_vr, KERNEL_MIN_VR) >= 0:
                kernel_status = "OK"
                kernel_message = "Supported kernel version: " + str(kernel_vr)
            else:
                kernel_status = "FAIL"
                kernel_message = (
                    "Unsupported kernel version: " + str(kernel_vr) +
                    ". Minimal supported version: " + str(KERNEL_MIN_VR)
                )
                self.rc = False

        if os_name is not None:
            self._xmlOutput('OS', os_status, "type", os_name, os_message)
        self._xmlOutput('KERNEL', kernel_status, "version",
                        '-'.join(kernel_vr), kernel_message)

        return self.rc
Пример #4
0
    def osExplorer(self):
        """
            Check the compatibility of OS and kernel
        """
        os_status = "FAIL"
        kernel_status = "FAIL"
        os_message = "Unsupported platform version"
        os_name = "Unknown OS"
        kernel_message = ''
        self.rc = True

        res = deployUtil.getOSVersion()

        os_message = "Unsupported platform version: " + res
        verTest = deployUtil.versionCompare(res, MINIMAL_SUPPORTED_PLATFORM)
        if verTest == 99:
            # import error
            os_message = "Unable to test for minimal platform version: " \
                "missing python library"
            self.rc = False
        elif verTest < 0:
            self.rc = False
        else:
            if fedorabased:
                os_name = "FEDORA"
            elif rhel6based:
                os_name = "RHEL6"
            else:
                os_name = "RHEL5"
            os_message = "Supported platform version"
            os_status = "OK"

        if self.rc:
            kernel_vr = deployUtil.getKernelVR()
            if deployUtil.compareVR(kernel_vr, KERNEL_MIN_VR) >= 0:
                kernel_status = "OK"
                kernel_message = "Supported kernel version: " + str(kernel_vr)
            else:
                kernel_status = "FAIL"
                kernel_message = ("Unsupported kernel version: " +
                                  str(kernel_vr) +
                                  ". Minimal supported version: " +
                                  str(KERNEL_MIN_VR))
                self.rc = False

        if os_name is not None:
            self._xmlOutput('OS', os_status, "type", os_name, os_message)
        self._xmlOutput('KERNEL', kernel_status, "version",
                        '-'.join(kernel_vr), kernel_message)

        return self.rc
Пример #5
0
    def keepAlive(self, msg):
        if time.time() - self._last >= \
                myminiyumsink.KEEPALIVE_INTERVAL:
            self.info(msg)

    def askForGPGKeyImport(self, userid, hexkeyid):
        msg = "Approving GnuPG key: userid=%s hexkeyid=%s" % (
            userid,
            hexkeyid
        )
        logging.warning("MiniYum: WARN:  %s", msg)
        self._status('WARN', msg)
        return True


rhel6based = deployUtil.versionCompare(deployUtil.getOSVersion(), "6.0") >= 0

# TODO this is an infra-hackish heuristic for identifying Fedora
# drop as soon as possible
fedorabased = deployUtil.versionCompare(deployUtil.getOSVersion(), "16") >= 0

if rhel6based:
    VDSM_NAME = "vdsm"
    VDSM_MIN_VER = "4.9"
    KERNEL_MIN_VR = ("2.6.32", "150")
    MINIMAL_SUPPORTED_PLATFORM = "6.0"
else:
    VDSM_NAME = "vdsm22"
    VDSM_MIN_VER = "4.5"
    KERNEL_MIN_VR = ("2.6.18", "159")
    MINIMAL_SUPPORTED_PLATFORM = "5.5"
Пример #6
0
    def error(self, msg):
        logging.error("MiniYum: ERROR: %s", msg)

    def keepAlive(self, msg):
        if time.time() - self._last >= \
                myminiyumsink.KEEPALIVE_INTERVAL:
            self.info(msg)

    def askForGPGKeyImport(self, userid, hexkeyid):
        msg = "Approving GnuPG key: userid=%s hexkeyid=%s" % (userid, hexkeyid)
        logging.warning("MiniYum: WARN:  %s", msg)
        self._status('WARN', msg)
        return True


rhel6based = deployUtil.versionCompare(deployUtil.getOSVersion(), "6.0") >= 0

# TODO this is an infra-hackish heuristic for identifying Fedora
# drop as soon as possible
fedorabased = deployUtil.versionCompare(deployUtil.getOSVersion(), "16") >= 0

if rhel6based:
    VDSM_NAME = "vdsm"
    VDSM_MIN_VER = "4.9"
    KERNEL_MIN_VR = ("2.6.32", "150")
    MINIMAL_SUPPORTED_PLATFORM = "6.0"
else:
    VDSM_NAME = "vdsm22"
    VDSM_MIN_VER = "4.5"
    KERNEL_MIN_VR = ("2.6.18", "159")
    MINIMAL_SUPPORTED_PLATFORM = "5.5"