-
Notifications
You must be signed in to change notification settings - Fork 35
/
.travis.yml
100 lines (93 loc) · 2.7 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
# travis-ci.com is currently not used, and this file may be outdated.
#
# GitHub Actions are used: configured via the files in the directory:
# `.github/workflows/`
language: python
python:
- "3.7"
- "3.8"
- "3.9"
dist: focal
addons:
apt:
packages:
- gfortran
- libatlas-base-dev
- liblapack-dev
- libgmp-dev
- libmpfr-dev
- graphviz
- libglpk-dev
- libboost-dev
- libboost-filesystem-dev
- libboost-program-options-dev
- libboost-regex-dev
- libboost-test-dev
- libeigen3-dev
- z3
- libz3-dev
- python3-z3
- libhwloc-dev
before_install:
- pip install --ignore-installed --upgrade pip setuptools wheel
- pip install --upgrade --only-binary=numpy,scipy numpy scipy
- pip install dd --no-binary dd
install:
- python setup.py sdist
- pip install dist/tulip-*.tar.gz
before_script:
- pip install pytest
- dot -V
script:
- ./run_tests.py --outofsource base
- pip install matplotlib
- ./run_tests.py --outofsource --fast hybrid
# install cvxopt.glpk
- export CVXOPT_BUILD_GLPK=1
- python -c "import setup; setup.install_cvxopt()"
- python -c "import cvxopt.glpk"
# install `dd.cudd`
- pip uninstall --yes dd
- pip download --no-dependencies dd --no-binary dd
- tar xzf dd-*.tar.gz
- cd dd-*/
- export CUDD_VERSION=3.0.0
- export CUDD_GZ=cudd-${CUDD_VERSION}.tar.gz
- curl -sSL https://sourceforge.net/projects/cudd-mirror/files/${CUDD_GZ}/download > ${CUDD_GZ}
- expr `shasum -a 256 ${CUDD_GZ}|cut -d ' ' -f1`
= b8e966b4562c96a03e7fbea239729587d7b395d53cadcc39a7203b49cf7eeb69
- tar -xzf ${CUDD_GZ}
- python -c 'from download import make_cudd; make_cudd()'
- python setup.py install --cudd
- cd ..
# optional python packages
- pip install gr1py
# gr1c
- export GR1CVERSION=0.13.0
- curl -sSLO https://github.com/tulip-control/gr1c/releases/download/v${GR1CVERSION}/gr1c-${GR1CVERSION}-Linux_x86-64.tar.gz
- expr `shasum -a 256 gr1c-${GR1CVERSION}-Linux_x86-64.tar.gz|cut -d ' ' -f1`
= 1d45ca69d6acbf84ae6170de60b6c69073dffd3a6130c6213419e401d9d5c470
- tar -xzf gr1c-${GR1CVERSION}-Linux_x86-64.tar.gz
- export PATH=`pwd`/gr1c-${GR1CVERSION}-Linux_x86-64:$PATH
# lily
- ./extern/get-lily.sh
- which perl
- perl --version
- pwd
- export PERL5LIB=`pwd`/Lily-1.0.2
- export PATH=`pwd`/Lily-1.0.2:$PATH
- echo $PATH
- which lily.pl
# slugs
- ./extern/get-slugs.sh
- export PATH=`pwd`/slugs-repo/src:$PATH
- which slugs
# dev test requirements
- pip install gitpython
- pip install mock
# stormpy, requires Python 3
- ./extern/get-stormpy.sh
# all tests, including slow hybrid and alternative game solvers
- ./run_tests.py --outofsource full
notifications:
email: false