X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=jenkins%2FVCA%2Fupdate-lxd-image.sh;h=ae692f6560d32f5cf318fe12a0761e582b95f68e;hb=3a0fc42d6a01912debb9e8fbcff8a89d111ded72;hp=ce14b1dc9312303ed5ee600bc610a794c2e1e70e;hpb=736f9e74eee855d77c05482e8a61098cb8b00552;p=osm%2Fdevops.git diff --git a/jenkins/VCA/update-lxd-image.sh b/jenkins/VCA/update-lxd-image.sh old mode 100644 new mode 100755 index ce14b1dc..ae692f65 --- a/jenkins/VCA/update-lxd-image.sh +++ b/jenkins/VCA/update-lxd-image.sh @@ -10,7 +10,7 @@ set -eux # The basic charm layer also installs all the things. 47 packages. -LAYER_BASIC="gcc build-essential python3-pip python3-setuptools python3-yaml" +LAYER_BASIC="gcc build-essential python3-pip python3-setuptools libyaml-dev python3-yaml python3-dev" # the basic layer also installs virtualenv, but the name changed in xenial. TRUSTY_PACKAGES="python-virtualenv" @@ -21,6 +21,9 @@ DOWNLOAD_PACKAGES="" PACKAGES="$LAYER_BASIC $DOWNLOAD_PACKAGES" +# Packages from pypi to pre-install +PYPI="charms.reactive charmhelpers paramiko>=1.16.0,<1.17" + function cache() { series=$1 container=juju-${series}-base @@ -28,11 +31,15 @@ function cache() { lxc delete $container -f || true lxc launch ubuntu:$series $container - sleep 5 # wait for network + + # Wait for the container to get an IP address + lxc exec $container -- bash -c "for i in {1..60}; do sleep 1; ping -c1 10.44.127.1 &> /dev/null && break; done" lxc exec $container -- apt-get update -y lxc exec $container -- apt-get upgrade -y lxc exec $container -- apt-get install -y $PACKAGES $2 + lxc exec $container -- pip3 install --upgrade pip + lxc exec $container -- pip3 install --upgrade $PYPI lxc stop $container lxc image delete $alias || true