From 6b9d50e2bd55c7ca6cb0e56e9568e36e41625418 Mon Sep 17 00:00:00 2001 From: David Ames Date: Mon, 18 Jul 2016 10:13:54 -0700 Subject: [PATCH] Install python dependencies early for CH ip.py When using charmhelpers.contrib.network.ip apt install was quietly failing. Install python dependencies in the early install hook (before install.real). Charm-helpers sync to bring in apt_install with fatal=True Change-Id: Icfe46c617a21ac97eae54752aad5b0ed53aa706a Partial-Bug: 1601972 --- hooks/charmhelpers/contrib/network/ip.py | 4 ++-- hooks/charmhelpers/contrib/openstack/utils.py | 2 +- hooks/install | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/hooks/charmhelpers/contrib/network/ip.py b/hooks/charmhelpers/contrib/network/ip.py index b5f457c..d6dee17 100644 --- a/hooks/charmhelpers/contrib/network/ip.py +++ b/hooks/charmhelpers/contrib/network/ip.py @@ -414,7 +414,7 @@ def ns_query(address): try: import dns.resolver except ImportError: - apt_install('python-dnspython') + apt_install('python-dnspython', fatal=True) import dns.resolver if isinstance(address, dns.name.Name): @@ -458,7 +458,7 @@ def get_hostname(address, fqdn=True): try: import dns.reversename except ImportError: - apt_install("python-dnspython") + apt_install("python-dnspython", fatal=True) import dns.reversename rev = dns.reversename.from_address(address) diff --git a/hooks/charmhelpers/contrib/openstack/utils.py b/hooks/charmhelpers/contrib/openstack/utils.py index 519eae9..889ac04 100644 --- a/hooks/charmhelpers/contrib/openstack/utils.py +++ b/hooks/charmhelpers/contrib/openstack/utils.py @@ -145,7 +145,7 @@ SWIFT_CODENAMES = OrderedDict([ ('mitaka', ['2.5.0', '2.6.0', '2.7.0']), ('newton', - ['2.8.0']), + ['2.8.0', '2.9.0']), ]) # >= Liberty version->codename mapping diff --git a/hooks/install b/hooks/install index 83a9d3c..29ff689 100755 --- a/hooks/install +++ b/hooks/install @@ -2,7 +2,7 @@ # Wrapper to deal with newer Ubuntu versions that don't have py2 installed # by default. -declare -a DEPS=('apt' 'netaddr' 'netifaces' 'pip' 'yaml') +declare -a DEPS=('apt' 'netaddr' 'netifaces' 'pip' 'yaml' 'dnspython') check_and_install() { pkg="${1}-${2}"