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 |
Matthew Watkins | df95e52 | 2022-11-24 13:35:14 +0000 | [diff] [blame^] | 40 | robotframework-requests |
Matthew Watkins | 1e55439 | 2022-11-15 16:03:54 -0800 | [diff] [blame] | 41 | robotframework-selenium2library |
Matthew Watkins | df95e52 | 2022-11-24 13:35:14 +0000 | [diff] [blame^] | 42 | robotframework-sshlibrary |
Matthew Watkins | 1e55439 | 2022-11-15 16:03:54 -0800 | [diff] [blame] | 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 |
Matthew Watkins | df95e52 | 2022-11-24 13:35:14 +0000 | [diff] [blame^] | 57 | # Additional package dependencies for ONAP project |
| 58 | pbr |
| 59 | deepdiff |
| 60 | dnspython |
| 61 | future |
| 62 | jinja2 |
| 63 | kafka-python |
| 64 | # Protobuf requires Python >=3.7 |
| 65 | protobuf |
| 66 | pyyaml |
| 67 | robotlibcore-temp |
| 68 | more-itertools |
| 69 | xvfbwrapper |
| 70 | PyVirtualDisplay |
Matthew Watkins | 1e55439 | 2022-11-15 16:03:54 -0800 | [diff] [blame] | 71 | EOF |
| 72 | |
| 73 | python -m pip install -r requirements.txt |
Matthew Watkins | df95e52 | 2022-11-24 13:35:14 +0000 | [diff] [blame^] | 74 | python -m pip freeze |
Matthew Watkins | 1e55439 | 2022-11-15 16:03:54 -0800 | [diff] [blame] | 75 | python -m robot.run --version || : |