1 # {project}_{version}_{jobtype}
2 # liburcu_stable-0.8_build
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.
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.
25 <p>Job is managed by Jenkins Job Builder.</p>
27 project-type: freestyle
30 - ansicolor: &liburcu_wrapper_ansicolor_defaults
32 - timeout: &liburcu_wrapper_timeout_defaults
41 url: https://github.com/{github_user}/{github_name}.git
43 browser-url: https://github.com/{github_user}/{github_name}
59 artifact-num-to-keep: 2
61 url: https://github.com/{github_user}/{github_name}
65 - _liburcu_matrix_axes_defaults: &liburcu_matrix_axes_defaults
66 name: 'liburcu_matrix_axes_defaults'
68 node: 'master' # Applies only to matrix flyweight task
77 values: '{obj:platforms}'
85 values: '{obj:builds}'
87 - _liburcu_builders_defaults: &liburcu_builders_defaults
88 name: 'liburcu_builders_defaults'
91 {% if buildtype == 'winbuild' %}
93 condition-kind: strings-match
94 on-evaluation-failure: run
95 condition-string1: {{ '${{platform}}' }}
96 condition-string2: 'cygwin64'
100 - scripts/common/cygwin64-shebang
101 - scripts/common/cygpath-prefix
102 - scripts/common/print.sh
103 - scripts/liburcu/build.sh
107 - scripts/common/print.sh
108 - scripts/liburcu/build.sh
111 - _liburcu_publishers_defaults: &liburcu_publishers_defaults
112 name: 'liburcu_publishers_defaults'
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 include-comment-diagnostics: true
119 output-tap-to-console: false
120 todo-is-failure: false
121 - raw: &liburcu_publisher_warnings-ng_defaults
123 <io.jenkins.plugins.analysis.core.steps.IssuesRecorder plugin="warnings-ng">
125 <io.jenkins.plugins.analysis.warnings.Gcc4>
128 <jenkins plugin="plugin-util-api"/>
131 <skipSymbolicLinks>false</skipSymbolicLinks>
132 </io.jenkins.plugins.analysis.warnings.Gcc4>
134 <sourceCodeEncoding/>
137 <ignoreQualityGate>false</ignoreQualityGate>
138 <ignoreFailedBuilds>true</ignoreFailedBuilds>
139 <failOnError>false</failOnError>
141 <unhealthy>0</unhealthy>
142 <minimumSeverity plugin="analysis-model-api">
146 <isEnabledForFailure>true</isEnabledForFailure>
147 <isAggregatingResults>true</isAggregatingResults>
148 <isBlameDisabled>false</isBlameDisabled>
149 <skipPublishingChecks>true</skipPublishingChecks>
150 <publishAllIssues>false</publishAllIssues>
152 <io.jenkins.plugins.analysis.core.util.QualityGate>
153 <threshold>1</threshold>
155 <status>WARNING</status>
156 </io.jenkins.plugins.analysis.core.util.QualityGate>
158 <trendChartType>AGGREGATION_TOOLS</trendChartType>
160 </io.jenkins.plugins.analysis.core.steps.IssuesRecorder>
161 - archive: &liburcu_publisher_archive_defaults
162 artifacts: 'build/**,tap/**,log/**'
163 follow-symlinks: true
165 - workspace-cleanup: &liburcu_publisher_workspace_cleanup_defaults
168 - ircbot: &liburcu_publisher_ircbot_defaults
169 strategy: statechange-only
170 message-type: summary
171 matrix-notifier: only-parent
172 - email-ext: &liburcu_publisher_email_ext_defaults
173 recipients: '{obj:email_to}'
174 reply-to: ci-notification@lists.lttng.org
183 second-failure: false
188 fixed-unhealthy: true
189 still-unstable: false
191 matrix-trigger: only-parent
197 name: '{job_prefix}liburcu_{version}_{buildtype}'
200 <<: *liburcu_matrix_axes_defaults
201 <<: *liburcu_builders_defaults
202 <<: *liburcu_publishers_defaults
205 name: dev_review_liburcu_{version}_{buildtype}
211 url: https://review.lttng.org/userspace-rcu
212 refspec: 'refs/changes/*:refs/changes/*'
221 - comment-added-event:
222 approval-category: 'CI-Build'
225 - project-compare-type: 'PLAIN'
226 project-pattern: 'userspace-rcu'
228 - branch-compare-type: 'PLAIN'
229 branch-pattern: '{version}'
233 properties-content: |
240 - 'gerrit-{buildtype}'
242 <<: *liburcu_matrix_axes_defaults
243 <<: *liburcu_builders_defaults
246 - tap: *liburcu_publisher_tap_defaults
247 - raw: *liburcu_publisher_warnings-ng_defaults
248 - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults
251 name: liburcu_{version}_scan-build
261 !include-raw-escape: scripts/common/scan-build.sh
266 dir: 'scan-build-archive/'
268 - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults
269 - ircbot: *liburcu_publisher_ircbot_defaults
272 name: liburcu_{version}_coverity
281 - ansicolor: *liburcu_wrapper_ansicolor_defaults
282 - timeout: *liburcu_wrapper_timeout_defaults
285 - credentials-binding:
286 - username-password-separated:
287 credential-id: liburcu_coverity_token
288 username: COVERITY_SCAN_PROJECT_NAME
289 password: COVERITY_SCAN_TOKEN
293 !include-raw-escape: scripts/common/coverity.sh
297 artifacts: 'analysis-results.tgz,cov-int/**'
299 - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults
300 - ircbot: *liburcu_publisher_ircbot_defaults
307 regex: 'liburcu[-_].*'
315 github_name: userspace-rcu
316 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
322 - '{job_prefix}liburcu_{version}_{buildtype}':
323 buildtype: linuxbuild
324 platforms: !!python/tuple [jammy-amd64]
325 builds: !!python/tuple [std, oot, dist]
326 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
327 touchstone: '(build == "std") && (conf == "std")'
328 - '{job_prefix}liburcu_{version}_{buildtype}':
330 platforms: !!python/tuple [bionic-amd64]
331 builds: !!python/tuple [std, oot, dist]
332 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
333 touchstone: '(build == "std") && (conf == "std")'
334 - '{job_prefix}liburcu_{version}_{buildtype}':
336 platforms: !!python/tuple [deb11-armhf, deb11-arm64, deb11-ppc64el, deb11-i386]
337 builds: !!python/tuple [std]
338 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
339 touchstone: '(build == "std") && (conf == "std") && (platform == "deb11-i386")'
340 - '{job_prefix}liburcu_{version}_{buildtype}':
342 platforms: !!python/tuple [sles12sp5-amd64, sles15sp4-amd64]
343 builds: !!python/tuple [std]
344 confs: !!python/tuple [std]
345 touchstone: '(build == "std")'
346 - '{job_prefix}liburcu_{version}_{buildtype}':
348 platforms: !!python/tuple [el7-amd64, el8-amd64, el9-amd64, el7-arm64, el8-arm64, el9-arm64]
349 builds: !!python/tuple [std]
350 confs: !!python/tuple [std]
351 touchstone: '(build == "std")'
352 - '{job_prefix}liburcu_{version}_{buildtype}':
353 buildtype: yoctobuild
354 platforms: !!python/tuple [yocto23-powerpcspe, yocto23-powerpc, yocto31-ppc64]
355 builds: !!python/tuple [std]
356 confs: !!python/tuple [std]
357 touchstone: '(build == "std")'
358 - '{job_prefix}liburcu_{version}_{buildtype}':
359 buildtype: macosbuild
360 platforms: !!python/tuple [macos-amd64, macos-arm64]
361 builds: !!python/tuple [std]
362 confs: !!python/tuple [std]
363 touchstone: '(build == "std")'
364 - '{job_prefix}liburcu_{version}_{buildtype}':
366 platforms: !!python/tuple [cygwin64]
367 builds: !!python/tuple [std]
368 confs: !!python/tuple [std]
369 touchstone: '(build == "std")'
370 - '{job_prefix}liburcu_{version}_{buildtype}':
371 buildtype: freebsdbuild
372 platforms: !!python/tuple [freebsd-amd64]
373 builds: !!python/tuple [std]
374 confs: !!python/tuple [std]
375 touchstone: '(build == "std")'
376 - 'liburcu_{version}_scan-build'
377 - 'liburcu_{version}_coverity':
382 name: liburcu-dev-upstream
383 job_prefix: 'dev_upstream_'
385 github_name: userspace-rcu
386 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
393 - '{job_prefix}liburcu_{version}_{buildtype}':
394 buildtype: linuxbuild
395 platforms: !!python/tuple [jammy-amd64]
396 builds: !!python/tuple [std, oot, dist]
397 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
398 touchstone: '(build == "std") && (conf == "std")'
399 - '{job_prefix}liburcu_{version}_{buildtype}':
401 platforms: !!python/tuple [deb11-armhf, deb11-arm64, deb11-ppc64el, deb11-i386]
402 builds: !!python/tuple [std]
403 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
404 touchstone: '(build == "std") && (conf == "std") && (platform == "deb11-i386")'
405 - '{job_prefix}liburcu_{version}_{buildtype}':
407 platforms: !!python/tuple [sles12sp5-amd64, sles15sp4-amd64]
408 builds: !!python/tuple [std]
409 confs: !!python/tuple [std]
410 touchstone: '(build == "std")'
411 - '{job_prefix}liburcu_{version}_{buildtype}':
413 platforms: !!python/tuple [el7-amd64, el8-amd64, el9-amd64]
414 builds: !!python/tuple [std]
415 confs: !!python/tuple [std]
416 touchstone: '(build == "std")'
422 github_name: userspace-rcu
428 - 'dev_review_liburcu_{version}_{buildtype}':
430 platforms: !!python/tuple [bionic-amd64]
431 builds: !!python/tuple [std, oot, dist]
432 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
433 touchstone: '(build == "std")'
434 - 'dev_review_liburcu_{version}_{buildtype}':
436 platforms: !!python/tuple [deb11-armhf, deb11-arm64, deb11-ppc64el, deb11-i386]
437 builds: !!python/tuple [std]
438 confs: !!python/tuple [std]
440 - 'dev_review_liburcu_{version}_{buildtype}':
442 platforms: !!python/tuple [cygwin64]
443 builds: !!python/tuple [std]
444 confs: !!python/tuple [std]