Add support for Ubuntu

Add support to translate package names to what
is in the Ubuntu Archive.

Change-Id: Ie64ecaf1dc7dde9d51e6085215aba56ca3ff3fdd
Signed-off-by: Chuck Short <chuck.short@canonical.com>
This commit is contained in:
Chuck Short
2016-12-07 20:28:13 -05:00
parent f56b677520
commit 02a066a6d7
2 changed files with 45 additions and 0 deletions

View File

@@ -67,6 +67,10 @@ def default_rdo_tr(mod):
return pkg
def default_ubuntu_tr(mod):
return 'python-' + mod.lower()
def default_suse_tr(mod):
return 'python-' + mod
@@ -159,6 +163,31 @@ SUSE_PKG_MAP = [
pkgfun=lambda x: x),
]
UBUNTU_PKG_MAP = [
SingleRule('django_openstack_auth', 'python-openstack-auth'),
SingleRule('glance_store', 'python-glance-store'),
SingleRule('GitPython', 'python-git'),
SingleRule('PyMySQL', 'python-mysql'),
SingleRule('pyOpenSSL', 'python-openssl'),
SingleRule('PyYAML', 'python-yaml'),
SingleRule('sqlalchemy-migrate', 'python-migrate'),
SingleRule('suds-jurko', 'python-suds'),
# Openstack clients
MultiRule(
mods=['python-%sclient' % c for c in (
'barbican', 'ceilometer', 'cinder', 'cloudkitty', 'congress',
'designate', 'fuel', 'heat', 'glance', 'ironic',
'karbor', 'keystone',
'magnum', 'manila', 'mistral', 'monasca',
'murano', 'neutron', 'nova',
'openstack', 'sahara',
'senlin', 'swift',
'trove', 'zaqar')],
pkgfun=lambda x: x),
]
OPENSTACK_UPSTREAM_PKG_MAP = [
SingleRule('openstacksdk', 'python-openstacksdk'),
SingleRule('gnocchiclient', 'python-gnocchiclient'),
@@ -171,12 +200,16 @@ OPENSTACK_UPSTREAM_PKG_MAP = [
def get_pkg_map(dist):
if dist.lower().find('suse') != -1:
return SUSE_PKG_MAP
if dist.lower().find('ubuntu') != -1:
return UBUNTU_PKG_MAP
return RDO_PKG_MAP
def get_default_tr_func(dist):
if dist.lower().find('suse') != -1:
return default_suse_tr
if dist.lower().find('ubuntu') != -1:
return default_ubuntu_tr
return default_rdo_tr

View File

@@ -27,6 +27,8 @@ class Pymod2PkgTests(unittest.TestCase):
def test_get_default_translation_func(self):
self.assertEqual(pymod2pkg.get_default_tr_func('suse'),
pymod2pkg.default_suse_tr)
self.assertEqual(pymod2pkg.get_default_tr_func('ubuntu'),
pymod2pkg.default_ubuntu_tr)
self.assertEqual(pymod2pkg.get_default_tr_func('anything'),
pymod2pkg.default_rdo_tr)
@@ -54,6 +56,16 @@ class Pymod2PkgTests(unittest.TestCase):
self.assertEqual(pymod2pkg.module2package('Tempest', 'suse'),
'openstack-tempest')
def test_translation_ubuntu(self):
self.assertEqual(pymod2pkg.module2package('nova', 'ubuntu'),
'python-nova')
self.assertEqual(pymod2pkg.module2package('python-cinderclient',
'ubuntu'),
'python-cinderclient')
self.assertEqual(pymod2pkg.module2package('python-neutronclient',
'ubuntu'),
'python-neutronclient')
def test_default_translation_rdo(self):
self.assertEqual(pymod2pkg.module2package('oslo.db', 'fedora'),
'python-oslo-db')