jjb: Use the https protocol for checkouts on Github, it's faster
[lttng-ci.git] / jobs / liburcu.yaml
CommitLineData
e3022ad9
MJ
1# {project}_{version}_{jobtype}
2# liburcu_stable-0.8_build
3#
4# jobtypes:
5# - build
6# - portbuild
7# - cppcheck
8# - coverity
9# - scan-build
10# - pylint
11
12- defaults:
13 name: liburcu
14 description: |
15 liburcu is a LGPLv2.1 userspace RCU (read-copy-update) library. This
16 data synchronization library provides read-side access which scales
17 linearly with the number of cores. It does so by allowing multiples
18 copies of a given data structure to live at the same time, and by
19 monitoring the data structure accesses to detect grace periods after
20 which memory reclamation is possible.
21
22 liburcu-cds provides efficient data structures based on RCU and
23 lock-free algorithms. Those structures include hash tables, queues,
24 stacks, and doubly-linked lists.
25
26 <p>Job is managed by Jenkins Job Builder.</p>
27
28 project-type: freestyle
29
e3022ad9 30 wrappers:
dfc19a66
MJ
31 - ansicolor
32 - timeout:
33 timeout: 90
34 fail: true
35 type: absolute
e3022ad9 36 - timestamps
dfc19a66
MJ
37 - workspace-cleanup:
38 clean-if:
39 - failure: false
e3022ad9
MJ
40
41 scm:
42 - git:
4d27af8f 43 url: https://github.com/{github_user}/{github_name}.git
e3022ad9 44 browser: githubweb
51ca880a 45 browser-url: https://github.com/{github_user}/{github_name}
e3022ad9
MJ
46 branches:
47 - origin/{version}
6d35c326 48 basedir: src/liburcu
0a6e708b 49 skip-tag: true
e3022ad9
MJ
50
51 triggers:
e8078c79
MJ
52 - pollscm:
53 cron: "@hourly"
e3022ad9
MJ
54
55 properties:
69f05d59
MJ
56 - inject:
57 properties-content: |
58 PROJECT_NAME=liburcu
edf72710
MJ
59 - build-discarder:
60 num-to-keep: 2
e3022ad9 61 - github:
51ca880a 62 url: https://github.com/{github_user}/{github_name}
e3022ad9
MJ
63
64
dfc19a66
MJ
65## Anchors
66- liburcu_build_axes_defaults: &liburcu_build_axes_defaults
67 name: 'liburcu_build_axes_defaults'
e3022ad9 68 project-type: matrix
ca8c6144 69 node: 'master' # Applies only to matrix flyweight task
e3022ad9
MJ
70 axes:
71 - axis:
72 type: slave
73 name: arch
b6e61d51 74 values: '{obj:arch}'
e3022ad9
MJ
75 - axis:
76 type: user-defined
77 name: conf
dfc19a66 78 values: '{obj:conf}'
e3022ad9
MJ
79 - axis:
80 type: user-defined
81 name: build
9d0846f3 82 values: '{obj:build}'
e3022ad9 83
dfc19a66
MJ
84- liburcu_build_builders_defaults: &liburcu_build_builders_defaults
85 name: 'liburcu_build_builders_defaults'
e3022ad9
MJ
86 builders:
87 - shell:
ef63064f 88 !include-raw-escape: scripts/liburcu/build.sh
e3022ad9 89
dfc19a66
MJ
90- liburcu_build_builders_win: &liburcu_build_builders_win
91 name: 'liburcu_build_builders_win'
92 builders:
dfc19a66
MJ
93 - conditional-step:
94 condition-kind: strings-match
95 on-evaluation-failure: run
96 condition-string1: '${{arch}}'
97 condition-string2: 'cygwin64'
98 steps:
99 - shell:
100 !include-raw-escape:
101 - scripts/common/cygwin64-shebang
cefcd7f8 102 - scripts/common/cygpath-prefix
dfc19a66
MJ
103 - scripts/liburcu/build.sh
104
105- liburcu_build_publishers_defaults: &liburcu_build_publishers_defaults
106 name: 'liburcu_build_publishers_defaults'
e3022ad9 107 publishers:
69d7af71
MJ
108 - tap:
109 results: 'tap/**/*.log'
1d56e325 110 fail-if-no-results: true
69d7af71
MJ
111 failed-tests-mark-build-as-failure: true
112 todo-is-failure: false
e3022ad9
MJ
113 - warnings:
114 console-log-parsers:
115 - 'GNU Make + GNU C Compiler (gcc)'
51ca880a
MJ
116 total-thresholds:
117 unstable:
d2c76ee5
MJ
118 total-all: 0
119 total-high: 0
120 total-normal: 0
121 total-low: 0
e3022ad9 122 - archive:
69d7af71 123 artifacts: 'build/**,tap/**'
e3022ad9 124 allow-empty: false
1d573689 125 - ircbot:
95654431 126 strategy: new-failure-and-fixed
1d573689
MJ
127 matrix-notifier: only-parent
128 channels:
129 - name: '#lttng'
092af1e4
JR
130 - email-ext:
131 recipients: '{obj:email_to}'
132 reply-to: ci-notification@lists.lttng.org
133 always: false
134 unstable: false
135 first-failure: true
136 first-unstable: true
137 not-built: false
138 aborted: false
139 regression: false
140 failure: false
141 second-failure: false
142 improvement: false
143 still-failing: false
144 success: false
145 fixed: false
146 fixed-unhealthy: true
147 still-unstable: false
148 pre-build: false
149 matrix-trigger: only-parent
150 send-to:
151 - recipients
dfc19a66
MJ
152
153## Templates
154- job-template:
155 name: liburcu_{version}_{buildtype}
156 defaults: liburcu
157
158 <<: *liburcu_build_axes_defaults
159 <<: *liburcu_build_builders_defaults
160 <<: *liburcu_build_publishers_defaults
161
162- job-template:
163 name: liburcu_{version}_winbuild
164 defaults: liburcu
165
166 <<: *liburcu_build_axes_defaults
167 <<: *liburcu_build_builders_win
168 <<: *liburcu_build_publishers_defaults
169
e3022ad9
MJ
170- job-template:
171 name: liburcu_{version}_cppcheck
172 defaults: liburcu
173
174 triggers:
e8078c79
MJ
175 - pollscm:
176 cron: "@daily"
e3022ad9
MJ
177
178 builders:
179 - shell: |
5279b0f2
MJ
180 rm -f cppcheck-result.xml
181 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/liburcu 2> cppcheck-result.xml
e3022ad9
MJ
182
183 publishers:
184 - archive:
5279b0f2 185 artifacts: 'cppcheck-result.xml'
e3022ad9 186 allow-empty: false
e3022ad9 187 - cppcheck:
5279b0f2 188 pattern: 'cppcheck-result.xml'
092af1e4
JR
189 - email-ext:
190 recipients: '{obj:email_to}'
191 reply-to: ci-notification@lists.lttng.org
192 always: false
193 unstable: false
194 first-failure: true
195 first-unstable: false
196 not-built: false
197 aborted: false
198 regression: false
199 failure: false
200 second-failure: false
201 improvement: false
202 still-failing: false
203 success: false
204 fixed: false
205 fixed-unhealthy: true
206 still-unstable: true
207 pre-build: false
208 matrix-trigger: only-parent
209 send-to:
210 - recipients
e3022ad9
MJ
211
212- job-template:
213 name: liburcu_{version}_scan-build
214 defaults: liburcu
16844a6d 215 node: 'amd64'
e3022ad9
MJ
216
217 triggers:
e8078c79
MJ
218 - pollscm:
219 cron: "@daily"
e3022ad9
MJ
220
221 builders:
222 - shell:
69f05d59 223 !include-raw-escape: scripts/common/scan-build.sh
e3022ad9
MJ
224
225 publishers:
226 - html-publisher:
227 name: 'HTML Report'
228 dir: 'scan-build-archive/'
229 files: 'index.html'
230
e8078c79
MJ
231- job-template:
232 name: liburcu_{version}_coverity
233 defaults: liburcu
16844a6d 234 node: 'amd64'
e8078c79
MJ
235
236 triggers:
237 - pollscm:
238 cron: "@daily"
239
240 wrappers:
dfc19a66
MJ
241 - ansicolor
242 - timeout:
243 timeout: 60
244 fail: true
245 type: absolute
e8078c79 246 - timestamps
dfc19a66
MJ
247 - workspace-cleanup:
248 clean-if:
249 - failure: false
e8078c79
MJ
250 - credentials-binding:
251 - username-password-separated:
252 credential-id: liburcu_coverity_token
253 username: COVERITY_SCAN_PROJECT_NAME
254 password: COVERITY_SCAN_TOKEN
255
256 builders:
257 - shell:
ef63064f 258 !include-raw-escape: scripts/common/coverity.sh
e8078c79
MJ
259
260 publishers:
261 - workspace-cleanup
6d35c326
MJ
262 - archive:
263 artifacts: 'analysis-results.tgz,cov-int/**'
264 allow-empty: false
e3022ad9
MJ
265
266
69d7af71
MJ
267## Views
268- view-template:
269 name: 'Liburcu'
270 view-type: list
271 regex: 'liburcu[-_].*'
272
273
274## Projects
e3022ad9
MJ
275- project:
276 name: liburcu
51ca880a
MJ
277 github_user: urcu
278 github_name: userspace-rcu
092af1e4 279 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
e3022ad9 280 version:
dfc19a66 281 - stable-0.9
be76d048 282 - stable-0.10
69d7af71 283 - stable-0.11
9c359981 284 - stable-0.12
dfc19a66 285 - master
e3022ad9 286 jobs:
57ae8ff4
MJ
287 - 'liburcu_{version}_{buildtype}':
288 buildtype: build
16844a6d 289 arch: !!python/tuple [amd64]
9d0846f3 290 build: !!python/tuple [std, oot, dist]
dfc19a66 291 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
57ae8ff4
MJ
292 - 'liburcu_{version}_{buildtype}':
293 buildtype: portbuild
16844a6d 294 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
9d0846f3 295 build: !!python/tuple [std]
dfc19a66 296 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
81bf613d
MJ
297 - 'liburcu_{version}_{buildtype}':
298 buildtype: slesbuild
299 arch: !!python/tuple [sles12sp2]
300 build: !!python/tuple [std]
301 conf: !!python/tuple [std]
568b5cbd
MJ
302 - 'liburcu_{version}_{buildtype}':
303 buildtype: elbuild
304 arch: !!python/tuple [el8]
305 build: !!python/tuple [std]
306 conf: !!python/tuple [std]
7491c28d
MJ
307 - 'liburcu_{version}_{buildtype}':
308 buildtype: solarisbuild
995ac8f2 309 arch: !!python/tuple [sol10-i386, sol11-i386]
7491c28d 310 build: !!python/tuple [std]
dfc19a66 311 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
f7bf4d7a
MJ
312 - 'liburcu_{version}_{buildtype}':
313 buildtype: macosxbuild
314 arch: !!python/tuple [macosx]
315 build: !!python/tuple [std]
dfc19a66 316 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
dfc19a66 317 - 'liburcu_{version}_winbuild':
cefcd7f8 318 arch: !!python/tuple [cygwin64]
dfc19a66
MJ
319 build: !!python/tuple [std]
320 conf: !!python/tuple [std]
e3022ad9
MJ
321 - 'liburcu_{version}_cppcheck'
322 - 'liburcu_{version}_scan-build'
e8078c79
MJ
323 - 'liburcu_{version}_coverity':
324 version: master
e3022ad9 325
69d7af71
MJ
326- project:
327 name: liburcu-views
328 views:
329 - Liburcu
This page took 0.041662 seconds and 4 git commands to generate.