forked from TACC/Galaxy
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
116 lines (100 loc) · 3.84 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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
language: cpp
dist: bionic # get a semi-modern linux
branches:
only:
- travis-ci
- dev
- master
- camdev
matrix:
include:
# - os: osx
# osx_image: xcode11.3 # get a modern-enough mac environment
# compiler: clang
# env:
# - MATRIX_EVAL=""
# # - MATRIX_EVAL="find /usr/local/Cellar/vtk"
# - PYTHONPATH=/Users/travis/build/TACC/Galaxy/third-party/VTK-8.1.2/install/lib/python3.7/site-packages:${PYTHONPATH}
# TODO: currently fails due to --std=c++11 flag inclusion
# since cmake detects mac/clang and gcc barfs rather than ignores
# - os: osx
# compiler: gcc
# env:
# - MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"
- os: linux
compiler: clang
env:
- MATRIX_EVAL=""
- os: linux
compiler: gcc
env:
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"
git:
submodules: false # submodule init handled by prep-third-party.sh
cache:
directories:
- .galaxy
- third-party/install
- third-party/VTK-8.1.2 # use for VTK rebuild
#- third-party/VTK-8.1.2/install # use for production
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-7
- libtbb-dev
- libboost-all-dev
- mpi-default-dev
- freeglut3-dev
- libxrandr-dev
- libxinerama-dev
- libxcursor-dev
- perceptualdiff
- python3
- python3-numpy
- qt5-default
- libqt5opengl5-dev
# - libvtk7-qt-dev
homebrew:
update: true
packages:
# - vtk
- tbb
- boost
- open-mpi
- freeglut
- perceptualdiff
- python3
- numpy
- git
- qt
# - gcc@7
before_install:
- eval "${MATRIX_EVAL}"
script:
# use to rebuild VTK cache
# do this first; run once to build VTK
# - export GXY_REBUILDING_CACHE=1; rm -rf third-party/VTK-8.1.2; scripts/travis-ci-build.sh
# run once more to build python bindinds (can't do both within time limits)
# - export GXY_REBUILDING_CACHE=1; scripts/travis-ci-build.sh
# use this to update versons of all third-party (embree ospray rapidjson nodeeditor)
# - export GXY_REBUILDING_CACHE=1
# - rm -f .galaxy/gxy_third_party_prep_done .galaxy/gxy_third_party_installed
# - rm -rf third-party/embree third-party/ospray third-party/rapidjson third-party/nodeeditor third-party/install
# - scripts/install-third-party.sh
# the travis-ci build script does the following:
# 0a. if VTK not built: build, cache and exit (linux only, osx has a brew install)
# 0b. if no VTK python wrappers: build, cache and exit (linux only)
# 0c. if no third-party builds (ospray, embree, rapidjson): build and cache
# 1. build Galaxy interactive interface
# 2. build Galaxy image writing interface
# 3. run gold image tests
# 4. run unit tests
- if [ -z ${GXY_REBUILDING_CACHE} ]; then scripts/travis-ci-build.sh; fi
- if [ -z ${GXY_REBUILDING_CACHE} ] && [ -f install/bin/gxywriter ] && [ "${TRAVIS_OS_NAME}" == "linux" ]; then tests/image-gold-tests.sh; fi
- if [ -z ${GXY_REBUILDING_CACHE} ] && [ -d install/tests ]; then tests/unit-tests.sh; fi
- echo $(date) > .galaxy/last_build
notifications:
slack:
secure: C9Y7Aqdo+6mK3K4js+mGyMXDR2+Nf0XY4ELPChV7T3WX2bUjxHMMSrRhOJPMAg6oxGjdFXJUSkzyy+nuUjkF4xAlMmDcNTkO/tgjSO7PGhJf0s4p6WGqKDwAlhqDNJKiJp7nXE88rCLLI4jjkQx5jQGbJuymugTyZbTT9bvui8MP5F4jMGakaHflYgL6RGZc+mLmENFxBgeniQLuRVu1vZj3Kf5HTYQoBIDe9DalOJbEk1qfC12s1ycYv0M0DXLqIt2T8mt9054pu0wbsE47iXcY2ujdZELzIncsqNK46e/waqovSxkWvXNavlvKxMEkW0etKof/XPM/aFOOb0eA/HVOaOKROp59j/IHYKiC4Pwgkg0CBGJiMjrHTgDoghXtPBQ2JTC/Ng3eSPIe9crJuAt0c1RRN+fg+N1RifCDCNcQzt4Xm6ek20ozjGMHwgD1j16gdUP8pqVX7gweo1vEPUn7RMnHdIeCqTyIGVEk0g9cGunEbIzDnPE1h1BcT9RYdg8QakUNgJdfy3aS+PsVNgsuzxAxfOkN3AdiVkHMCvSnR+SH9JCh4NdfOV6x6n9fwnOrE5Wupxz65ZWL4TFso9Anb3KA/csZktFCeb44NRBo0BqROHSC3EGBK/rHfw3ni4ZEEN56lW1BdVdms4XPpVn8LMhFUOwe1qNYJYEVxqg=