jjb: coverity: fix: cache the tool installer
[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
e3022ad9
MJ
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
e3022ad9 29 wrappers:
d954b6a8
MJ
30 - ansicolor: &liburcu_wrapper_ansicolor_defaults
31 colormap: xterm
32 - timeout: &liburcu_wrapper_timeout_defaults
dfc19a66
MJ
33 timeout: 90
34 fail: true
35 type: absolute
e3022ad9 36 - timestamps
d954b6a8 37 - workspace-cleanup
e3022ad9
MJ
38
39 scm:
40 - git:
4d27af8f 41 url: https://github.com/{github_user}/{github_name}.git
e3022ad9 42 browser: githubweb
51ca880a 43 browser-url: https://github.com/{github_user}/{github_name}
e3022ad9
MJ
44 branches:
45 - origin/{version}
6d35c326 46 basedir: src/liburcu
0a6e708b 47 skip-tag: true
e3022ad9
MJ
48
49 triggers:
e8078c79
MJ
50 - pollscm:
51 cron: "@hourly"
e3022ad9
MJ
52
53 properties:
69f05d59
MJ
54 - inject:
55 properties-content: |
56 PROJECT_NAME=liburcu
edf72710 57 - build-discarder:
3b228cdd
MJ
58 num-to-keep: 10
59 artifact-num-to-keep: 2
e3022ad9 60 - github:
51ca880a 61 url: https://github.com/{github_user}/{github_name}
e3022ad9
MJ
62
63
dfc19a66 64## Anchors
d954b6a8
MJ
65- liburcu_matrix_axes_defaults: &liburcu_matrix_axes_defaults
66 name: 'liburcu_matrix_axes_defaults'
e3022ad9 67 project-type: matrix
ca8c6144 68 node: 'master' # Applies only to matrix flyweight task
d954b6a8
MJ
69 execution-strategy:
70 touchstone:
71 expr: '{touchstone}'
72 result: unstable
e3022ad9
MJ
73 axes:
74 - axis:
75 type: slave
1794bc79
MJ
76 name: platform
77 values: '{obj:platforms}'
e3022ad9
MJ
78 - axis:
79 type: user-defined
80 name: conf
d954b6a8 81 values: '{obj:confs}'
e3022ad9
MJ
82 - axis:
83 type: user-defined
84 name: build
d954b6a8 85 values: '{obj:builds}'
e3022ad9 86
d954b6a8
MJ
87- liburcu_builders_defaults: &liburcu_builders_defaults
88 name: 'liburcu_builders_defaults'
dfc19a66 89 builders:
d954b6a8
MJ
90 !j2-yaml: |
91 {% if buildtype == 'winbuild' %}
dfc19a66
MJ
92 - conditional-step:
93 condition-kind: strings-match
94 on-evaluation-failure: run
1794bc79 95 condition-string1: {{ '${{platform}}' }}
dfc19a66
MJ
96 condition-string2: 'cygwin64'
97 steps:
98 - shell:
99 !include-raw-escape:
100 - scripts/common/cygwin64-shebang
cefcd7f8 101 - scripts/common/cygpath-prefix
51c9c62d 102 - scripts/common/print.sh
dfc19a66 103 - scripts/liburcu/build.sh
d954b6a8
MJ
104 {% else %}
105 - shell:
106 !include-raw-escape:
107 - scripts/common/print.sh
108 - scripts/liburcu/build.sh
109 {% endif %}
dfc19a66 110
d954b6a8
MJ
111- liburcu_publishers_defaults: &liburcu_publishers_defaults
112 name: 'liburcu_publishers_defaults'
e3022ad9 113 publishers:
d954b6a8 114 - tap: &liburcu_publisher_tap_defaults
69d7af71 115 results: 'tap/**/*.log'
1d56e325 116 fail-if-no-results: true
69d7af71 117 failed-tests-mark-build-as-failure: true
4f04deeb
MJ
118 include-comment-diagnostics: true
119 output-tap-to-console: false
69d7af71 120 todo-is-failure: false
d954b6a8
MJ
121 - raw: &liburcu_publisher_warnings-ng_defaults
122 xml: |
123 <io.jenkins.plugins.analysis.core.steps.IssuesRecorder plugin="warnings-ng">
124 <analysisTools>
125 <io.jenkins.plugins.analysis.warnings.Gcc4>
126 <id/>
127 <name/>
128 <jenkins plugin="plugin-util-api"/>
129 <pattern/>
130 <reportEncoding/>
131 <skipSymbolicLinks>false</skipSymbolicLinks>
132 </io.jenkins.plugins.analysis.warnings.Gcc4>
d954b6a8
MJ
133 </analysisTools>
134 <sourceCodeEncoding/>
135 <sourceDirectory/>
136 <sourceDirectories/>
137 <ignoreQualityGate>false</ignoreQualityGate>
138 <ignoreFailedBuilds>true</ignoreFailedBuilds>
139 <failOnError>false</failOnError>
140 <healthy>0</healthy>
141 <unhealthy>0</unhealthy>
142 <minimumSeverity plugin="analysis-model-api">
143 <name>LOW</name>
144 </minimumSeverity>
145 <filters/>
146 <isEnabledForFailure>true</isEnabledForFailure>
147 <isAggregatingResults>true</isAggregatingResults>
148 <isBlameDisabled>false</isBlameDisabled>
149 <skipPublishingChecks>true</skipPublishingChecks>
150 <publishAllIssues>false</publishAllIssues>
151 <qualityGates>
152 <io.jenkins.plugins.analysis.core.util.QualityGate>
153 <threshold>1</threshold>
154 <type>TOTAL</type>
155 <status>WARNING</status>
156 </io.jenkins.plugins.analysis.core.util.QualityGate>
157 </qualityGates>
158 <trendChartType>AGGREGATION_TOOLS</trendChartType>
159 <scm/>
160 </io.jenkins.plugins.analysis.core.steps.IssuesRecorder>
161 - archive: &liburcu_publisher_archive_defaults
69d7af71 162 artifacts: 'build/**,tap/**'
e3022ad9 163 allow-empty: false
d954b6a8
MJ
164 - workspace-cleanup: &liburcu_publisher_workspace_cleanup_defaults
165 clean-if:
166 - failure: false
167 - email-ext: &liburcu_publisher_email_ext_defaults
092af1e4
JR
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
24b12170 191- job-template:
c3843719 192 name: '{job_prefix}liburcu_{version}_{buildtype}'
24b12170
MJ
193 defaults: liburcu
194
d954b6a8
MJ
195 <<: *liburcu_matrix_axes_defaults
196 <<: *liburcu_builders_defaults
197 <<: *liburcu_publishers_defaults
24b12170 198
33b3de03
MJ
199- job-template:
200 name: dev_gerrit_liburcu_{buildtype}
201 defaults: liburcu
202 concurrent: true
203
204 scm:
205 - git:
206 url: https://review.lttng.org/userspace-rcu
207 refspec: 'refs/changes/*:refs/changes/*'
208 branches:
209 - '$GERRIT_REFSPEC'
210 basedir: src/liburcu
211 skip-tag: true
212
213 triggers:
214 - gerrit:
215 trigger-on:
216 - comment-added-event:
217 approval-category: 'CI-Build'
218 approval-value: 1
219 projects:
220 - project-compare-type: 'PLAIN'
221 project-pattern: 'userspace-rcu'
222 branches:
223 - branch-compare-type: 'ANT'
224 branch-pattern: '**'
225
d954b6a8
MJ
226 <<: *liburcu_matrix_axes_defaults
227 <<: *liburcu_builders_defaults
33b3de03
MJ
228
229 publishers:
d954b6a8
MJ
230 - tap: *liburcu_publisher_tap_defaults
231 - raw: *liburcu_publisher_warnings-ng_defaults
232 - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults
33b3de03 233
e3022ad9
MJ
234- job-template:
235 name: liburcu_{version}_scan-build
236 defaults: liburcu
1794bc79 237 node: 'bionic-amd64'
e3022ad9
MJ
238
239 triggers:
e8078c79
MJ
240 - pollscm:
241 cron: "@daily"
e3022ad9
MJ
242
243 builders:
244 - shell:
69f05d59 245 !include-raw-escape: scripts/common/scan-build.sh
e3022ad9
MJ
246
247 publishers:
248 - html-publisher:
249 name: 'HTML Report'
250 dir: 'scan-build-archive/'
251 files: 'index.html'
d954b6a8 252 - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults
e3022ad9 253
e8078c79
MJ
254- job-template:
255 name: liburcu_{version}_coverity
256 defaults: liburcu
1794bc79 257 node: 'bionic-amd64'
e8078c79
MJ
258
259 triggers:
260 - pollscm:
261 cron: "@daily"
262
263 wrappers:
d954b6a8
MJ
264 - ansicolor: *liburcu_wrapper_ansicolor_defaults
265 - timeout: *liburcu_wrapper_timeout_defaults
e8078c79 266 - timestamps
d954b6a8 267 - workspace-cleanup
e8078c79
MJ
268 - credentials-binding:
269 - username-password-separated:
270 credential-id: liburcu_coverity_token
271 username: COVERITY_SCAN_PROJECT_NAME
272 password: COVERITY_SCAN_TOKEN
273
274 builders:
275 - shell:
ef63064f 276 !include-raw-escape: scripts/common/coverity.sh
e8078c79
MJ
277
278 publishers:
6d35c326
MJ
279 - archive:
280 artifacts: 'analysis-results.tgz,cov-int/**'
281 allow-empty: false
d954b6a8 282 - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults
e3022ad9
MJ
283
284
69d7af71
MJ
285## Views
286- view-template:
287 name: 'Liburcu'
288 view-type: list
289 regex: 'liburcu[-_].*'
290
291
292## Projects
e3022ad9
MJ
293- project:
294 name: liburcu
d954b6a8 295 job_prefix: ''
51ca880a
MJ
296 github_user: urcu
297 github_name: userspace-rcu
092af1e4 298 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
e3022ad9 299 version:
d456a285 300 - stable-0.13
4eb59cd0 301 - stable-0.14
dfc19a66 302 - master
e3022ad9 303 jobs:
1794bc79
MJ
304 - '{job_prefix}liburcu_{version}_{buildtype}':
305 buildtype: linuxbuild
306 platforms: !!python/tuple [jammy-amd64]
307 builds: !!python/tuple [std, oot, dist]
308 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
309 touchstone: '(build == "std") && (conf == "std")'
d954b6a8 310 - '{job_prefix}liburcu_{version}_{buildtype}':
57ae8ff4 311 buildtype: build
1794bc79 312 platforms: !!python/tuple [bionic-amd64]
d954b6a8
MJ
313 builds: !!python/tuple [std, oot, dist]
314 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
315 touchstone: '(build == "std") && (conf == "std")'
316 - '{job_prefix}liburcu_{version}_{buildtype}':
57ae8ff4 317 buildtype: portbuild
1794bc79 318 platforms: !!python/tuple [deb11-armhf, deb11-arm64, sid-powerpc, deb11-ppc64el, deb11-i386]
d954b6a8
MJ
319 builds: !!python/tuple [std]
320 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
1794bc79 321 touchstone: '(build == "std") && (conf == "std") && (platform == "deb11-i386")'
d954b6a8 322 - '{job_prefix}liburcu_{version}_{buildtype}':
81bf613d 323 buildtype: slesbuild
1794bc79 324 platforms: !!python/tuple [sles12sp5-amd64]
d954b6a8
MJ
325 builds: !!python/tuple [std]
326 confs: !!python/tuple [std]
327 touchstone: '(build == "std")'
328 - '{job_prefix}liburcu_{version}_{buildtype}':
568b5cbd 329 buildtype: elbuild
1794bc79 330 platforms: !!python/tuple [el7-amd64, el8-amd64, el9-amd64]
d954b6a8
MJ
331 builds: !!python/tuple [std]
332 confs: !!python/tuple [std]
333 touchstone: '(build == "std")'
334 - '{job_prefix}liburcu_{version}_{buildtype}':
f0d7e5b1 335 buildtype: macosbuild
1794bc79 336 platforms: !!python/tuple [macos-amd64, macos-arm64]
d954b6a8
MJ
337 builds: !!python/tuple [std]
338 confs: !!python/tuple [std]
339 touchstone: '(build == "std")'
340 - '{job_prefix}liburcu_{version}_{buildtype}':
341 buildtype: winbuild
1794bc79 342 platforms: !!python/tuple [cygwin64]
d954b6a8
MJ
343 builds: !!python/tuple [std]
344 confs: !!python/tuple [std]
345 touchstone: '(build == "std")'
346 - '{job_prefix}liburcu_{version}_{buildtype}':
6ad0e7e6 347 buildtype: freebsdbuild
1794bc79 348 platforms: !!python/tuple [freebsd-amd64]
d954b6a8
MJ
349 builds: !!python/tuple [std]
350 confs: !!python/tuple [std]
351 touchstone: '(build == "std")'
e3022ad9 352 - 'liburcu_{version}_scan-build'
e8078c79
MJ
353 - 'liburcu_{version}_coverity':
354 version: master
e3022ad9 355
24b12170
MJ
356
357- project:
358 name: liburcu-dev-upstream
c3843719 359 job_prefix: 'dev_upstream_'
24b12170
MJ
360 github_user: urcu
361 github_name: userspace-rcu
362 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
363 version:
364 - stable-0.9
365 - stable-0.10
366 - stable-0.11
60c689e8 367 - stable-0.12
24b12170 368 jobs:
c3843719 369 - '{job_prefix}liburcu_{version}_{buildtype}':
1794bc79
MJ
370 buildtype: linuxbuild
371 platforms: !!python/tuple [jammy-amd64]
d954b6a8
MJ
372 builds: !!python/tuple [std, oot, dist]
373 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
374 touchstone: '(build == "std") && (conf == "std")'
c3843719 375 - '{job_prefix}liburcu_{version}_{buildtype}':
24b12170 376 buildtype: portbuild
1794bc79 377 platforms: !!python/tuple [deb11-armhf, deb11-arm64, sid-powerpc, deb11-ppc64el, deb11-i386]
d954b6a8
MJ
378 builds: !!python/tuple [std]
379 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
1794bc79 380 touchstone: '(build == "std") && (conf == "std") && (platform == "deb11-i386")'
c3843719 381 - '{job_prefix}liburcu_{version}_{buildtype}':
24b12170 382 buildtype: slesbuild
1794bc79 383 platforms: !!python/tuple [sles12sp5-amd64]
d954b6a8
MJ
384 builds: !!python/tuple [std]
385 confs: !!python/tuple [std]
386 touchstone: '(build == "std")'
c3843719 387 - '{job_prefix}liburcu_{version}_{buildtype}':
24b12170 388 buildtype: elbuild
1794bc79 389 platforms: !!python/tuple [el7-amd64, el8-amd64, el9-amd64]
d954b6a8
MJ
390 builds: !!python/tuple [std]
391 confs: !!python/tuple [std]
392 touchstone: '(build == "std")'
24b12170
MJ
393
394
33b3de03
MJ
395- project:
396 name: gerrit-liburcu
397 github_user: urcu
398 github_name: userspace-rcu
399 jobs:
400 - 'dev_gerrit_liburcu_{buildtype}':
401 buildtype: build
1794bc79 402 platforms: !!python/tuple [bionic-amd64]
d954b6a8
MJ
403 builds: !!python/tuple [std, oot, dist]
404 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
405 touchstone: '(build == "std")'
33b3de03
MJ
406 - 'dev_gerrit_liburcu_{buildtype}':
407 buildtype: portbuild
1794bc79 408 platforms: !!python/tuple [deb11-armhf, deb11-arm64, sid-powerpc, deb11-ppc64el, deb11-i386]
d954b6a8
MJ
409 builds: !!python/tuple [std]
410 confs: !!python/tuple [std]
411 touchstone: '(build == "std")'
4d0b24c4
MJ
412 - 'dev_gerrit_liburcu_{buildtype}':
413 buildtype: winbuild
414 platforms: !!python/tuple [cygwin64]
415 builds: !!python/tuple [std]
416 confs: !!python/tuple [std]
417 touchstone: ''
33b3de03 418
24b12170 419
69d7af71
MJ
420- project:
421 name: liburcu-views
422 views:
423 - Liburcu
This page took 0.052338 seconds and 4 git commands to generate.