forked from Stellarium/stellarium
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
118 lines (107 loc) · 3.63 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
116
117
118
env:
global:
- secure: "nDBuoowqSmcjCOsK4uXfkRRGuvcLt434lXeZIND/bfOEDgOv7h62w5h4i3ebSgItWkBStLzGB8Owfb2v/S0jC+wSIoP+SD2wRg12LA0/eeb3OBYw/TR5FlCVx21/GzvODTNi8NdWb92AcYGhbLNPqMDIFHGscARjHiP2EnONhTs="
language: cpp
git:
depth: 1
quiet: true
matrix:
include:
- os: linux
dist: trusty
sudo: required
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-4.8
- ca-certificates
update:
- true
coverity_scan:
project:
name: "Stellarium/stellarium"
description: "A realistic, real-time 3D simulation of the night sky."
build_command_prepend: cov-configure --comptype gcc --compiler gcc-4.8 --template && cmake -DENABLE_TESTING=1 ..
build_command: make -j5
branch_pattern: coverity_scan
notification_email: [email protected]
env:
- MATRIX_EVAL="CC=gcc-4.8 && CXX=g++-4.8"
- TRANSLATE=true
- COVERAGE=false
- os: osx
osx_image: xcode11.3
env:
- MATRIX_EVAL="CC=clang && CXX=clang++"
- TRANSLATE=false
- COVERAGE=false
# - os: osx
# osx_image: xcode11.2.1
# env:
# - MATRIX_EVAL="CC=clang && CXX=clang++"
# - TRANSLATE=false
# - COVERAGE=false
before_install:
- eval "${MATRIX_EVAL}"
# Linux
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
mkdir qt5;
wget -q -O qt5.zip https://github.com/Stellarium/stellarium-data/releases/download/qt-5.6/qt5.zip;
unzip -qq qt5.zip -d qt5;
export PATH=`pwd`/qt5/bin:$PATH;
export QT_PLUGIN_PATH=`pwd`/qt5/plugins;
export PYTHONWARNINGS="ignore:A true SSLContext object is not available,ignore:An HTTPS request has been made";
fi
# Mac OS X
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
brew update > /dev/null;
brew upgrade > /dev/null;
brew install qt;
export PATH="/usr/local/opt/qt/bin:$PATH";
fi
# ... + Coverage
- if [[ "$COVERAGE" == true ]]; then
pip install --user cpp-coveralls;
gem install coveralls-lcov;
fi
install:
before_script:
- export DISPLAY=:99.0
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then sh -e /etc/init.d/xvfb start ; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then ( sudo Xvfb :99 -ac -screen 0 1024x768x8; echo ok )& fi
- sleep 3 # give xvfb some time to start
- mkdir build
- cd build
script:
- cmake -DENABLE_TESTING=1 ..
- make -j5
- ctest --output-on-failure
- if [[ "$COVERAGE" == true ]]; then
make coverage;
fi
after_success:
- if [[ "$TRANSLATE" == true && "$TRAVIS_BRANCH" == "master" && "$TRAVIS_PULL_REQUEST" == false && "$TRAVIS_REPO_SLUG" == "Stellarium/stellarium" ]]; then
pip install --user urllib3==1.23 transifex-client;
sudo echo $'[https://www.transifex.com]\nhostname = https://www.transifex.com\nusername = '"$TRANSIFEX_USER"$'\npassword = '"$TRANSIFEX_PASSWORD"$'\ntoken = '"$TRANSIFEX_API_TOKEN"$'\n' > ~/.transifexrc;
tx push -s;
fi
- if [[ "$COVERAGE" == true ]]; then
lcov --gcov-tool "/usr/bin/gcov-7" --remove coverage.info '*_autogen/*' '*/ui_*.h' '*/qrc_*.cpp' '*/qt5/*' '/usr/*' '*gmock*' --output-file coverage.info;
coveralls-lcov coverage.info;
fi
notifications:
email:
recipients:
on_success: change
on_failure: always
irc:
channels:
- "irc.freenode.net#stellarium"
template:
- "Stellarium/master #%{build_number} (%{author}): %{message}"
- "Change view : %{compare_url}"
- "Build details : %{build_url}"