Consolidate py2 and py3 requirements files
[releng/builder.git] / jjb / integration / integration-install-robotframework.sh
1 #!/bin/bash -l
2 # SPDX-License-Identifier: EPL-1.0
3 ##############################################################################
4 # Copyright (c) 2015 The Linux Foundation and others.
5 #
6 # All rights reserved. This program and the accompanying materials
7 # are made available under the terms of the Eclipse Public License v1.0
8 # which accompanies this distribution, and is available at
9 # http://www.eclipse.org/legal/epl-v10.html
10 ##############################################################################
11 # vim: sw=4 ts=4 sts=4 et ft=sh :
12
13 ROBOT_VENV="/tmp/v/robot"
14 echo ROBOT_VENV="${ROBOT_VENV}" >> "${WORKSPACE}/env.properties"
15
16 # The --system-site-packages parameter allows us to pick up system level
17 # installed packages. This allows us to bake matplotlib which takes very long
18 # to install into the image.
19 virtualenv -p python3 --system-site-packages "${ROBOT_VENV}"
20 # shellcheck disable=SC1090
21 source "${ROBOT_VENV}/bin/activate"
22
23 set -exu
24
25 # Make sure pip itself us up-to-date.
26 python -m pip install --upgrade pip
27
28 echo "Installing Python Requirements"
29 cat << 'EOF' > "requirements.txt"
30 docker-py
31 importlib
32 ipaddr
33 netaddr
34 netifaces
35 pyhocon
36 requests
37 robotframework-httplibrary
38 robotframework-pycurllibrary
39 robotframework-requests
40 robotframework-selenium2library
41 robotframework-sshlibrary==3.1.1
42 scapy
43
44 # Module jsonpath is needed by current AAA idmlite suite.
45 jsonpath-rw
46
47 # Modules for longevity framework robot library
48 elasticsearch
49 elasticsearch-dsl
50
51 # Module for pyangbind used by lispflowmapping project
52 pyangbind
53
54 # Module for iso8601 datetime format
55 isodate
56
57 # Module for TemplatedRequests.robot library
58 jmespath
59
60 # Module for backup-restore support library
61 jsonpatch
62
63 # odltools for extra debugging
64 odltools
65 EOF
66 python -m pip install -r requirements.txt
67 odltools -V
68 pip freeze