Remove cppcheck jobs
[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
MJ
117 failed-tests-mark-build-as-failure: true
118 todo-is-failure: false
d954b6a8
MJ
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 <io.jenkins.plugins.analysis.warnings.Clang>
132 <id/>
133 <name/>
134 <jenkins plugin="plugin-util-api"/>
135 <pattern/>
136 <reportEncoding/>
137 <skipSymbolicLinks>false</skipSymbolicLinks>
138 </io.jenkins.plugins.analysis.warnings.Clang>
139 </analysisTools>
140 <sourceCodeEncoding/>
141 <sourceDirectory/>
142 <sourceDirectories/>
143 <ignoreQualityGate>false</ignoreQualityGate>
144 <ignoreFailedBuilds>true</ignoreFailedBuilds>
145 <failOnError>false</failOnError>
146 <healthy>0</healthy>
147 <unhealthy>0</unhealthy>
148 <minimumSeverity plugin="analysis-model-api">
149 <name>LOW</name>
150 </minimumSeverity>
151 <filters/>
152 <isEnabledForFailure>true</isEnabledForFailure>
153 <isAggregatingResults>true</isAggregatingResults>
154 <isBlameDisabled>false</isBlameDisabled>
155 <skipPublishingChecks>true</skipPublishingChecks>
156 <publishAllIssues>false</publishAllIssues>
157 <qualityGates>
158 <io.jenkins.plugins.analysis.core.util.QualityGate>
159 <threshold>1</threshold>
160 <type>TOTAL</type>
161 <status>WARNING</status>
162 </io.jenkins.plugins.analysis.core.util.QualityGate>
163 </qualityGates>
164 <trendChartType>AGGREGATION_TOOLS</trendChartType>
165 <scm/>
166 </io.jenkins.plugins.analysis.core.steps.IssuesRecorder>
167 - archive: &liburcu_publisher_archive_defaults
69d7af71 168 artifacts: 'build/**,tap/**'
e3022ad9 169 allow-empty: false
d954b6a8
MJ
170 - workspace-cleanup: &liburcu_publisher_workspace_cleanup_defaults
171 clean-if:
172 - failure: false
173 - email-ext: &liburcu_publisher_email_ext_defaults
092af1e4
JR
174 recipients: '{obj:email_to}'
175 reply-to: ci-notification@lists.lttng.org
176 always: false
177 unstable: false
178 first-failure: true
179 first-unstable: true
180 not-built: false
181 aborted: false
182 regression: false
183 failure: false
184 second-failure: false
185 improvement: false
186 still-failing: false
187 success: false
188 fixed: false
189 fixed-unhealthy: true
190 still-unstable: false
191 pre-build: false
192 matrix-trigger: only-parent
193 send-to:
194 - recipients
dfc19a66
MJ
195
196## Templates
24b12170 197- job-template:
c3843719 198 name: '{job_prefix}liburcu_{version}_{buildtype}'
24b12170
MJ
199 defaults: liburcu
200
d954b6a8
MJ
201 <<: *liburcu_matrix_axes_defaults
202 <<: *liburcu_builders_defaults
203 <<: *liburcu_publishers_defaults
24b12170 204
33b3de03
MJ
205- job-template:
206 name: dev_gerrit_liburcu_{buildtype}
207 defaults: liburcu
208 concurrent: true
209
210 scm:
211 - git:
212 url: https://review.lttng.org/userspace-rcu
213 refspec: 'refs/changes/*:refs/changes/*'
214 branches:
215 - '$GERRIT_REFSPEC'
216 basedir: src/liburcu
217 skip-tag: true
218
219 triggers:
220 - gerrit:
221 trigger-on:
222 - comment-added-event:
223 approval-category: 'CI-Build'
224 approval-value: 1
225 projects:
226 - project-compare-type: 'PLAIN'
227 project-pattern: 'userspace-rcu'
228 branches:
229 - branch-compare-type: 'ANT'
230 branch-pattern: '**'
231
d954b6a8
MJ
232 <<: *liburcu_matrix_axes_defaults
233 <<: *liburcu_builders_defaults
33b3de03
MJ
234
235 publishers:
d954b6a8
MJ
236 - tap: *liburcu_publisher_tap_defaults
237 - raw: *liburcu_publisher_warnings-ng_defaults
238 - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults
33b3de03 239
e3022ad9
MJ
240- job-template:
241 name: liburcu_{version}_scan-build
242 defaults: liburcu
1794bc79 243 node: 'bionic-amd64'
e3022ad9
MJ
244
245 triggers:
e8078c79
MJ
246 - pollscm:
247 cron: "@daily"
e3022ad9
MJ
248
249 builders:
250 - shell:
69f05d59 251 !include-raw-escape: scripts/common/scan-build.sh
e3022ad9
MJ
252
253 publishers:
254 - html-publisher:
255 name: 'HTML Report'
256 dir: 'scan-build-archive/'
257 files: 'index.html'
d954b6a8 258 - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults
e3022ad9 259
e8078c79
MJ
260- job-template:
261 name: liburcu_{version}_coverity
262 defaults: liburcu
1794bc79 263 node: 'bionic-amd64'
e8078c79
MJ
264
265 triggers:
266 - pollscm:
267 cron: "@daily"
268
269 wrappers:
d954b6a8
MJ
270 - ansicolor: *liburcu_wrapper_ansicolor_defaults
271 - timeout: *liburcu_wrapper_timeout_defaults
e8078c79 272 - timestamps
d954b6a8 273 - workspace-cleanup
e8078c79
MJ
274 - credentials-binding:
275 - username-password-separated:
276 credential-id: liburcu_coverity_token
277 username: COVERITY_SCAN_PROJECT_NAME
278 password: COVERITY_SCAN_TOKEN
279
280 builders:
281 - shell:
ef63064f 282 !include-raw-escape: scripts/common/coverity.sh
e8078c79
MJ
283
284 publishers:
6d35c326
MJ
285 - archive:
286 artifacts: 'analysis-results.tgz,cov-int/**'
287 allow-empty: false
d954b6a8 288 - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults
e3022ad9
MJ
289
290
69d7af71
MJ
291## Views
292- view-template:
293 name: 'Liburcu'
294 view-type: list
295 regex: 'liburcu[-_].*'
296
297
298## Projects
e3022ad9
MJ
299- project:
300 name: liburcu
d954b6a8 301 job_prefix: ''
51ca880a
MJ
302 github_user: urcu
303 github_name: userspace-rcu
092af1e4 304 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
e3022ad9 305 version:
d456a285 306 - stable-0.13
4eb59cd0 307 - stable-0.14
dfc19a66 308 - master
e3022ad9 309 jobs:
1794bc79
MJ
310 - '{job_prefix}liburcu_{version}_{buildtype}':
311 buildtype: linuxbuild
312 platforms: !!python/tuple [jammy-amd64]
313 builds: !!python/tuple [std, oot, dist]
314 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
315 touchstone: '(build == "std") && (conf == "std")'
d954b6a8 316 - '{job_prefix}liburcu_{version}_{buildtype}':
57ae8ff4 317 buildtype: build
1794bc79 318 platforms: !!python/tuple [bionic-amd64]
d954b6a8
MJ
319 builds: !!python/tuple [std, oot, dist]
320 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
321 touchstone: '(build == "std") && (conf == "std")'
322 - '{job_prefix}liburcu_{version}_{buildtype}':
57ae8ff4 323 buildtype: portbuild
1794bc79 324 platforms: !!python/tuple [deb11-armhf, deb11-arm64, sid-powerpc, deb11-ppc64el, deb11-i386]
d954b6a8
MJ
325 builds: !!python/tuple [std]
326 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
1794bc79 327 touchstone: '(build == "std") && (conf == "std") && (platform == "deb11-i386")'
d954b6a8 328 - '{job_prefix}liburcu_{version}_{buildtype}':
81bf613d 329 buildtype: slesbuild
1794bc79 330 platforms: !!python/tuple [sles12sp5-amd64]
d954b6a8
MJ
331 builds: !!python/tuple [std]
332 confs: !!python/tuple [std]
333 touchstone: '(build == "std")'
334 - '{job_prefix}liburcu_{version}_{buildtype}':
568b5cbd 335 buildtype: elbuild
1794bc79 336 platforms: !!python/tuple [el7-amd64, el8-amd64, el9-amd64]
d954b6a8
MJ
337 builds: !!python/tuple [std]
338 confs: !!python/tuple [std]
339 touchstone: '(build == "std")'
340 - '{job_prefix}liburcu_{version}_{buildtype}':
f0d7e5b1 341 buildtype: macosbuild
1794bc79 342 platforms: !!python/tuple [macos-amd64, macos-arm64]
d954b6a8
MJ
343 builds: !!python/tuple [std]
344 confs: !!python/tuple [std]
345 touchstone: '(build == "std")'
346 - '{job_prefix}liburcu_{version}_{buildtype}':
347 buildtype: winbuild
1794bc79 348 platforms: !!python/tuple [cygwin64]
d954b6a8
MJ
349 builds: !!python/tuple [std]
350 confs: !!python/tuple [std]
351 touchstone: '(build == "std")'
352 - '{job_prefix}liburcu_{version}_{buildtype}':
6ad0e7e6 353 buildtype: freebsdbuild
1794bc79 354 platforms: !!python/tuple [freebsd-amd64]
d954b6a8
MJ
355 builds: !!python/tuple [std]
356 confs: !!python/tuple [std]
357 touchstone: '(build == "std")'
e3022ad9 358 - 'liburcu_{version}_scan-build'
e8078c79
MJ
359 - 'liburcu_{version}_coverity':
360 version: master
e3022ad9 361
24b12170
MJ
362
363- project:
364 name: liburcu-dev-upstream
c3843719 365 job_prefix: 'dev_upstream_'
24b12170
MJ
366 github_user: urcu
367 github_name: userspace-rcu
368 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
369 version:
370 - stable-0.9
371 - stable-0.10
372 - stable-0.11
60c689e8 373 - stable-0.12
24b12170 374 jobs:
c3843719 375 - '{job_prefix}liburcu_{version}_{buildtype}':
1794bc79
MJ
376 buildtype: linuxbuild
377 platforms: !!python/tuple [jammy-amd64]
d954b6a8
MJ
378 builds: !!python/tuple [std, oot, dist]
379 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
380 touchstone: '(build == "std") && (conf == "std")'
c3843719 381 - '{job_prefix}liburcu_{version}_{buildtype}':
24b12170 382 buildtype: portbuild
1794bc79 383 platforms: !!python/tuple [deb11-armhf, deb11-arm64, sid-powerpc, deb11-ppc64el, deb11-i386]
d954b6a8
MJ
384 builds: !!python/tuple [std]
385 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
1794bc79 386 touchstone: '(build == "std") && (conf == "std") && (platform == "deb11-i386")'
c3843719 387 - '{job_prefix}liburcu_{version}_{buildtype}':
24b12170 388 buildtype: slesbuild
1794bc79 389 platforms: !!python/tuple [sles12sp5-amd64]
d954b6a8
MJ
390 builds: !!python/tuple [std]
391 confs: !!python/tuple [std]
392 touchstone: '(build == "std")'
c3843719 393 - '{job_prefix}liburcu_{version}_{buildtype}':
24b12170 394 buildtype: elbuild
1794bc79 395 platforms: !!python/tuple [el7-amd64, el8-amd64, el9-amd64]
d954b6a8
MJ
396 builds: !!python/tuple [std]
397 confs: !!python/tuple [std]
398 touchstone: '(build == "std")'
24b12170
MJ
399
400
33b3de03
MJ
401- project:
402 name: gerrit-liburcu
403 github_user: urcu
404 github_name: userspace-rcu
405 jobs:
406 - 'dev_gerrit_liburcu_{buildtype}':
407 buildtype: build
1794bc79 408 platforms: !!python/tuple [bionic-amd64]
d954b6a8
MJ
409 builds: !!python/tuple [std, oot, dist]
410 confs: !!python/tuple [std, static, tls_fallback, debug-rcu]
411 touchstone: '(build == "std")'
33b3de03
MJ
412 - 'dev_gerrit_liburcu_{buildtype}':
413 buildtype: portbuild
1794bc79 414 platforms: !!python/tuple [deb11-armhf, deb11-arm64, sid-powerpc, deb11-ppc64el, deb11-i386]
d954b6a8
MJ
415 builds: !!python/tuple [std]
416 confs: !!python/tuple [std]
417 touchstone: '(build == "std")'
4d0b24c4
MJ
418 - 'dev_gerrit_liburcu_{buildtype}':
419 buildtype: winbuild
420 platforms: !!python/tuple [cygwin64]
421 builds: !!python/tuple [std]
422 confs: !!python/tuple [std]
423 touchstone: ''
33b3de03 424
24b12170 425
69d7af71
MJ
426- project:
427 name: liburcu-views
428 views:
429 - Liburcu
This page took 0.049234 seconds and 4 git commands to generate.