Matthew Watkins | 1e55439 | 2022-11-15 16:03:54 -0800 | [diff] [blame] | 1 | #!/bin/bash -l |
| 2 | # SPDX-License-Identifier: EPL-1.0 |
| 3 | ############################################################################## |
| 4 | # Copyright (c) 2022 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 | set -eu pipefail |
| 14 | |
| 15 | # shellcheck disable=SC1090 |
| 16 | . ~/lf-env.sh |
| 17 | |
| 18 | # Create a virtual environment for robot tests and make sure setuptools & wheel |
| 19 | # are up-to-date in addition to pip |
| 20 | lf-activate-venv --python python3 --venv-file "${WORKSPACE}/.robot3_venv" \ |
| 21 | setuptools \ |
| 22 | wheel |
| 23 | |
| 24 | # Save the virtual environment in ROBOT_VENV |
| 25 | ROBOT3_VENV="$(cat "${WORKSPACE}/.robot3_venv")" |
| 26 | echo ROBOT3_VENV="${ROBOT3_VENV}" >> "${WORKSPACE}/env.properties" |
| 27 | |
| 28 | set -exu |
| 29 | |
| 30 | echo "Installing Python Requirements" |
| 31 | cat << 'EOF' > "requirements.txt" |
| 32 | docker-py |
| 33 | ipaddr |
| 34 | netaddr |
| 35 | netifaces |
| 36 | pyhocon |
| 37 | requests |
| 38 | robotframework |
| 39 | robotframework-httplibrary |
| 40 | robotframework-requests==0.9.3 |
| 41 | robotframework-selenium2library |
| 42 | robotframework-sshlibrary==3.8.0 |
| 43 | scapy |
| 44 | # Module jsonpath is needed by current AAA idmlite suite. |
| 45 | jsonpath-rw |
| 46 | # Modules for longevity framework robot library |
| 47 | elasticsearch |
| 48 | elasticsearch-dsl |
| 49 | # Module for pyangbind used by lispflowmapping project |
| 50 | pyangbind |
| 51 | # Module for iso8601 datetime format |
| 52 | isodate |
| 53 | # Module for TemplatedRequests.robot library |
| 54 | jmespath |
| 55 | # Module for backup-restore support library |
| 56 | jsonpatch |
| 57 | EOF |
| 58 | |
| 59 | python -m pip install -r requirements.txt |
| 60 | pip freeze |
| 61 | python -m robot.run --version || : |