jjb: Remove duplicated warnings
[lttng-ci.git] / jobs / liburcu.yaml
1 # {project}_{version}_{jobtype}
2 # liburcu_stable-0.8_build
3 #
4 # jobtypes:
5 # - build
6 # - portbuild
7 # - coverity
8 # - scan-build
9 # - pylint
10
11 - defaults:
12 name: liburcu
13 description: |
14 liburcu is a LGPLv2.1 userspace RCU (read-copy-update) library. This
15 data synchronization library provides read-side access which scales
16 linearly with the number of cores. It does so by allowing multiples
17 copies of a given data structure to live at the same time, and by
18 monitoring the data structure accesses to detect grace periods after
19 which memory reclamation is possible.
20
21 liburcu-cds provides efficient data structures based on RCU and
22 lock-free algorithms. Those structures include hash tables, queues,
23 stacks, and doubly-linked lists.
24
25 <p>Job is managed by Jenkins Job Builder.</p>
26
27 project-type: freestyle
28
29 wrappers:
30 - ansicolor: &liburcu_wrapper_ansicolor_defaults
31 colormap: xterm
32 - timeout: &liburcu_wrapper_timeout_defaults
33 timeout: 90
34 fail: true
35 type: absolute
36 - timestamps
37 - workspace-cleanup
38
39 scm:
40 - git:
41 url: https://github.com/{github_user}/{github_name}.git
42 browser: githubweb
43 browser-url: https://github.com/{github_user}/{github_name}
44 branches:
45 - origin/{version}
46 basedir: src/liburcu
47 skip-tag: true
48
49 triggers:
50 - pollscm:
51 cron: "@hourly"
52
53 properties:
54 - inject:
55 properties-content: |
56 PROJECT_NAME=liburcu
57 - build-discarder:
58 num-to-keep: 10
59 artifact-num-to-keep: 2
60 - github:
61 url: https://github.com/{github_user}/{github_name}
62
63
64 ## Anchors
65 - liburcu_matrix_axes_defaults: &liburcu_matrix_axes_defaults
66 name: 'liburcu_matrix_axes_defaults'
67 project-type: matrix
68 node: 'master' # Applies only to matrix flyweight task
69 execution-strategy:
70 touchstone:
71 expr: '{touchstone}'
72 result: unstable
73 axes:
74 - axis:
75 type: slave
76 name: platform
77 values: '{obj:platforms}'
78 - axis:
79 type: user-defined
80 name: conf
81 values: '{obj:confs}'
82 - axis:
83 type: user-defined
84 name: build
85 values: '{obj:builds}'
86
87 - liburcu_builders_defaults: &liburcu_builders_defaults
88 name: 'liburcu_builders_defaults'
89 builders:
90 !j2-yaml: |
91 {% if buildtype == 'winbuild' %}
92 - conditional-step:
93 condition-kind: strings-match
94 on-evaluation-failure: run
95 condition-string1: {{ '${{platform}}' }}
96 condition-string2: 'cygwin64'
97 steps:
98 - shell:
99 !include-raw-escape:
100 - scripts/common/cygwin64-shebang
101 - scripts/common/cygpath-prefix
102 - scripts/common/print.sh
103 - scripts/liburcu/build.sh
104 {% else %}
105 - shell:
106 !include-raw-escape:
107 - scripts/common/print.sh
108 - scripts/liburcu/build.sh
109 {% endif %}
110
111 - liburcu_publishers_defaults: &liburcu_publishers_defaults
112 name: 'liburcu_publishers_defaults'
113 publishers:
114 - tap: &liburcu_publisher_tap_defaults
115 results: 'tap/**/*.log'
116 fail-if-no-results: true
117 failed-tests-mark-build-as-failure: true
118 todo-is-failure: false
119 - raw: &liburcu_publisher_warnings-ng_defaults
120 xml: |
121 <io.jenkins.plugins.analysis.core.steps.IssuesRecorder plugin="warnings-ng">
122 <analysisTools>
123 <io.jenkins.plugins.analysis.warnings.Gcc4>
124 <id/>
125 <name/>
126 <jenkins plugin="plugin-util-api"/>
127 <pattern/>
128 <reportEncoding/>
129 <skipSymbolicLinks>false</skipSymbolicLinks>
130 </io.jenkins.plugins.analysis.warnings.Gcc4>
131 </analysisTools>
132 <sourceCodeEncoding/>
133 <sourceDirectory/>
134 <sourceDirectories/>
135 <ignoreQualityGate>false</ignoreQualityGate>
136 <ignoreFailedBuilds>true</ignoreFailedBuilds>
137 <failOnError>false</failOnError>
138 <healthy>0</healthy>
139 <unhealthy>0</unhealthy>
140 <minimumSeverity plugin="analysis-model-api">
141 <name>LOW</name>
142 </minimumSeverity>
143 <filters/>
144 <isEnabledForFailure>true</isEnabledForFailure>
145 <isAggregatingResults>true</isAggregatingResults>
146 <isBlameDisabled>false</isBlameDisabled>
147 <skipPublishingChecks>true</skipPublishingChecks>
148 <publishAllIssues>false</publishAllIssues>
149 <qualityGates>
150 <io.jenkins.plugins.analysis.core.util.QualityGate>
151 <threshold>1</threshold>
152 <type>TOTAL</type>
153 <status>WARNING</status>
154 </io.jenkins.plugins.analysis.core.util.QualityGate>
155 </qualityGates>
156 <trendChartType>AGGREGATION_TOOLS</trendChartType>
157 <scm/>
158 </io.jenkins.plugins.analysis.core.steps.IssuesRecorder>
159 - archive: &liburcu_publisher_archive_defaults
160 artifacts: 'build/**,tap/**'
161 allow-empty: false
162 - workspace-cleanup: &liburcu_publisher_workspace_cleanup_defaults
163 clean-if:
164 - failure: false
165 - email-ext: &liburcu_publisher_email_ext_defaults
166 recipients: '{obj:email_to}'
167 reply-to: ci-notification@lists.lttng.org
168 always: false
169 unstable: false
170 first-failure: true
171 first-unstable: true
172 not-built: false
173 aborted: false
174 regression: false
175 failure: false
176 second-failure: false
177 improvement: false
178 still-failing: false
179 success: false
180 fixed: false
181 fixed-unhealthy: true
182 still-unstable: false
183 pre-build: false
184 matrix-trigger: only-parent
185 send-to:
186 - recipients
187
188 ## Templates
189 - job-template:
190 name: '{job_prefix}liburcu_{version}_{buildtype}'
191 defaults: liburcu
192
193 <<: *liburcu_matrix_axes_defaults
194 <<: *liburcu_builders_defaults
195 <<: *liburcu_publishers_defaults
196
197 - job-template:
198 name: dev_gerrit_liburcu_{buildtype}
199 defaults: liburcu
200 concurrent: true
201
202 scm:
203 - git:
204 url: https://review.lttng.org/userspace-rcu
205 refspec: 'refs/changes/*:refs/changes/*'
206 branches:
207 - '$GERRIT_REFSPEC'
208 basedir: src/liburcu
209 skip-tag: true
210
211 triggers:
212 - gerrit:
213 trigger-on:
214 - comment-added-event:
215 approval-category: 'CI-Build'
216 approval-value: 1
217 projects:
218 - project-compare-type: 'PLAIN'
219 project-pattern: 'userspace-rcu'
220 branches:
221 - branch-compare-type: 'ANT'
222 branch-pattern: '**'
223
224 <<: *liburcu_matrix_axes_defaults
225 <<: *liburcu_builders_defaults
226
227 publishers:
228 - tap: *liburcu_publisher_tap_defaults
229 - raw: *liburcu_publisher_warnings-ng_defaults
230 - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults
231
232 - job-template:
233 name: liburcu_{version}_scan-build
234 defaults: liburcu
235 node: 'bionic-amd64'
236
237 triggers:
238 - pollscm:
239 cron: "@daily"
240
241 builders:
242 - shell:
243 !include-raw-escape: scripts/common/scan-build.sh
244
245 publishers:
246 - html-publisher:
247 name: 'HTML Report'
248 dir: 'scan-build-archive/'
249 files: 'index.html'
250 - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults
251
252 - job-template:
253 name: liburcu_{version}_coverity
254 defaults: liburcu
255 node: 'bionic-amd64'
256
257 triggers:
258 - pollscm:
259 cron: "@daily"
260
261 wrappers:
262 - ansicolor: *liburcu_wrapper_ansicolor_defaults
263 - timeout: *liburcu_wrapper_timeout_defaults
264 - timestamps
265 - workspace-cleanup
266 - credentials-binding:
267 - username-password-separated:
268 credential-id: liburcu_coverity_token
269 username: COVERITY_SCAN_PROJECT_NAME
270 password: COVERITY_SCAN_TOKEN
271
272 builders:
273 - shell:
274 !include-raw-escape: scripts/common/coverity.sh
275
276 publishers:
277 - archive:
278 artifacts: 'analysis-results.tgz,cov-int/**'
279 allow-empty: false
280 - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults
281
282
283 ## Views
284 - view-template:
285 name: 'Liburcu'
286 view-type: list
287 regex: 'liburcu[-_].*'
288
289
290 ## Projects
291 - project:
292 name: liburcu
293 job_prefix: ''
294 github_user: urcu
295 github_name: userspace-rcu
296 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
297 version:
298 - stable-0.13
299 - stable-0.14
300 - master
301 jobs:
302 - '{job_prefix}liburcu_{version}_{buildtype}':
303 buildtype: linuxbuild
304 platforms: !!python/tuple [jammy-amd64]
305 builds: !!python/tuple [std, oot, dist]
306 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
307 touchstone: '(build == "std") && (conf == "std")'
308 - '{job_prefix}liburcu_{version}_{buildtype}':
309 buildtype: build
310 platforms: !!python/tuple [bionic-amd64]
311 builds: !!python/tuple [std, oot, dist]
312 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
313 touchstone: '(build == "std") && (conf == "std")'
314 - '{job_prefix}liburcu_{version}_{buildtype}':
315 buildtype: portbuild
316 platforms: !!python/tuple [deb11-armhf, deb11-arm64, sid-powerpc, deb11-ppc64el, deb11-i386]
317 builds: !!python/tuple [std]
318 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
319 touchstone: '(build == "std") && (conf == "std") && (platform == "deb11-i386")'
320 - '{job_prefix}liburcu_{version}_{buildtype}':
321 buildtype: slesbuild
322 platforms: !!python/tuple [sles12sp5-amd64]
323 builds: !!python/tuple [std]
324 confs: !!python/tuple [std]
325 touchstone: '(build == "std")'
326 - '{job_prefix}liburcu_{version}_{buildtype}':
327 buildtype: elbuild
328 platforms: !!python/tuple [el7-amd64, el8-amd64, el9-amd64]
329 builds: !!python/tuple [std]
330 confs: !!python/tuple [std]
331 touchstone: '(build == "std")'
332 - '{job_prefix}liburcu_{version}_{buildtype}':
333 buildtype: macosbuild
334 platforms: !!python/tuple [macos-amd64, macos-arm64]
335 builds: !!python/tuple [std]
336 confs: !!python/tuple [std]
337 touchstone: '(build == "std")'
338 - '{job_prefix}liburcu_{version}_{buildtype}':
339 buildtype: winbuild
340 platforms: !!python/tuple [cygwin64]
341 builds: !!python/tuple [std]
342 confs: !!python/tuple [std]
343 touchstone: '(build == "std")'
344 - '{job_prefix}liburcu_{version}_{buildtype}':
345 buildtype: freebsdbuild
346 platforms: !!python/tuple [freebsd-amd64]
347 builds: !!python/tuple [std]
348 confs: !!python/tuple [std]
349 touchstone: '(build == "std")'
350 - 'liburcu_{version}_scan-build'
351 - 'liburcu_{version}_coverity':
352 version: master
353
354
355 - project:
356 name: liburcu-dev-upstream
357 job_prefix: 'dev_upstream_'
358 github_user: urcu
359 github_name: userspace-rcu
360 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
361 version:
362 - stable-0.9
363 - stable-0.10
364 - stable-0.11
365 - stable-0.12
366 jobs:
367 - '{job_prefix}liburcu_{version}_{buildtype}':
368 buildtype: linuxbuild
369 platforms: !!python/tuple [jammy-amd64]
370 builds: !!python/tuple [std, oot, dist]
371 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
372 touchstone: '(build == "std") && (conf == "std")'
373 - '{job_prefix}liburcu_{version}_{buildtype}':
374 buildtype: portbuild
375 platforms: !!python/tuple [deb11-armhf, deb11-arm64, sid-powerpc, deb11-ppc64el, deb11-i386]
376 builds: !!python/tuple [std]
377 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
378 touchstone: '(build == "std") && (conf == "std") && (platform == "deb11-i386")'
379 - '{job_prefix}liburcu_{version}_{buildtype}':
380 buildtype: slesbuild
381 platforms: !!python/tuple [sles12sp5-amd64]
382 builds: !!python/tuple [std]
383 confs: !!python/tuple [std]
384 touchstone: '(build == "std")'
385 - '{job_prefix}liburcu_{version}_{buildtype}':
386 buildtype: elbuild
387 platforms: !!python/tuple [el7-amd64, el8-amd64, el9-amd64]
388 builds: !!python/tuple [std]
389 confs: !!python/tuple [std]
390 touchstone: '(build == "std")'
391
392
393 - project:
394 name: gerrit-liburcu
395 github_user: urcu
396 github_name: userspace-rcu
397 jobs:
398 - 'dev_gerrit_liburcu_{buildtype}':
399 buildtype: build
400 platforms: !!python/tuple [bionic-amd64]
401 builds: !!python/tuple [std, oot, dist]
402 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
403 touchstone: '(build == "std")'
404 - 'dev_gerrit_liburcu_{buildtype}':
405 buildtype: portbuild
406 platforms: !!python/tuple [deb11-armhf, deb11-arm64, sid-powerpc, deb11-ppc64el, deb11-i386]
407 builds: !!python/tuple [std]
408 confs: !!python/tuple [std]
409 touchstone: '(build == "std")'
410 - 'dev_gerrit_liburcu_{buildtype}':
411 buildtype: winbuild
412 platforms: !!python/tuple [cygwin64]
413 builds: !!python/tuple [std]
414 confs: !!python/tuple [std]
415 touchstone: ''
416
417
418 - project:
419 name: liburcu-views
420 views:
421 - Liburcu
This page took 0.042125 seconds and 5 git commands to generate.