On Mon, Oct 21, 2019 at 3:55 PM Clark Boylan <cboylan@sapwetik.org> wrote:
On Mon, Oct 21, 2019, at 6:55 AM, Neil Jerram wrote:
> I'm trying to reproduce an OpenStack CI run on a fresh Ubuntu Bionic
> VM, like this:
>
> sudo apt-get update
> sudo apt-get install -y python-all-dev build-essential git libssl-dev
> ntp ntpdate libre2-dev python-pip
> sudo pip install virtualenv
> wget
> https://1a5e1b314637dd59968a-fddd31f569f44d98bd401bfd88253d97.ssl.cf5.rackcdn.com/682338/1/check/networking-calico-tempest-dsvm/6801298/logs/reproduce.sh
> chmod +x reproduce.sh
> sudo ./reproduce.sh
>
> The last line runs for a short while but then fails with:
>
> [...]
> Successfully built zuul PyYAML voluptuous PrettyTable ansible
> sqlalchemy alembic cachecontrol psutil fb-re2 paho-mqtt ws4py Mako
> repoze.lru pycparser
> Installing collected packages: pbr, six, python-dateutil, uritemplate,
> urllib3, certifi, chardet, idna, requests, enum34, ipaddress,
> pycparser, cffi, cryptography, jwcrypto, github3.py, PyYAML, pynacl,
> bcrypt, paramiko, smmap2, gitdb2, GitPython, docutils, lockfile,
> python-daemon, extras, statsd, voluptuous, gear, pytz, tzlocal,
> funcsigs, futures, apscheduler, PrettyTable, babel, MarkupSafe, jinja2,
> ansible, netaddr, kazoo, sqlalchemy, Mako, python-editor, alembic,
> msgpack, cachecontrol, pyjwt, iso8601, psutil, fb-re2, paho-mqtt,
> contextlib2, more-itertools, zc.lockfile,
> backports.functools-lru-cache, jaraco.functools, tempora, portend,
> cheroot, cherrypy, ws4py, repoze.lru, routes, zuul
> Successfully installed GitPython-2.1.14 Mako-1.1.0 MarkupSafe-1.1.1
> PrettyTable-0.7.2 PyYAML-5.1.2 alembic-1.2.1 ansible-2.5.15
> apscheduler-3.6.1 babel-2.7.0 backports.functools-lru-cache-1.5
> bcrypt-3.1.7 cachecontrol-0.12.5 certifi-2019.9.11 cffi-1.13.0
> chardet-3.0.4 cheroot-8.2.1 cherrypy-17.4.2 contextlib2-0.6.0.post1
> cryptography-2.8 docutils-0.15.2 enum34-1.1.6 extras-1.0.0 fb-re2-1.0.7
> funcsigs-1.0.2 futures-3.3.0 gear-0.14.0 gitdb2-2.0.6 github3.py-1.3.0
> idna-2.8 ipaddress-1.0.23 iso8601-0.1.12 jaraco.functools-2.0
> jinja2-2.10.3 jwcrypto-0.6.0 kazoo-2.6.1 lockfile-0.12.2
> more-itertools-5.0.0 msgpack-0.6.2 netaddr-0.7.19 paho-mqtt-1.4.0
> paramiko-2.6.0 pbr-5.4.3 portend-2.5 psutil-5.6.3 pycparser-2.19
> pyjwt-1.7.1 pynacl-1.3.0 python-daemon-2.0.6 python-dateutil-2.8.0
> python-editor-1.0.4 pytz-2019.3 repoze.lru-0.7 requests-2.22.0
> routes-2.4.1 six-1.12.0 smmap2-2.0.5 sqlalchemy-1.3.10 statsd-3.3.0
> tempora-1.14.1 tzlocal-2.0.0 uritemplate-3.0.0 urllib3-1.25.6
> voluptuous-0.11.7 ws4py-0.5.1 zc.lockfile-2.0 zuul-3.2.0
> + cat
> + /usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git
> https://opendev.org openstack/devstack-gate
> ./reproduce.sh: line 112: /usr/zuul-env/bin/zuul-cloner: No such file
> or directory
>
> Can you see what I'm doing wrong?

The legacy devstack-gate jobs (which produce the reproduce.sh file) rely on the old zuulv2 (not 3) zuul-cloner utility to ensure git repos are in the correct location for the job. Our current images (which you can find at https://nb01.openstack.org/images and https://nb02.openstack.org/images) install a compatbility shim between zuul-cloner and zuulv3. Another option is to checkout zuul's latest version 2.x tag and pip install that to a virtualenv at /usr/zuul-env.

Thanks Clark.  Do you happen to know if I can run one of those images on GCP?