Merge "Trigger build-rpm job from autorelease"
[releng/builder.git] / packer / provision / robot.sh
1 #!/bin/bash
2
3 # vim: sw=4 ts=4 sts=4 et tw=72 :
4
5 # force any errors to cause the script and job to end in failure
6 set -xeu -o pipefail
7
8 # Install minimal python requirements to get virtualenv going
9 # Additional python dependencies should be installed via JJB configuration
10 # inside project jobs using a virtualenv setup.
11 yum install -y python-{devel,setuptools,virtualenv} @development
12
13 # Install dependencies for robotframework and robotframework-sshlibrary
14 # installed elsewhere
15 yum install -y yum-utils unzip sshuttle nc libffi-devel openssl-devel
16
17 # Install dependencies for matplotlib library used in longevity framework
18 yum install -y libpng-devel freetype-devel python-matplotlib
19
20 # install crudini command line tool for editing config files
21 yum install -y crudini
22
23 # Install dependency for postgres database used in storing performance plot results
24 yum -y install postgresql-devel
25
26 ################################
27 # LISPFLOWMAPPING REQUIREMENTS #
28 ################################
29
30 # Needed for pyangbind
31 yum install -y libxml2-devel libxslt-devel
32
33 # Install `udpreplay` to be used for (lispflowmapping) performance tests
34 yum install -y libpcap-devel boost-devel
35 git clone https://github.com/ska-sa/udpreplay.git
36 cd udpreplay
37 ./bootstrap.sh
38 ./configure
39 make &> /dev/null && cp udpreplay /usr/local/bin
40
41 ## Install docker-py and netaddr
42 yum install -y -q python-docker-py python-netaddr
43
44 #####################
45 # DLUX requirements #
46 #####################
47
48 #  - Xvfb: Display manager in RAM
49 #
50 # Note: The end goal will be to test with multiple browser (Firefox, Chrome)
51 #       Chrome need a other library named chromedriver so let start with
52 #       one already supported with selenium.
53 yum install -y firefox xorg-x11-server-Xvfb