jjb: Drop all Solaris jobs
[lttng-ci.git] / jobs / liburcu.yaml
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
30 wrappers:
31 - ansicolor
32 - timeout:
33 timeout: 90
34 fail: true
35 type: absolute
36 - timestamps
37 - workspace-cleanup:
38 clean-if:
39 - failure: false
40
41 scm:
42 - git:
43 url: https://github.com/{github_user}/{github_name}.git
44 browser: githubweb
45 browser-url: https://github.com/{github_user}/{github_name}
46 branches:
47 - origin/{version}
48 basedir: src/liburcu
49 skip-tag: true
50
51 triggers:
52 - pollscm:
53 cron: "@hourly"
54
55 properties:
56 - inject:
57 properties-content: |
58 PROJECT_NAME=liburcu
59 - build-discarder:
60 num-to-keep: 2
61 - github:
62 url: https://github.com/{github_user}/{github_name}
63
64
65 ## Anchors
66 - liburcu_build_axes_defaults: &liburcu_build_axes_defaults
67 name: 'liburcu_build_axes_defaults'
68 project-type: matrix
69 node: 'master' # Applies only to matrix flyweight task
70 axes:
71 - axis:
72 type: slave
73 name: arch
74 values: '{obj:arch}'
75 - axis:
76 type: user-defined
77 name: conf
78 values: '{obj:conf}'
79 - axis:
80 type: user-defined
81 name: build
82 values: '{obj:build}'
83
84 - liburcu_build_builders_defaults: &liburcu_build_builders_defaults
85 name: 'liburcu_build_builders_defaults'
86 builders:
87 - shell:
88 !include-raw-escape:
89 - scripts/common/print.sh
90 - scripts/liburcu/build.sh
91
92 - liburcu_build_builders_win: &liburcu_build_builders_win
93 name: 'liburcu_build_builders_win'
94 builders:
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
104 - scripts/common/cygpath-prefix
105 - scripts/common/print.sh
106 - scripts/liburcu/build.sh
107
108 - liburcu_build_publishers_defaults: &liburcu_build_publishers_defaults
109 name: 'liburcu_build_publishers_defaults'
110 publishers:
111 - tap:
112 results: 'tap/**/*.log'
113 fail-if-no-results: true
114 failed-tests-mark-build-as-failure: true
115 todo-is-failure: false
116 - warnings:
117 console-log-parsers:
118 - 'GNU Make + GNU C Compiler (gcc)'
119 total-thresholds:
120 unstable:
121 total-all: 0
122 total-high: 0
123 total-normal: 0
124 total-low: 0
125 - archive:
126 artifacts: 'build/**,tap/**'
127 allow-empty: false
128 - ircbot:
129 strategy: new-failure-and-fixed
130 matrix-notifier: only-parent
131 channels:
132 - name: '#lttng'
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
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
173 - job-template:
174 name: liburcu_{version}_cppcheck
175 defaults: liburcu
176
177 triggers:
178 - pollscm:
179 cron: "@daily"
180
181 builders:
182 - shell: |
183 rm -f cppcheck-result.xml
184 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/liburcu 2> cppcheck-result.xml
185
186 publishers:
187 - archive:
188 artifacts: 'cppcheck-result.xml'
189 allow-empty: false
190 - cppcheck:
191 pattern: 'cppcheck-result.xml'
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
214
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
261 - job-template:
262 name: liburcu_{version}_scan-build
263 defaults: liburcu
264 node: 'amd64'
265
266 triggers:
267 - pollscm:
268 cron: "@daily"
269
270 builders:
271 - shell:
272 !include-raw-escape: scripts/common/scan-build.sh
273
274 publishers:
275 - html-publisher:
276 name: 'HTML Report'
277 dir: 'scan-build-archive/'
278 files: 'index.html'
279
280 - job-template:
281 name: liburcu_{version}_coverity
282 defaults: liburcu
283 node: 'amd64'
284
285 triggers:
286 - pollscm:
287 cron: "@daily"
288
289 wrappers:
290 - ansicolor
291 - timeout:
292 timeout: 60
293 fail: true
294 type: absolute
295 - timestamps
296 - workspace-cleanup:
297 clean-if:
298 - failure: false
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:
307 !include-raw-escape: scripts/common/coverity.sh
308
309 publishers:
310 - workspace-cleanup
311 - archive:
312 artifacts: 'analysis-results.tgz,cov-int/**'
313 allow-empty: false
314
315
316 ## Views
317 - view-template:
318 name: 'Liburcu'
319 view-type: list
320 regex: 'liburcu[-_].*'
321
322
323 ## Projects
324 - project:
325 name: liburcu
326 github_user: urcu
327 github_name: userspace-rcu
328 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
329 version:
330 - stable-0.9
331 - stable-0.10
332 - stable-0.11
333 - stable-0.12
334 - master
335 jobs:
336 - 'liburcu_{version}_{buildtype}':
337 buildtype: build
338 arch: !!python/tuple [amd64]
339 build: !!python/tuple [std, oot, dist]
340 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
341 - 'liburcu_{version}_{buildtype}':
342 buildtype: portbuild
343 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
344 build: !!python/tuple [std]
345 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
346 - 'liburcu_{version}_{buildtype}':
347 buildtype: slesbuild
348 arch: !!python/tuple [sles12sp2]
349 build: !!python/tuple [std]
350 conf: !!python/tuple [std]
351 - 'liburcu_{version}_{buildtype}':
352 buildtype: elbuild
353 arch: !!python/tuple [el8]
354 build: !!python/tuple [std]
355 conf: !!python/tuple [std]
356 - 'liburcu_{version}_{buildtype}':
357 buildtype: macosbuild
358 arch: !!python/tuple [macos-amd64, macos-arm64]
359 build: !!python/tuple [std]
360 conf: !!python/tuple [std]
361 - 'liburcu_{version}_winbuild':
362 arch: !!python/tuple [cygwin64]
363 build: !!python/tuple [std]
364 conf: !!python/tuple [std]
365 - 'liburcu_{version}_{buildtype}':
366 buildtype: freebsdbuild
367 arch: !!python/tuple [freebsd]
368 build: !!python/tuple [std]
369 conf: !!python/tuple [std]
370 version:
371 - stable-0.12
372 - master
373 - 'liburcu_{version}_cppcheck'
374 - 'liburcu_{version}_scan-build'
375 - 'liburcu_{version}_coverity':
376 version: master
377
378 - project:
379 name: gerrit-liburcu
380 github_user: urcu
381 github_name: userspace-rcu
382 jobs:
383 - 'dev_gerrit_liburcu_{buildtype}':
384 buildtype: build
385 arch: !!python/tuple [amd64]
386 build: !!python/tuple [std, oot, dist]
387 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
388 buildtype: build
389 - 'dev_gerrit_liburcu_{buildtype}':
390 buildtype: portbuild
391 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
392 build: !!python/tuple [std]
393 conf: !!python/tuple [std]
394
395 - project:
396 name: liburcu-views
397 views:
398 - Liburcu
This page took 0.047799 seconds and 5 git commands to generate.