jjb: librseq: Add oot-dist build
[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
dfc19a66 50 git-tool: jgit
e3022ad9
MJ
51
52 triggers:
e8078c79
MJ
53 - pollscm:
54 cron: "@hourly"
e3022ad9
MJ
55
56 properties:
69f05d59
MJ
57 - inject:
58 properties-content: |
59 PROJECT_NAME=liburcu
edf72710
MJ
60 - build-discarder:
61 num-to-keep: 2
e3022ad9 62 - github:
51ca880a 63 url: https://github.com/{github_user}/{github_name}
e3022ad9
MJ
64
65
dfc19a66
MJ
66## Anchors
67- liburcu_build_axes_defaults: &liburcu_build_axes_defaults
68 name: 'liburcu_build_axes_defaults'
e3022ad9 69 project-type: matrix
ca8c6144 70 node: 'master' # Applies only to matrix flyweight task
e3022ad9
MJ
71 axes:
72 - axis:
73 type: slave
74 name: arch
b6e61d51 75 values: '{obj:arch}'
e3022ad9
MJ
76 - axis:
77 type: user-defined
78 name: conf
dfc19a66 79 values: '{obj:conf}'
e3022ad9
MJ
80 - axis:
81 type: user-defined
82 name: build
9d0846f3 83 values: '{obj:build}'
e3022ad9 84
dfc19a66
MJ
85- liburcu_build_builders_defaults: &liburcu_build_builders_defaults
86 name: 'liburcu_build_builders_defaults'
e3022ad9
MJ
87 builders:
88 - shell:
ef63064f 89 !include-raw-escape: scripts/liburcu/build.sh
e3022ad9 90
dfc19a66
MJ
91- liburcu_build_builders_win: &liburcu_build_builders_win
92 name: 'liburcu_build_builders_win'
93 builders:
94 - conditional-step:
95 condition-kind: strings-match
96 on-evaluation-failure: run
97 condition-string1: '${{arch}}'
98 condition-string2: 'cygwin'
99 steps:
100 - shell:
101 !include-raw-escape:
102 - scripts/common/cygwin-shebang
103 - scripts/common/cygwin-prefix
104 - scripts/liburcu/build.sh
105 - conditional-step:
106 condition-kind: strings-match
107 on-evaluation-failure: run
108 condition-string1: '${{arch}}'
109 condition-string2: 'cygwin64'
110 steps:
111 - shell:
112 !include-raw-escape:
113 - scripts/common/cygwin64-shebang
114 - scripts/common/cygwin-prefix
115 - scripts/liburcu/build.sh
116 - conditional-step:
117 condition-kind: strings-match
118 on-evaluation-failure: run
119 condition-string1: '${{arch}}'
8f541678 120 condition-string2: 'msys2-mingw32'
dfc19a66
MJ
121 steps:
122 - inject:
123 properties-content: 'MSYSTEM=MINGW32'
124 - shell:
125 !include-raw-escape:
8f541678 126 - scripts/common/msys2-shebang
dfc19a66
MJ
127 - scripts/common/cygwin-prefix
128 - scripts/liburcu/build.sh
129 - conditional-step:
130 condition-kind: strings-match
131 on-evaluation-failure: run
132 condition-string1: '${{arch}}'
8f541678 133 condition-string2: 'msys2-mingw64'
dfc19a66
MJ
134 steps:
135 - inject:
136 properties-content: 'MSYSTEM=MINGW64'
137 - shell:
138 !include-raw-escape:
8f541678 139 - scripts/common/msys2-shebang
dfc19a66
MJ
140 - scripts/common/cygwin-prefix
141 - scripts/liburcu/build.sh
142
143- liburcu_build_publishers_defaults: &liburcu_build_publishers_defaults
144 name: 'liburcu_build_publishers_defaults'
e3022ad9 145 publishers:
69d7af71
MJ
146 - tap:
147 results: 'tap/**/*.log'
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]
7491c28d
MJ
339 - 'liburcu_{version}_{buildtype}':
340 buildtype: solarisbuild
995ac8f2 341 arch: !!python/tuple [sol10-i386, sol11-i386]
7491c28d 342 build: !!python/tuple [std]
dfc19a66 343 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
51ca880a 344 version: # Solaris support was introduced in 0.9
7491c28d
MJ
345 - master
346 - stable-0.9
be76d048 347 - stable-0.10
69d7af71 348 - stable-0.11
f7bf4d7a
MJ
349 - 'liburcu_{version}_{buildtype}':
350 buildtype: macosxbuild
351 arch: !!python/tuple [macosx]
352 build: !!python/tuple [std]
dfc19a66
MJ
353 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
354 version:
355 - master
356 - stable-0.9
be76d048 357 - stable-0.10
69d7af71 358 - stable-0.11
dfc19a66
MJ
359 - 'liburcu_{version}_winbuild':
360 arch: !!python/tuple [cygwin, cygwin64]
361 build: !!python/tuple [std]
362 conf: !!python/tuple [std]
f7bf4d7a
MJ
363 version:
364 - master
365 - stable-0.9
be76d048 366 - stable-0.10
69d7af71 367 - stable-0.11
e3022ad9
MJ
368 - 'liburcu_{version}_cppcheck'
369 - 'liburcu_{version}_scan-build'
e8078c79
MJ
370 - 'liburcu_{version}_coverity':
371 version: master
e3022ad9 372
69d7af71
MJ
373- project:
374 name: liburcu-views
375 views:
376 - Liburcu
This page took 0.044565 seconds and 4 git commands to generate.