
Next step will be to re-write these for zuulv3 Change-Id: I2f6a8432e037f75d6abee3bc977933a310a4a2c7
41 lines
1.4 KiB
Bash
Executable File
41 lines
1.4 KiB
Bash
Executable File
#!/bin/bash -xe
|
|
|
|
# This script will be run by OpenStack CI before unit tests are run,
|
|
# it sets up the test system as needed.
|
|
# Developer should setup their test systems in a similar way.
|
|
|
|
# This setup needs to be run by a user that can run sudo.
|
|
|
|
function is_fedora {
|
|
[ -f /usr/bin/yum ] && cat /etc/*release | grep -q -e "Fedora"
|
|
}
|
|
|
|
# NOTE(sileht): we create the virtualenv only and use bindep directly
|
|
# because tox doesn't have a quiet option...
|
|
tox -ebindep --notest
|
|
|
|
# TODO(kgiusti) for now install all profile deps, need to fix this to
|
|
# install only the deps needed by the particular test's profile
|
|
PROFILES="rabbit zmq amqp1"
|
|
PACKAGES=
|
|
for PROFILE in $PROFILES; do
|
|
# NOTE(sileht): bindep return 1 if some packages have to be installed
|
|
PACKAGES="$PACKAGES $(.tox/bindep/bin/bindep -b -f bindep.txt $PROFILE || true)"
|
|
done
|
|
[ -n "$PACKAGES" ] || exit 0
|
|
|
|
# inspired from project-config install-distro-packages.sh
|
|
if apt-get -v >/dev/null 2>&1 ; then
|
|
sudo add-apt-repository -y ppa:qpid/testing
|
|
sudo apt-get -qq update
|
|
sudo PATH=/usr/sbin:/sbin:$PATH DEBIAN_FRONTEND=noninteractive \
|
|
apt-get -q --option "Dpkg::Options::=--force-confold" \
|
|
--assume-yes install $PACKAGES
|
|
elif emerge --version >/dev/null 2>&1 ; then
|
|
sudo emerge -uDNq --jobs=4 @world
|
|
sudo PATH=/usr/sbin:/sbin:$PATH emerge -q --jobs=4 $PACKAGES
|
|
else
|
|
is_fedora && YUM=dnf || YUM=yum
|
|
sudo PATH=/usr/sbin:/sbin:$PATH $YUM install -y $PACKAGES
|
|
fi
|