generated from koinos/koinos-repo-template
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
117 lines (108 loc) · 3.62 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
language: c++
cache:
ccache: true
addons:
apt:
update: true
packages:
- clang
- clang-format
- llvm
- llvm-dev
- lcov
- ruby
- gcc-12
- g++-12
env:
global:
- CMAKE_C_COMPILER_LAUNCHER=ccache
- CMAKE_CXX_COMPILER_LAUNCHER=ccache
jobs:
include:
- name: "Static Analysis"
os: linux
dist: jammy
env:
- CC=clang
- CXX=clang++
before_script:
- cmake -DCMAKE_BUILD_TYPE=Debug -DSTATIC_ANALYSIS=ON .
script:
- cmake --build . --config Debug --parallel 3
- name: "Sanitizer"
os: linux
dist: jammy
env:
- CC=clang
- CXX=clang++
before_script:
- sudo sysctl vm.mmap_rnd_bits=28 # https://stackoverflow.com/questions/77850769/fatal-threadsanitizer-unexpected-memory-mapping-when-running-on-linux-kernels
- mkdir build-address
- pushd build-address
- cmake -DCMAKE_BUILD_TYPE=Debug -DSANITIZER=Address ..
- cmake --build . --config Debug --parallel 3
- popd
- mkdir build-stack
- pushd build-stack
- cmake -DCMAKE_BUILD_TYPE=Debug -DSANITIZER=Stack ..
- cmake --build . --config Debug --parallel 3
- popd
- mkdir build-thread
- pushd build-thread
- cmake -DCMAKE_BUILD_TYPE=Debug -DSANITIZER=Thread ..
- cmake --build . --config Debug --parallel 3
- popd
script:
- pushd build-address/tests
- ctest -j1 --output-on-failure
- popd
- pushd build-stack/tests
- ctest -j1 --output-on-failure
- popd
- pushd build-thread/tests
- ctest -j1 --output-on-failure
- name: "Coverage"
os: linux
dist: jammy
env:
- CC=clang
- CXX=clang++
install:
- sudo gem install coveralls-lcov
before_script:
- mkdir build
- cd build
- cmake -DCMAKE_BUILD_TYPE=Debug -DCOVERAGE=ON ..
script:
- cmake --build . --config Debug --parallel 3 --target coverage
after_success:
- coveralls-lcov --repo-token $COVERALLS_REPO_TOKEN --service-name travis-pro --service-job-id $TRAVIS_JOB_ID ./coverage.info
- name: "GCC Unit Tests"
os: linux
dist: jammy
env:
- CC=gcc-12
- CXX=g++-12
before_script:
- cmake -DCMAKE_BUILD_TYPE=Release .
- cmake --build . --config Release --parallel 3
script:
- cd tests
- ctest -j3 --output-on-failure
- name: "Clang Unit Tests and Formatting"
os: linux
dist: jammy
env:
- CC=clang
- CXX=clang++
before_script:
- cmake -DCMAKE_BUILD_TYPE=Release .
- cmake --build . --config Release --parallel 3
script:
- cmake --build . --config Release --parallel 3 --target format.check
- cd tests
- ctest -j3 --output-on-failure
notifications:
slack:
secure: dO+bR69Uu8PBZcFn2Et0ES66sZfxbOytMJBPLagMnp4yfjmeowKgjvzYaGu/LcW8PEHL0EWN+ZJqa3DIq/y6LMQP8E3WcyKZa8U6i48j8+RHgfbfd2PyXuGO6LmLdGVkndxX0MA3oQaKjk1iPwvjdB883Pm6hEFg97+ia0rD+RrfeiCJQFvDGn8QyLHMQQEL1JuTedZffTtBIgep7LPC7CEzaejx8ic/l6/FrqjCEIpTw82pPm2r43wNi+d4X5ieXzk09sy9lzO3MnBXrFVZmFu4hpg1Z1m+EyWUCtYuRGtN78Cc5DBVQq8l50PQge2OKLP5OBCOP97VZ78Z4MgkubpqDItABYEeO+O+jViGj/yXQq2PrOMscrSzvHsAOEtCpJkPftKj7cnCyjLBfAJ3S4zB4id3uRoV+vgmMRJAqDXEuYWssg5V+Nwy06W/3ObWp06p5eR1t8naGksy9X+/pYMz9CTdgL+LoGOhYXCA5yw1ajh2cS63S6GxRcP8GSQT0w2VzK5EFL2KmKWfqgxZ1OPFuO8R6nnf/iwwxI90r1FSzP4x+0MSBh5pN4Ic75/CFQVaYF+rgfmb85aFyxB209GQTrDwW9qKTvAta948xhEE31Mht6lSey8zhFNLNGgHKDflxciMu4DA1G6IuI5YBZgYFJgZbZ5IUrOndtMAZ+M=
on_success: never