forked from BioMedIA/MIRTK
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
108 lines (95 loc) · 4.45 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
dist: trusty
sudo: required
language: cpp
compiler:
- g++
- clang
git:
depth: 10
os:
- linux
- osx
env:
global:
# versions of VTK for each OS
# - On Ubuntu, use default version installed by apt-get
# - On macOS, build recent VTK version from sources and cache installation
- LINUX_VTK_VERSION=6.0.0
- MACOS_VTK_VERSION=8.1.0
- WITH_CCACHE=ON # speed up MIRTK build itself using ccache
- WITH_ARPACK=OFF # requires time consuming build of gcc on macOS
- WITH_UMFPACK=OFF # ARPACK & UMFPACK dependencies come in pairs
- WITH_TBB=ON # build with TBB is always recommended
- WITH_FLANN=ON # build with FLANN is optional, but requires only little extra build time
- WITH_FLTK=ON # build with FLTK-based Viewer when WITH_VTK is turned ON
# build and deployment of AppImage for Linux
- AppImage_BUILD=${AppImage_BUILD:-ON}
- AppImage_BRANCH=${AppImage_BRANCH:-master}
- AppImage_DEVEL=${AppImage_DEVEL:-ON}
- AppImage_LATEST=${AppImage_LATEST:-ON}
matrix:
- WITH_VTK=OFF # make sure that MIRTK can be build fine without VTK
- WITH_VTK=ON # test build with all moduldes, including those using VTK
matrix:
allow_failures:
# the osx build often breaks with homebrew changes, so we allow it to fail
- os: osx
exclude:
# in order to reduce number of jobs to wait for, test only main compilers
# used on each OS
- os: linux
compiler: clang
- os: osx
compiler: g++
# travis-ci.org has low capacity for macOS jobs, thus reduce number of
# macOS jobs to only the essential ones. With the following, we only need
# to wait for one macOS job.
# Because on macOS usually a very recent VTK version is installed with
# Homebrew, it is more interesting to build with VTK on macOS than on
# Ubuntu. When the GCC build without VTK on Ubuntu succeeds, chances
# are very high it also builts fine on macOS.
- os: osx
compiler: clang
env: WITH_VTK=OFF
cache:
ccache: true
timeout: 1000
directories:
- "$HOME/VTK-$LINUX_VTK_VERSION"
- "$HOME/VTK-$MACOS_VTK_VERSION"
before_install:
- . Scripts/install_depends.sh # sourcing will enable export of env variables
- cd $TRAVIS_BUILD_DIR # working directory may have been changed
install: true
script:
- Scripts/travis.sh
after_success:
- if [ "$AppImage_BUILD" = ON ] && [ "$TRAVIS_REPO_SLUG" = "BioMedIA/MIRTK" ] && [ "$TRAVIS_BRANCH" = "$AppImage_BRANCH" ] && [ "$TRAVIS_PULL_REQUEST" = false ] && [ "$TRAVIS_OS_NAME" = linux ] && [ "$WITH_VTK" = ON ]; then
export AppImage_BINTRAY=ON;
else
export AppImage_BINTRAY=OFF;
fi
- if [ "$AppImage_BUILD" = ON ] && [ "$AppImage_BINTRAY" = ON -o -n "$TRAVIS_TAG" ]; then
Scripts/make_appimage.sh;
fi
deploy:
- provider: bintray
skip_cleanup: true
user: "schuhschuh"
key:
secure: "ZppKEFWcfVwcO93ciA/zU5ThGLkveY/9fnEH4VyTZyYlnVuL+6R6G3BAalhgZLIdNLpmtMd057laqhupPYqt2c4KClRWuhg7pKisCzpZptUWHLgMq3hl2AKGpxMgWrwktVPR2lIpTG6UaQEZ6MUG+NscPUp2OlMwk4Kog2s/Vjr2qkkK51/reZBKz4K0mHmFuIhW7cUkebWCn81CgRLoIX1fiHo22hDvbIvZA/WH8UcyucR3znBjVaWSniXk70TMUyH6uDhx0sX+nml/JDd8UcIZsZm3wBxam39TzviTcyuY/YyK3TkPOOhWe9jutyVnOHwMbQSiI+Av+XjnlKI7DsBNvuMFA+ULcaHqozXgEFC87BrjeyBPq3Y95czsK11OWAB6xo/LIMONmhCSrybBG6ZuRi8c/FDuVlGhdaoixK3KjxD+JkB0twFSXA4ITKTAHPRrZHkgWiM0qFwL4KM1an86s4n8k8pdsN3HA61WoNR3k6WCZkOSrZ3mwi9IHaNN/Mh1jIYBDroBwNdAK0bCVXHgI0iFIdt7VU9K3ZeVoB//vdaG6qcVSkEXlcdTuzuhaD8fAuCnO1muv4FFz3+K6GX1Kc0rRWGqUlWRnOqCV1bG/g7fJnY+CeuZgkFzBlPyVtXa6gA1McHS21YzR7GprP9PLT6zxN0dvf457er8hyM="
file: ".bintray.yml"
on:
all_branches: true
condition: "$AppImage_BINTRAY = ON"
- provider: releases
skip_cleanup: true
api_key:
secure: "AQD/827hwRqb7Dihl+X3w2WBqGY+JpVcdfm28FEcxNF70WnjCis8V0OHACZ7VIGZHZbcyw33278wJoPwKPm7D1pu3+G++hP7PPLE7JhHJbj6oU7WTqJuvTjSc7F0DkUmXyttMPRpocCU0m3pbJXNhY4oqrYwEQJNtQbqbnYRPV958YR104bWji5VhmtB6Gsp3L7kfjvEAjinHAEDQXybO4/ZVSn+/5MycvE/qTk20NZedsa3rusdmrRAR79CwPBkg0zQhbV4qT0+K1COF1pw/35kyZ22x+mzG5wO+3n2NxrmKo4X3V1awipP+JEFFCsZti1joKxJ9IQo6OFfTPIDpqZQIuvlGr3/1K+iKuGq2OqiXFCdOoHnLBYvVxnr7uToaSMM9kqowevGc5fea2sV3YDvx7EIWJSJiCe5Ee8sWnSDLYJVoSY9ykmx6vRxPJ0iaUjLLajvPenapZOvQZRdZrIX1eFFZqXBB3HQzlbSG/PdjAVDY2KzOuOkXU5Rsaztj8FZgcvWk1U4mqYon+Hol30oGM6u+ZpiOEQclBQe0lUgFUbJv+na0cOoT2LLH0l6ZyifJtUIcfi4ZMAR8vRVAm63gQMX/PPaojXegWrVhS3KWSXyDqHNnFyTuwrnLKH7FWrpEkmaPann1i+LowukaMnizTaQjMM+JgVkBhhdwgo="
file: "Deploy/*.AppImage"
file_glob: true
on:
tags: true
all_branches: true
notifications:
email: false