Add users email to auto-generated gerrit patches
[releng/builder.git] / packer / provision / robot.sh
index cf7c80997b5bea002a37ffc2d0036e39999b9204..13bfa219ea3fe5a895d794f7ed26b207ce020b29 100644 (file)
@@ -2,33 +2,59 @@
 
 # vim: sw=4 ts=4 sts=4 et tw=72 :
 
+# force any errors to cause the script and job to end in failure
+set -xeu -o pipefail
+
 # Install minimal python requirements to get virtualenv going
 # Additional python dependencies should be installed via JJB configuration
 # inside project jobs using a virtualenv setup.
-yum install -q -y python-{devel,setuptools,virtualenv} @development
+yum install -y @development \
+    python-devel \
+    python-setuptools \
+    python-virtualenv
+
+# TODO: Move docker-py and netaddr to virtualenv in the csit jobs.
+yum install -y python-docker-py \
+    python-netaddr
 
 # Install dependencies for robotframework and robotframework-sshlibrary
 # installed elsewhere
-yum install -y -q yum-utils unzip sshuttle nc libffi-devel openssl-devel
+yum install -y yum-utils unzip sshuttle nc libffi-devel openssl-devel
 
 # Install dependencies for matplotlib library used in longevity framework
-yum install -y -q libpng-devel freetype-devel python-matplotlib
+yum install -y libpng-devel freetype-devel python-matplotlib
 
 # install crudini command line tool for editing config files
-yum install -y -q crudini
+yum install -y crudini
+
+# Install dependency for postgres database used in storing performance plot results
+yum -y install postgresql-devel
+
+################################
+# LISPFLOWMAPPING REQUIREMENTS #
+################################
+
+# Needed for pyangbind
+yum install -y libxml2-devel libxslt-devel
 
 # Install `udpreplay` to be used for (lispflowmapping) performance tests
-yum install -q -y libpcap-devel boost-devel
-git clone -q https://github.com/ska-sa/udpreplay.git
+yum install -y libpcap-devel boost-devel
+git clone https://github.com/ska-sa/udpreplay.git
 cd udpreplay
 ./bootstrap.sh
 ./configure
 make &> /dev/null && cp udpreplay /usr/local/bin
 
-## DLUX dependencies
+## Install docker-py and netaddr
+yum install -y -q python-docker-py python-netaddr
+
+#####################
+# DLUX requirements #
+#####################
+
 #  - Xvfb: Display manager in RAM
 #
 # Note: The end goal will be to test with multiple browser (Firefox, Chrome)
 #       Chrome need a other library named chromedriver so let start with
 #       one already supported with selenium.
-yum install -y -q firefox xorg-x11-server-Xvfb
+yum install -y firefox xorg-x11-server-Xvfb