215a164227dd4cabd2e463911221a7b2624a60c2
[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 # shellcheck disable=SC1090
14 . ~/lf-env.sh
15
16 # Create a virtual environment for robot tests and make sure setuptools & wheel
17 # are up-to-date in addition to pip
18 lf-activate-venv --python python3 --venv-file "${WORKSPACE}/.robot_venv" \
19     setuptools \
20     wheel
21
22 # Save the virtual environment in ROBOT_VENV
23 ROBOT_VENV="$(cat "${WORKSPACE}/.robot_venv")"
24 echo ROBOT_VENV="${ROBOT_VENV}" >> "${WORKSPACE}/env.properties"
25
26 set -exu
27
28 echo "Installing Python Requirements"
29 cat << 'EOF' > "requirements.txt"
30 docker-py
31 ipaddr
32 netaddr
33 netifaces
34 pyhocon
35 requests
36 robotframework
37 robotframework-httplibrary
38 robotframework-requests==0.7.2
39 robotframework-selenium2library
40 robotframework-sshlibrary==3.1.1
41 scapy
42
43 # Module jsonpath is needed by current AAA idmlite suite.
44 jsonpath-rw
45
46 # Modules for longevity framework robot library
47 elasticsearch
48 elasticsearch-dsl
49
50 # Module for pyangbind used by lispflowmapping project
51 pyangbind
52
53 # Module for iso8601 datetime format
54 isodate
55
56 # Module for TemplatedRequests.robot library
57 jmespath
58
59 # Module for backup-restore support library
60 jsonpatch
61 EOF
62
63 python -m pip install -r requirements.txt
64 pip freeze