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