]> Creatis software - clitk.git/blob - .travis.yml
Update Travis file to manage cache failure
[clitk.git] / .travis.yml
1 git:
2   depth: 1
3   
4 sudo: required
5
6 dist: trusty
7
8 os: 
9     - osx
10     - linux
11 compiler:
12     - gcc
13     - clang
14 env:
15     - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=5.5.1 C11=false
16     - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=false
17     - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=5.5.1 C11=false
18     - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=false
19     - WITH_CMAKE=true VTK_VERSION=5.10 ITK_VERSION=4.5 QT_VERSION=4.8.7 C11=false
20     - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=5.5.1 C11=true
21     - WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=true
22     - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=5.5.1 C11=true
23     - WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=true
24     - WITH_CMAKE=true VTK_VERSION=5.10 ITK_VERSION=4.5 QT_VERSION=4.8.7 C11=true
25
26 matrix:
27   exclude:
28   - os: osx
29     env: WITH_CMAKE=true VTK_VERSION=5.10 ITK_VERSION=4.5 QT_VERSION=4.8.7 C11=false #VTK5.10 doesn't work with osX
30   - os: osx
31     env: WITH_CMAKE=true VTK_VERSION=5.10 ITK_VERSION=4.5 QT_VERSION=4.8.7 C11=true #VTK5.10 doesn't work with osX
32   - os: osx
33     env: WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=false #Qt4 doesn't work with brew anymore
34   - os: osx
35     env: WITH_CMAKE=true VTK_VERSION=6.3 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=true #Qt4 doesn't work with brew anymore
36   - os: osx
37     env: WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=false
38   - os: osx
39     env: WITH_CMAKE=true VTK_VERSION=7.0.0 ITK_VERSION=4.9.1 QT_VERSION=4.8.7 C11=true
40   - os: linux
41     env: WITH_CMAKE=true VTK_VERSION=5.10 ITK_VERSION=4.5 QT_VERSION=4.8.7 C11=true #Problem with VTK 5.10 and c++11
42
43 language: cpp
44
45 notifications:
46  email:
47   on_success: never
48   on_failure: never
49
50 addons:
51   sonarcloud:
52     organization: "open-vv-github"
53     token:
54       secure: "cvFKxhrmarSAieav+qev+QdQiyx17jMyQggTBWigSiSeeYPWEUloyF5VnC+sL7o6Kh21ooXKhgvN+J1wB1FEwV8tqoOGoQRaqWpFwRbjqo1qn1r2J6+XMcmaAq6KOeUYzYdk+j8/ZnpkjhxVZIejXtVQpNg02QuqIO8ZmToWPgcKU6VCK33jbN1zZc2TXXbV7KyC6wdX0dZ3Y9lbaBtBGUr7C8QXmT4MUqtuwjQMymTDEBTuhyNn1sp+kEOOV7C6sji58q9h1C+r61+vpcQ5wmJDLr8Gy/uQhm3vCjqNNenHLRLnW5ITRgjL1pqhd499ppSFuGI76wAo5XMMkwTbYJRqUU56z09ZdwyVebsDgMJID/jgtQtclPPkiDOFs40+/gSNQzcOsO8tBNVOC9i/AFIDjbkRFAf6Uq+w34C3lf+7eVVlwGqaifSTTEm/Q/FyVWdGoFDANmbMhodfODT6gm16CQT0WkmQ67bKEu0sqKz6HrEXQ2R8xG8smNzpSRR1KbPv13Xd6Xb7xkOklBc9x2ccSyR6wXqPO9vJrJWNqyGMFKFlpZ2d8zTDtyuAvFxBBYykAmVW55g1VuNeRrIeynMBzib0HSRZhxUBDW8znVeKoeZLQxNihMZnXj9W996lreInheN9ySTwANfx20+b3AMBsRRhuIi5EPmeYTM/kR4="
55
56 branches:
57 only:
58 - master
59
60 before_install:
61 - if test $TRAVIS_OS_NAME == osx ; then brew update; fi
62 - if test $TRAVIS_OS_NAME == linux ; then sudo add-apt-repository --yes ppa:kubuntu-ppa/backports; fi
63 - if test $TRAVIS_OS_NAME == linux ; then sudo apt-get update -qq; fi
64 - if test $TRAVIS_OS_NAME == linux ; then sudo apt-get install --reinstall ca-certificates; fi
65 - export NUM_THREADS=2
66 - export cwd=$(pwd)
67 - export SCRIPTS=$cwd/travis
68 - export EXTERNALS_DIR=$HOME
69 - export VTK_SOURCE_DIR=${EXTERNALS_DIR}/vtk-${VTK_VERSION}
70 - export VTK_DIR=${EXTERNALS_DIR}/vtk-${VTK_VERSION}-build
71 - export ITK_SOURCE_DIR=${EXTERNALS_DIR}/itk-${ITK_VERSION}
72 - export ITK_DIR=${EXTERNALS_DIR}/itk-${ITK_VERSION}-build
73 - export BUILD_DIR=$cwd/build
74 - if test $TRAVIS_OS_NAME == linux ; then sudo apt-get install -y -qq build-essential cmake; fi
75 #Install qt5
76 - $SCRIPTS/travis_build_qt.sh
77 - if test $TRAVIS_OS_NAME == linux; then sudo apt-get -y install libgdcm2-dev libpq-dev; fi
78 - if test $TRAVIS_OS_NAME == linux; then if [[ "$QT_VERSION" == "5.5.1" ]] ; then QTDIR="/opt/qt55" && PATH="$PATH:$QTDIR/bin" && qt55-env.sh ; fi; fi
79 - if test $TRAVIS_OS_NAME == osx ; then export HOMEBREW_QT_VERSION=$(brew list --versions qt | rev | cut -d' ' -f1 | rev); fi
80 - if test $TRAVIS_OS_NAME == osx ; then brew install ccache; fi
81 - if test $TRAVIS_OS_NAME == osx ; then export PATH="/usr/local/opt/qt/bin:/usr/local/opt/ccache/libexec:$PATH"; fi
82 - if test $TRAVIS_OS_NAME == osx ; then qmake -v; fi
83
84 cache: ccache
85 #install:
86 # - timeout: 1000
87 directories:
88  - $HOME/vtk-5.10
89  - $HOME/vtk-5.10-build
90  - $HOME/vtk-6.3
91  - $HOME/vtk-6.3-build
92  - $HOME/vtk-7.0.0
93  - $HOME/vtk-7.0.0-build
94  - $HOME/itk-4.5
95  - $HOME/itk-4.5-build
96  - $HOME/itk-4.9.1
97  - $HOME/itk-4.9.1-build
98  - '$HOME/.sorar/cache'
99
100 before_script:
101 - export DO_BUILD_VTK=false
102 - export DO_BUILD_ITK=false
103 - if test $TRAVIS_OS_NAME == linux ; then sudo ln -s /usr/bin/x86_64-linux-gnu/libpq.so /usr/bin/libpq.so; fi
104 - if ! test -e ${VTK_SOURCE_DIR}/CMakeLists.txt; then rm -fr $VTK_SOURCE_DIR; DO_BUILD_VTK=true; fi
105 - if ! test -e ${ITK_SOURCE_DIR}/CMakeLists.txt; then rm -fr $ITK_SOURCE_DIR; DO_BUILD_ITK=true; fi
106 #Install vtk and itk (different version)
107
108 script:
109 - 'if [ $DO_BUILD_VTK == true ]; then $SCRIPTS/travis_build_vtk.sh || travis_terminate 1;
110    elif [ $DO_BUILD_ITK == true ]; then $SCRIPTS/travis_build_itk.sh || travis_terminate 1;
111    else $SCRIPTS/travis_build_vv.sh || travis_terminate 1; fi'
112 - if [test $TRAVIS_OS_NAME == linux] && [ $DO_BUILD_VTK == false ] && [ $DO_BUILD_ITK == false ]; then build-wrapper-linux-x86-64 --out-dir bw-output make clean all; fi
113 - if [test $TRAVIS_OS_NAME == linux] && [ $DO_BUILD_VTK == false ] && [ $DO_BUILD_ITK == false ]; then sonar-scanner; fi