gerrit: depends-on: use master when dependency changes are merged
[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
165- job-template:
166 name: liburcu_{version}_winbuild
167 defaults: liburcu
168
169 <<: *liburcu_build_axes_defaults
170 <<: *liburcu_build_builders_win
171 <<: *liburcu_build_publishers_defaults
172
e3022ad9
MJ
173- job-template:
174 name: liburcu_{version}_cppcheck
175 defaults: liburcu
176
177 triggers:
e8078c79
MJ
178 - pollscm:
179 cron: "@daily"
e3022ad9
MJ
180
181 builders:
182 - shell: |
5279b0f2
MJ
183 rm -f cppcheck-result.xml
184 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/liburcu 2> cppcheck-result.xml
e3022ad9
MJ
185
186 publishers:
187 - archive:
5279b0f2 188 artifacts: 'cppcheck-result.xml'
e3022ad9 189 allow-empty: false
e3022ad9 190 - cppcheck:
5279b0f2 191 pattern: 'cppcheck-result.xml'
092af1e4
JR
192 - email-ext:
193 recipients: '{obj:email_to}'
194 reply-to: ci-notification@lists.lttng.org
195 always: false
196 unstable: false
197 first-failure: true
198 first-unstable: false
199 not-built: false
200 aborted: false
201 regression: false
202 failure: false
203 second-failure: false
204 improvement: false
205 still-failing: false
206 success: false
207 fixed: false
208 fixed-unhealthy: true
209 still-unstable: true
210 pre-build: false
211 matrix-trigger: only-parent
212 send-to:
213 - recipients
e3022ad9 214
33b3de03
MJ
215- job-template:
216 name: dev_gerrit_liburcu_{buildtype}
217 defaults: liburcu
218 concurrent: true
219
220 scm:
221 - git:
222 url: https://review.lttng.org/userspace-rcu
223 refspec: 'refs/changes/*:refs/changes/*'
224 branches:
225 - '$GERRIT_REFSPEC'
226 basedir: src/liburcu
227 skip-tag: true
228
229 triggers:
230 - gerrit:
231 trigger-on:
232 - comment-added-event:
233 approval-category: 'CI-Build'
234 approval-value: 1
235 projects:
236 - project-compare-type: 'PLAIN'
237 project-pattern: 'userspace-rcu'
238 branches:
239 - branch-compare-type: 'ANT'
240 branch-pattern: '**'
241
242 <<: *liburcu_build_axes_defaults
243 <<: *liburcu_build_builders_defaults
244
245 publishers:
246 - tap:
247 results: 'tap/**/*.log'
248 fail-if-no-results: true
249 failed-tests-mark-build-as-failure: true
250 todo-is-failure: false
251 - warnings:
252 console-log-parsers:
253 - 'GNU Make + GNU C Compiler (gcc)'
254 total-thresholds:
255 unstable:
256 total-all: 0
257 total-high: 0
258 total-normal: 0
259 total-low: 0
260
e3022ad9
MJ
261- job-template:
262 name: liburcu_{version}_scan-build
263 defaults: liburcu
16844a6d 264 node: 'amd64'
e3022ad9
MJ
265
266 triggers:
e8078c79
MJ
267 - pollscm:
268 cron: "@daily"
e3022ad9
MJ
269
270 builders:
271 - shell:
69f05d59 272 !include-raw-escape: scripts/common/scan-build.sh
e3022ad9
MJ
273
274 publishers:
275 - html-publisher:
276 name: 'HTML Report'
277 dir: 'scan-build-archive/'
278 files: 'index.html'
279
e8078c79
MJ
280- job-template:
281 name: liburcu_{version}_coverity
282 defaults: liburcu
16844a6d 283 node: 'amd64'
e8078c79
MJ
284
285 triggers:
286 - pollscm:
287 cron: "@daily"
288
289 wrappers:
dfc19a66
MJ
290 - ansicolor
291 - timeout:
292 timeout: 60
293 fail: true
294 type: absolute
e8078c79 295 - timestamps
dfc19a66
MJ
296 - workspace-cleanup:
297 clean-if:
298 - failure: false
e8078c79
MJ
299 - credentials-binding:
300 - username-password-separated:
301 credential-id: liburcu_coverity_token
302 username: COVERITY_SCAN_PROJECT_NAME
303 password: COVERITY_SCAN_TOKEN
304
305 builders:
306 - shell:
ef63064f 307 !include-raw-escape: scripts/common/coverity.sh
e8078c79
MJ
308
309 publishers:
310 - workspace-cleanup
6d35c326
MJ
311 - archive:
312 artifacts: 'analysis-results.tgz,cov-int/**'
313 allow-empty: false
e3022ad9
MJ
314
315
69d7af71
MJ
316## Views
317- view-template:
318 name: 'Liburcu'
319 view-type: list
320 regex: 'liburcu[-_].*'
321
322
323## Projects
e3022ad9
MJ
324- project:
325 name: liburcu
51ca880a
MJ
326 github_user: urcu
327 github_name: userspace-rcu
092af1e4 328 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
e3022ad9 329 version:
dfc19a66 330 - stable-0.9
be76d048 331 - stable-0.10
69d7af71 332 - stable-0.11
9c359981 333 - stable-0.12
dfc19a66 334 - master
e3022ad9 335 jobs:
57ae8ff4
MJ
336 - 'liburcu_{version}_{buildtype}':
337 buildtype: build
16844a6d 338 arch: !!python/tuple [amd64]
9d0846f3 339 build: !!python/tuple [std, oot, dist]
dfc19a66 340 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
57ae8ff4
MJ
341 - 'liburcu_{version}_{buildtype}':
342 buildtype: portbuild
16844a6d 343 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
9d0846f3 344 build: !!python/tuple [std]
dfc19a66 345 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
81bf613d
MJ
346 - 'liburcu_{version}_{buildtype}':
347 buildtype: slesbuild
348 arch: !!python/tuple [sles12sp2]
349 build: !!python/tuple [std]
350 conf: !!python/tuple [std]
568b5cbd
MJ
351 - 'liburcu_{version}_{buildtype}':
352 buildtype: elbuild
353 arch: !!python/tuple [el8]
354 build: !!python/tuple [std]
355 conf: !!python/tuple [std]
7491c28d
MJ
356 - 'liburcu_{version}_{buildtype}':
357 buildtype: solarisbuild
995ac8f2 358 arch: !!python/tuple [sol10-i386, sol11-i386]
7491c28d 359 build: !!python/tuple [std]
dfc19a66 360 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
f7bf4d7a
MJ
361 - 'liburcu_{version}_{buildtype}':
362 buildtype: macosxbuild
363 arch: !!python/tuple [macosx]
364 build: !!python/tuple [std]
dfc19a66 365 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
dfc19a66 366 - 'liburcu_{version}_winbuild':
cefcd7f8 367 arch: !!python/tuple [cygwin64]
dfc19a66
MJ
368 build: !!python/tuple [std]
369 conf: !!python/tuple [std]
6ad0e7e6
MJ
370 - 'liburcu_{version}_{buildtype}':
371 buildtype: freebsdbuild
372 arch: !!python/tuple [freebsd]
373 build: !!python/tuple [std]
374 conf: !!python/tuple [std]
375 version:
376 - stable-0.12
377 - master
e3022ad9
MJ
378 - 'liburcu_{version}_cppcheck'
379 - 'liburcu_{version}_scan-build'
e8078c79
MJ
380 - 'liburcu_{version}_coverity':
381 version: master
e3022ad9 382
33b3de03
MJ
383- project:
384 name: gerrit-liburcu
385 github_user: urcu
386 github_name: userspace-rcu
387 jobs:
388 - 'dev_gerrit_liburcu_{buildtype}':
389 buildtype: build
390 arch: !!python/tuple [amd64]
391 build: !!python/tuple [std, oot, dist]
392 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
393 buildtype: build
394 - 'dev_gerrit_liburcu_{buildtype}':
395 buildtype: portbuild
396 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
397 build: !!python/tuple [std]
398 conf: !!python/tuple [std]
399
69d7af71
MJ
400- project:
401 name: liburcu-views
402 views:
403 - Liburcu
This page took 0.045079 seconds and 4 git commands to generate.