19999b4ed8
Paramiko version 2.0 has been released. It now uses the Python library cryptography. Installing this requires additional system packages. This commit adds in the appropriate packages required by cryptography based on its documentation [1]. An alternative approach would have been to constrain the version of Paramiko however the project describes the 1.x versions as relying on insecure dependencies [2]. [1] https://cryptography.io/en/latest/installation/ [2] http://www.paramiko.org/installing.html Change-Id: I33a6f9ab1aecf28e82ea756e41c482820758157f
44 lines
1.2 KiB
Bash
Executable File
44 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Copyright 2015, Rackspace US, Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
set -euov
|
|
|
|
FUNCTIONAL_TEST=${FUNCTIONAL_TEST:-false}
|
|
|
|
# prep the host
|
|
if [ "$(which apt-get)" ]; then
|
|
apt-get install -y build-essential python2.7 python-dev git-core libssl-dev libffi-dev
|
|
fi
|
|
|
|
# get pip, if necessary
|
|
if [ ! "$(which pip)" ]; then
|
|
curl --silent --show-error --retry 5 \
|
|
https://bootstrap.pypa.io/get-pip.py | sudo python2.7
|
|
fi
|
|
|
|
# install tox
|
|
pip install tox
|
|
|
|
# run through each tox env and execute the test
|
|
for tox_env in $(awk -F= '/envlist/ {print $2}' tox.ini | sed 's/,/ /g'); do
|
|
if [ "${tox_env}" == "ansible-functional" ]; then
|
|
if ${FUNCTIONAL_TEST}; then
|
|
tox -e ${tox_env}
|
|
fi
|
|
else
|
|
tox -e ${tox_env}
|
|
fi
|
|
done
|