Add 2.11 and 2.12 to system tests overarching job
[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:
51ca880a 43 url: git://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:
93 - conditional-step:
94 condition-kind: strings-match
95 on-evaluation-failure: run
96 condition-string1: '${{arch}}'
97 condition-string2: 'cygwin'
98 steps:
99 - shell:
100 !include-raw-escape:
101 - scripts/common/cygwin-shebang
102 - scripts/common/cygwin-prefix
103 - scripts/liburcu/build.sh
104 - conditional-step:
105 condition-kind: strings-match
106 on-evaluation-failure: run
107 condition-string1: '${{arch}}'
108 condition-string2: 'cygwin64'
109 steps:
110 - shell:
111 !include-raw-escape:
112 - scripts/common/cygwin64-shebang
113 - scripts/common/cygwin-prefix
114 - scripts/liburcu/build.sh
115 - conditional-step:
116 condition-kind: strings-match
117 on-evaluation-failure: run
118 condition-string1: '${{arch}}'
8f541678 119 condition-string2: 'msys2-mingw32'
dfc19a66
MJ
120 steps:
121 - inject:
122 properties-content: 'MSYSTEM=MINGW32'
123 - shell:
124 !include-raw-escape:
8f541678 125 - scripts/common/msys2-shebang
dfc19a66
MJ
126 - scripts/common/cygwin-prefix
127 - scripts/liburcu/build.sh
128 - conditional-step:
129 condition-kind: strings-match
130 on-evaluation-failure: run
131 condition-string1: '${{arch}}'
8f541678 132 condition-string2: 'msys2-mingw64'
dfc19a66
MJ
133 steps:
134 - inject:
135 properties-content: 'MSYSTEM=MINGW64'
136 - shell:
137 !include-raw-escape:
8f541678 138 - scripts/common/msys2-shebang
dfc19a66
MJ
139 - scripts/common/cygwin-prefix
140 - scripts/liburcu/build.sh
141
142- liburcu_build_publishers_defaults: &liburcu_build_publishers_defaults
143 name: 'liburcu_build_publishers_defaults'
e3022ad9 144 publishers:
69d7af71
MJ
145 - tap:
146 results: 'tap/**/*.log'
1d56e325 147 fail-if-no-results: true
69d7af71
MJ
148 failed-tests-mark-build-as-failure: true
149 todo-is-failure: false
e3022ad9
MJ
150 - warnings:
151 console-log-parsers:
152 - 'GNU Make + GNU C Compiler (gcc)'
51ca880a
MJ
153 total-thresholds:
154 unstable:
d2c76ee5
MJ
155 total-all: 0
156 total-high: 0
157 total-normal: 0
158 total-low: 0
e3022ad9 159 - archive:
69d7af71 160 artifacts: 'build/**,tap/**'
e3022ad9 161 allow-empty: false
1d573689 162 - ircbot:
95654431 163 strategy: new-failure-and-fixed
1d573689
MJ
164 matrix-notifier: only-parent
165 channels:
166 - name: '#lttng'
092af1e4
JR
167 - email-ext:
168 recipients: '{obj:email_to}'
169 reply-to: ci-notification@lists.lttng.org
170 always: false
171 unstable: false
172 first-failure: true
173 first-unstable: true
174 not-built: false
175 aborted: false
176 regression: false
177 failure: false
178 second-failure: false
179 improvement: false
180 still-failing: false
181 success: false
182 fixed: false
183 fixed-unhealthy: true
184 still-unstable: false
185 pre-build: false
186 matrix-trigger: only-parent
187 send-to:
188 - recipients
dfc19a66
MJ
189
190## Templates
191- job-template:
192 name: liburcu_{version}_{buildtype}
193 defaults: liburcu
194
195 <<: *liburcu_build_axes_defaults
196 <<: *liburcu_build_builders_defaults
197 <<: *liburcu_build_publishers_defaults
198
199- job-template:
200 name: liburcu_{version}_winbuild
201 defaults: liburcu
202
203 <<: *liburcu_build_axes_defaults
204 <<: *liburcu_build_builders_win
205 <<: *liburcu_build_publishers_defaults
206
e3022ad9
MJ
207- job-template:
208 name: liburcu_{version}_cppcheck
209 defaults: liburcu
210
211 triggers:
e8078c79
MJ
212 - pollscm:
213 cron: "@daily"
e3022ad9
MJ
214
215 builders:
216 - shell: |
5279b0f2
MJ
217 rm -f cppcheck-result.xml
218 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/liburcu 2> cppcheck-result.xml
e3022ad9
MJ
219
220 publishers:
221 - archive:
5279b0f2 222 artifacts: 'cppcheck-result.xml'
e3022ad9 223 allow-empty: false
e3022ad9 224 - cppcheck:
5279b0f2 225 pattern: 'cppcheck-result.xml'
092af1e4
JR
226 - email-ext:
227 recipients: '{obj:email_to}'
228 reply-to: ci-notification@lists.lttng.org
229 always: false
230 unstable: false
231 first-failure: true
232 first-unstable: false
233 not-built: false
234 aborted: false
235 regression: false
236 failure: false
237 second-failure: false
238 improvement: false
239 still-failing: false
240 success: false
241 fixed: false
242 fixed-unhealthy: true
243 still-unstable: true
244 pre-build: false
245 matrix-trigger: only-parent
246 send-to:
247 - recipients
e3022ad9
MJ
248
249- job-template:
250 name: liburcu_{version}_scan-build
251 defaults: liburcu
16844a6d 252 node: 'amd64'
e3022ad9
MJ
253
254 triggers:
e8078c79
MJ
255 - pollscm:
256 cron: "@daily"
e3022ad9
MJ
257
258 builders:
259 - shell:
69f05d59 260 !include-raw-escape: scripts/common/scan-build.sh
e3022ad9
MJ
261
262 publishers:
263 - html-publisher:
264 name: 'HTML Report'
265 dir: 'scan-build-archive/'
266 files: 'index.html'
267
e8078c79
MJ
268- job-template:
269 name: liburcu_{version}_coverity
270 defaults: liburcu
16844a6d 271 node: 'amd64'
e8078c79
MJ
272
273 triggers:
274 - pollscm:
275 cron: "@daily"
276
277 wrappers:
dfc19a66
MJ
278 - ansicolor
279 - timeout:
280 timeout: 60
281 fail: true
282 type: absolute
e8078c79 283 - timestamps
dfc19a66
MJ
284 - workspace-cleanup:
285 clean-if:
286 - failure: false
e8078c79
MJ
287 - credentials-binding:
288 - username-password-separated:
289 credential-id: liburcu_coverity_token
290 username: COVERITY_SCAN_PROJECT_NAME
291 password: COVERITY_SCAN_TOKEN
292
293 builders:
294 - shell:
ef63064f 295 !include-raw-escape: scripts/common/coverity.sh
e8078c79
MJ
296
297 publishers:
298 - workspace-cleanup
6d35c326
MJ
299 - archive:
300 artifacts: 'analysis-results.tgz,cov-int/**'
301 allow-empty: false
e3022ad9
MJ
302
303
69d7af71
MJ
304## Views
305- view-template:
306 name: 'Liburcu'
307 view-type: list
308 regex: 'liburcu[-_].*'
309
310
311## Projects
e3022ad9
MJ
312- project:
313 name: liburcu
51ca880a
MJ
314 github_user: urcu
315 github_name: userspace-rcu
092af1e4 316 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
e3022ad9 317 version:
dfc19a66
MJ
318 - stable-0.8
319 - stable-0.9
be76d048 320 - stable-0.10
69d7af71 321 - stable-0.11
dfc19a66 322 - master
e3022ad9 323 jobs:
57ae8ff4
MJ
324 - 'liburcu_{version}_{buildtype}':
325 buildtype: build
16844a6d 326 arch: !!python/tuple [amd64]
9d0846f3 327 build: !!python/tuple [std, oot, dist]
dfc19a66 328 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
57ae8ff4
MJ
329 - 'liburcu_{version}_{buildtype}':
330 buildtype: portbuild
16844a6d 331 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
9d0846f3 332 build: !!python/tuple [std]
dfc19a66 333 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
81bf613d
MJ
334 - 'liburcu_{version}_{buildtype}':
335 buildtype: slesbuild
336 arch: !!python/tuple [sles12sp2]
337 build: !!python/tuple [std]
338 conf: !!python/tuple [std]
568b5cbd
MJ
339 - 'liburcu_{version}_{buildtype}':
340 buildtype: elbuild
341 arch: !!python/tuple [el8]
342 build: !!python/tuple [std]
343 conf: !!python/tuple [std]
7491c28d
MJ
344 - 'liburcu_{version}_{buildtype}':
345 buildtype: solarisbuild
995ac8f2 346 arch: !!python/tuple [sol10-i386, sol11-i386]
7491c28d 347 build: !!python/tuple [std]
dfc19a66 348 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
51ca880a 349 version: # Solaris support was introduced in 0.9
7491c28d
MJ
350 - master
351 - stable-0.9
be76d048 352 - stable-0.10
69d7af71 353 - stable-0.11
f7bf4d7a
MJ
354 - 'liburcu_{version}_{buildtype}':
355 buildtype: macosxbuild
356 arch: !!python/tuple [macosx]
357 build: !!python/tuple [std]
dfc19a66
MJ
358 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
359 version:
360 - master
361 - stable-0.9
be76d048 362 - stable-0.10
69d7af71 363 - stable-0.11
dfc19a66
MJ
364 - 'liburcu_{version}_winbuild':
365 arch: !!python/tuple [cygwin, cygwin64]
366 build: !!python/tuple [std]
367 conf: !!python/tuple [std]
f7bf4d7a
MJ
368 version:
369 - master
370 - stable-0.9
be76d048 371 - stable-0.10
69d7af71 372 - stable-0.11
e3022ad9
MJ
373 - 'liburcu_{version}_cppcheck'
374 - 'liburcu_{version}_scan-build'
e8078c79
MJ
375 - 'liburcu_{version}_coverity':
376 version: master
e3022ad9 377
69d7af71
MJ
378- project:
379 name: liburcu-views
380 views:
381 - Liburcu
This page took 0.042595 seconds and 4 git commands to generate.