Bei Travis CI, CVXOPT, NumPy, [SciPy] Ich möchte ein Python-Programm testen, das verwendet (http://www.scipy.org/). Da diese Bibliotheken nicht alleine von pip installiert werden konnten, werden wir andere notwendige Pakete zusammenfassen.
** Von CVXOPT ohne SuiteSparse behoben (5. Februar 2017) **
Es wird davon ausgegangen, dass die zur Ausführung des Tests erforderlichen Bibliotheken in require.txt
beschrieben sind.
Zu diesem Zeitpunkt führt Travis automatisch "pip install -r require.txt" aus, sodass der Installationsschritt nicht erforderlich ist.
.travis.yml Zusammenfassend wird "libblas-dev" und "liblapack-dev" verwendet, um CVXOPT zu installieren. Da für die Installation von SciPy "gfortran" erforderlich ist, bereiten Sie es mit "addons.apt.packages" von ".travis.yml" vor.
Da CVXOPT die Suite Sparse nicht mehr enthält, müssen Sie es auch selbst vorbereiten. Diese Vorgehensweise wird in before_install beschrieben.
yaml:.travis.yml
language: python
python:
- 2.7
addons:
apt:
packages:
- libblas-dev
- liblapack-dev
- gfortran
before_install:
- wget http://faculty.cse.tamu.edu/davis/SuiteSparse/SuiteSparse-4.5.3.tar.gz
- tar -xf SuiteSparse-4.5.3.tar.gz
- export CVXOPT_SUITESPARSE_SRC_DIR=$(pwd)/SuiteSparse
script:
- ./unittest_script.py
In älteren Versionen wurde anscheinend "sudo apt-get install" für "before_install" verwendet, aber im Fall der Container-Basis kann "sudo" nicht verwendet werden und "addons.apt" scheint verwendet zu werden.
Übrigens ist diesmal "require.txt"
requirements.txt
cvxcanon>=0.1.1 # via cvxpy
cvxopt>=1.1.9
cvxpy>=0.4.8
cycler>=0.10.0 # via matplotlib
ecos>=2.0.4 # via cvxpy
fastcache>=1.0.2 # via cvxpy
functools32>=3.2.3.post2 # via matplotlib
matplotlib>=2.0.0
multiprocess>=0.70.4 # via cvxpy
numpy>=1.12.0
pyparsing>=2.1.10 # via matplotlib
python-dateutil>=2.6.0 # via matplotlib
pytz>=2016.10 # via matplotlib
scipy>=0.18.1
scs>=1.2.6 # via cvxpy
six>=1.10.0 # via cvxpy, cycler, matplotlib, python-dateutil
subprocess32>=3.2.7 # via matplotlib
toolz>=0.8.2 # via cvxpy
Ist.
Recommended Posts