jjb: lttng-ust: add 'urcu_job_prefix' variable
[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:
51c9c62d
MJ
88 !include-raw-escape:
89 - scripts/common/print.sh
90 - scripts/liburcu/build.sh
e3022ad9 91
dfc19a66
MJ
92- liburcu_build_builders_win: &liburcu_build_builders_win
93 name: 'liburcu_build_builders_win'
94 builders:
dfc19a66
MJ
95 - conditional-step:
96 condition-kind: strings-match
97 on-evaluation-failure: run
98 condition-string1: '${{arch}}'
99 condition-string2: 'cygwin64'
100 steps:
101 - shell:
102 !include-raw-escape:
103 - scripts/common/cygwin64-shebang
cefcd7f8 104 - scripts/common/cygpath-prefix
51c9c62d 105 - scripts/common/print.sh
dfc19a66
MJ
106 - scripts/liburcu/build.sh
107
108- liburcu_build_publishers_defaults: &liburcu_build_publishers_defaults
109 name: 'liburcu_build_publishers_defaults'
e3022ad9 110 publishers:
69d7af71
MJ
111 - tap:
112 results: 'tap/**/*.log'
1d56e325 113 fail-if-no-results: true
69d7af71
MJ
114 failed-tests-mark-build-as-failure: true
115 todo-is-failure: false
e3022ad9
MJ
116 - warnings:
117 console-log-parsers:
118 - 'GNU Make + GNU C Compiler (gcc)'
51ca880a
MJ
119 total-thresholds:
120 unstable:
d2c76ee5
MJ
121 total-all: 0
122 total-high: 0
123 total-normal: 0
124 total-low: 0
e3022ad9 125 - archive:
69d7af71 126 artifacts: 'build/**,tap/**'
e3022ad9 127 allow-empty: false
1d573689 128 - ircbot:
95654431 129 strategy: new-failure-and-fixed
1d573689
MJ
130 matrix-notifier: only-parent
131 channels:
132 - name: '#lttng'
092af1e4
JR
133 - email-ext:
134 recipients: '{obj:email_to}'
135 reply-to: ci-notification@lists.lttng.org
136 always: false
137 unstable: false
138 first-failure: true
139 first-unstable: true
140 not-built: false
141 aborted: false
142 regression: false
143 failure: false
144 second-failure: false
145 improvement: false
146 still-failing: false
147 success: false
148 fixed: false
149 fixed-unhealthy: true
150 still-unstable: false
151 pre-build: false
152 matrix-trigger: only-parent
153 send-to:
154 - recipients
dfc19a66
MJ
155
156## Templates
157- job-template:
158 name: liburcu_{version}_{buildtype}
159 defaults: liburcu
160
161 <<: *liburcu_build_axes_defaults
162 <<: *liburcu_build_builders_defaults
163 <<: *liburcu_build_publishers_defaults
164
24b12170
MJ
165- job-template:
166 name: dev_upstream_liburcu_{version}_{buildtype}
167 defaults: liburcu
168
169 <<: *liburcu_build_axes_defaults
170 <<: *liburcu_build_builders_defaults
171 <<: *liburcu_build_publishers_defaults
172
dfc19a66
MJ
173- job-template:
174 name: liburcu_{version}_winbuild
175 defaults: liburcu
176
177 <<: *liburcu_build_axes_defaults
178 <<: *liburcu_build_builders_win
179 <<: *liburcu_build_publishers_defaults
180
24b12170
MJ
181- job-template:
182 name: dev_upstream_liburcu_{version}_winbuild
183 defaults: liburcu
184
185 <<: *liburcu_build_axes_defaults
186 <<: *liburcu_build_builders_win
187 <<: *liburcu_build_publishers_defaults
188
e3022ad9
MJ
189- job-template:
190 name: liburcu_{version}_cppcheck
191 defaults: liburcu
192
193 triggers:
e8078c79
MJ
194 - pollscm:
195 cron: "@daily"
e3022ad9
MJ
196
197 builders:
198 - shell: |
5279b0f2
MJ
199 rm -f cppcheck-result.xml
200 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/liburcu 2> cppcheck-result.xml
e3022ad9
MJ
201
202 publishers:
203 - archive:
5279b0f2 204 artifacts: 'cppcheck-result.xml'
e3022ad9 205 allow-empty: false
e3022ad9 206 - cppcheck:
5279b0f2 207 pattern: 'cppcheck-result.xml'
092af1e4
JR
208 - email-ext:
209 recipients: '{obj:email_to}'
210 reply-to: ci-notification@lists.lttng.org
211 always: false
212 unstable: false
213 first-failure: true
214 first-unstable: false
215 not-built: false
216 aborted: false
217 regression: false
218 failure: false
219 second-failure: false
220 improvement: false
221 still-failing: false
222 success: false
223 fixed: false
224 fixed-unhealthy: true
225 still-unstable: true
226 pre-build: false
227 matrix-trigger: only-parent
228 send-to:
229 - recipients
e3022ad9 230
33b3de03
MJ
231- job-template:
232 name: dev_gerrit_liburcu_{buildtype}
233 defaults: liburcu
234 concurrent: true
235
236 scm:
237 - git:
238 url: https://review.lttng.org/userspace-rcu
239 refspec: 'refs/changes/*:refs/changes/*'
240 branches:
241 - '$GERRIT_REFSPEC'
242 basedir: src/liburcu
243 skip-tag: true
244
245 triggers:
246 - gerrit:
247 trigger-on:
248 - comment-added-event:
249 approval-category: 'CI-Build'
250 approval-value: 1
251 projects:
252 - project-compare-type: 'PLAIN'
253 project-pattern: 'userspace-rcu'
254 branches:
255 - branch-compare-type: 'ANT'
256 branch-pattern: '**'
257
258 <<: *liburcu_build_axes_defaults
259 <<: *liburcu_build_builders_defaults
260
261 publishers:
262 - tap:
263 results: 'tap/**/*.log'
264 fail-if-no-results: true
265 failed-tests-mark-build-as-failure: true
266 todo-is-failure: false
267 - warnings:
268 console-log-parsers:
269 - 'GNU Make + GNU C Compiler (gcc)'
270 total-thresholds:
271 unstable:
272 total-all: 0
273 total-high: 0
274 total-normal: 0
275 total-low: 0
276
e3022ad9
MJ
277- job-template:
278 name: liburcu_{version}_scan-build
279 defaults: liburcu
16844a6d 280 node: 'amd64'
e3022ad9
MJ
281
282 triggers:
e8078c79
MJ
283 - pollscm:
284 cron: "@daily"
e3022ad9
MJ
285
286 builders:
287 - shell:
69f05d59 288 !include-raw-escape: scripts/common/scan-build.sh
e3022ad9
MJ
289
290 publishers:
291 - html-publisher:
292 name: 'HTML Report'
293 dir: 'scan-build-archive/'
294 files: 'index.html'
295
e8078c79
MJ
296- job-template:
297 name: liburcu_{version}_coverity
298 defaults: liburcu
16844a6d 299 node: 'amd64'
e8078c79
MJ
300
301 triggers:
302 - pollscm:
303 cron: "@daily"
304
305 wrappers:
dfc19a66
MJ
306 - ansicolor
307 - timeout:
308 timeout: 60
309 fail: true
310 type: absolute
e8078c79 311 - timestamps
dfc19a66
MJ
312 - workspace-cleanup:
313 clean-if:
314 - failure: false
e8078c79
MJ
315 - credentials-binding:
316 - username-password-separated:
317 credential-id: liburcu_coverity_token
318 username: COVERITY_SCAN_PROJECT_NAME
319 password: COVERITY_SCAN_TOKEN
320
321 builders:
322 - shell:
ef63064f 323 !include-raw-escape: scripts/common/coverity.sh
e8078c79
MJ
324
325 publishers:
326 - workspace-cleanup
6d35c326
MJ
327 - archive:
328 artifacts: 'analysis-results.tgz,cov-int/**'
329 allow-empty: false
e3022ad9
MJ
330
331
69d7af71
MJ
332## Views
333- view-template:
334 name: 'Liburcu'
335 view-type: list
336 regex: 'liburcu[-_].*'
337
338
339## Projects
e3022ad9
MJ
340- project:
341 name: liburcu
51ca880a
MJ
342 github_user: urcu
343 github_name: userspace-rcu
092af1e4 344 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
e3022ad9 345 version:
9c359981 346 - stable-0.12
d456a285 347 - stable-0.13
dfc19a66 348 - master
e3022ad9 349 jobs:
57ae8ff4
MJ
350 - 'liburcu_{version}_{buildtype}':
351 buildtype: build
16844a6d 352 arch: !!python/tuple [amd64]
9d0846f3 353 build: !!python/tuple [std, oot, dist]
dfc19a66 354 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
57ae8ff4
MJ
355 - 'liburcu_{version}_{buildtype}':
356 buildtype: portbuild
16844a6d 357 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
9d0846f3 358 build: !!python/tuple [std]
dfc19a66 359 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
81bf613d
MJ
360 - 'liburcu_{version}_{buildtype}':
361 buildtype: slesbuild
80d2c49d 362 arch: !!python/tuple [sles12sp5]
81bf613d
MJ
363 build: !!python/tuple [std]
364 conf: !!python/tuple [std]
568b5cbd
MJ
365 - 'liburcu_{version}_{buildtype}':
366 buildtype: elbuild
367 arch: !!python/tuple [el8]
368 build: !!python/tuple [std]
369 conf: !!python/tuple [std]
f7bf4d7a 370 - 'liburcu_{version}_{buildtype}':
f0d7e5b1
MJ
371 buildtype: macosbuild
372 arch: !!python/tuple [macos-amd64, macos-arm64]
f7bf4d7a 373 build: !!python/tuple [std]
f0d7e5b1 374 conf: !!python/tuple [std]
dfc19a66 375 - 'liburcu_{version}_winbuild':
cefcd7f8 376 arch: !!python/tuple [cygwin64]
dfc19a66
MJ
377 build: !!python/tuple [std]
378 conf: !!python/tuple [std]
6ad0e7e6
MJ
379 - 'liburcu_{version}_{buildtype}':
380 buildtype: freebsdbuild
381 arch: !!python/tuple [freebsd]
382 build: !!python/tuple [std]
383 conf: !!python/tuple [std]
384 version:
385 - stable-0.12
d456a285 386 - stable-0.13
6ad0e7e6 387 - master
e3022ad9
MJ
388 - 'liburcu_{version}_cppcheck'
389 - 'liburcu_{version}_scan-build'
e8078c79
MJ
390 - 'liburcu_{version}_coverity':
391 version: master
e3022ad9 392
24b12170
MJ
393
394- project:
395 name: liburcu-dev-upstream
396 github_user: urcu
397 github_name: userspace-rcu
398 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
399 version:
400 - stable-0.9
401 - stable-0.10
402 - stable-0.11
403 jobs:
404 - 'dev_upstream_liburcu_{version}_{buildtype}':
405 buildtype: build
406 arch: !!python/tuple [amd64]
407 build: !!python/tuple [std, oot, dist]
408 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
409 - 'dev_upstream_liburcu_{version}_{buildtype}':
410 buildtype: portbuild
411 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
412 build: !!python/tuple [std]
413 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
414 - 'dev_upstream_liburcu_{version}_{buildtype}':
415 buildtype: slesbuild
416 arch: !!python/tuple [sles12sp5]
417 build: !!python/tuple [std]
418 conf: !!python/tuple [std]
419 - 'dev_upstream_liburcu_{version}_{buildtype}':
420 buildtype: elbuild
421 arch: !!python/tuple [el8]
422 build: !!python/tuple [std]
423 conf: !!python/tuple [std]
424
425
33b3de03
MJ
426- project:
427 name: gerrit-liburcu
428 github_user: urcu
429 github_name: userspace-rcu
430 jobs:
431 - 'dev_gerrit_liburcu_{buildtype}':
432 buildtype: build
433 arch: !!python/tuple [amd64]
434 build: !!python/tuple [std, oot, dist]
435 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
436 buildtype: build
437 - 'dev_gerrit_liburcu_{buildtype}':
438 buildtype: portbuild
439 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
440 build: !!python/tuple [std]
441 conf: !!python/tuple [std]
442
24b12170 443
69d7af71
MJ
444- project:
445 name: liburcu-views
446 views:
447 - Liburcu
This page took 0.04732 seconds and 4 git commands to generate.