Beispiel #1
0
    def get_plugin_for_update(cls, metadata):
        """Retrieves plugins which can be updated

        :param dict metadata: plugin metadata
        :returns: dict with plugin which can be updated or None
        """
        if not cls.is_updatable(metadata['package_version']):
            return

        plugins = filter(
            lambda p: p['name'] == metadata['name'] and
            cls.is_updatable(p['package_version']) and
            utils.major_plugin_version(metadata['version']) ==
            utils.major_plugin_version(p['version']),
            cls.get_all_data())

        plugin = None
        if plugins:
            # List should contain only one plugin, but just
            # in case we make sure that we get plugin with
            # higher version
            plugin = sorted(
                plugins,
                key=lambda p: StrictVersion(p['version']))[0]

        return plugin
Beispiel #2
0
    def get_plugin_for_update(cls, metadata):
        """Retrieves plugins which can be updated

        :param dict metadata: plugin metadata
        :returns: dict with plugin which can be updated or None
        """
        if not cls.is_updatable(metadata['package_version']):
            return

        plugins = [p for p in cls.get_all_data()
                   if (p['name'] == metadata['name'] and
                       cls.is_updatable(p['package_version']) and
                       utils.major_plugin_version(metadata['version']) ==
                       utils.major_plugin_version(p['version']))]

        plugin = None
        if plugins:
            # List should contain only one plugin, but just
            # in case we make sure that we get plugin with
            # higher version
            plugin = sorted(
                plugins,
                key=lambda p: StrictVersion(p['version']))[0]

        return plugin
    def test_major_plugin_version(self):
        pairs = [['1.2.3', '1.2'],
                 ['123456789.123456789.12121', '123456789.123456789'],
                 ['1.2', '1.2']]

        for arg, expected in pairs:
            self.assertEqual(utils.major_plugin_version(arg), expected)
    def test_major_plugin_version(self):
        pairs = [
            ['1.2.3', '1.2'],
            ['123456789.123456789.12121', '123456789.123456789'],
            ['1.2', '1.2']]

        for arg, expected in pairs:
            self.assertEqual(
                utils.major_plugin_version(arg),
                expected)
Beispiel #5
0
 def remove(cls, name, version):
     rpm_name = '{0}-{1}'.format(name, utils.major_plugin_version(version))
     utils.exec_cmd('yum -y remove {0}'.format(rpm_name))
Beispiel #6
0
 def remove(cls, name, version):
     rpm_name = '{0}-{1}'.format(name, utils.major_plugin_version(version))
     utils.exec_cmd('yum -y remove {0}'.format(rpm_name))
    def test_major_plugin_version(self):
        pairs = [["1.2.3", "1.2"], ["123456789.123456789.12121", "123456789.123456789"], ["1.2", "1.2"]]

        for arg, expected in pairs:
            self.assertEqual(utils.major_plugin_version(arg), expected)