ansible: use libuuid-devel on Suse
[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
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
e3022ad9 30 wrappers:
dfc19a66
MJ
31 - ansicolor
32 - timeout:
33 timeout: 90
34 fail: true
35 type: absolute
e3022ad9 36 - timestamps
dfc19a66
MJ
37 - workspace-cleanup:
38 clean-if:
39 - failure: false
e3022ad9
MJ
40
41 scm:
42 - git:
51ca880a 43 url: git://github.com/{github_user}/{github_name}.git
e3022ad9 44 browser: githubweb
51ca880a 45 browser-url: https://github.com/{github_user}/{github_name}
e3022ad9
MJ
46 branches:
47 - origin/{version}
6d35c326 48 basedir: src/liburcu
0a6e708b 49 skip-tag: true
dfc19a66 50 git-tool: jgit
e3022ad9
MJ
51
52 triggers:
e8078c79
MJ
53 - pollscm:
54 cron: "@hourly"
e3022ad9
MJ
55
56 properties:
69f05d59
MJ
57 - inject:
58 properties-content: |
59 PROJECT_NAME=liburcu
edf72710
MJ
60 - build-discarder:
61 num-to-keep: 2
e3022ad9 62 - github:
51ca880a 63 url: https://github.com/{github_user}/{github_name}
e3022ad9
MJ
64
65
dfc19a66
MJ
66## Anchors
67- liburcu_build_axes_defaults: &liburcu_build_axes_defaults
68 name: 'liburcu_build_axes_defaults'
e3022ad9 69 project-type: matrix
ca8c6144 70 node: 'master' # Applies only to matrix flyweight task
e3022ad9
MJ
71 axes:
72 - axis:
73 type: slave
74 name: arch
b6e61d51 75 values: '{obj:arch}'
e3022ad9
MJ
76 - axis:
77 type: user-defined
78 name: conf
dfc19a66 79 values: '{obj:conf}'
e3022ad9
MJ
80 - axis:
81 type: user-defined
82 name: build
9d0846f3 83 values: '{obj:build}'
e3022ad9 84
dfc19a66
MJ
85- liburcu_build_builders_defaults: &liburcu_build_builders_defaults
86 name: 'liburcu_build_builders_defaults'
e3022ad9
MJ
87 builders:
88 - shell:
ef63064f 89 !include-raw-escape: scripts/liburcu/build.sh
e3022ad9 90
dfc19a66
MJ
91- liburcu_build_builders_win: &liburcu_build_builders_win
92 name: 'liburcu_build_builders_win'
93 builders:
94 - conditional-step:
95 condition-kind: strings-match
96 on-evaluation-failure: run
97 condition-string1: '${{arch}}'
98 condition-string2: 'cygwin'
99 steps:
100 - shell:
101 !include-raw-escape:
102 - scripts/common/cygwin-shebang
103 - scripts/common/cygwin-prefix
104 - scripts/liburcu/build.sh
105 - conditional-step:
106 condition-kind: strings-match
107 on-evaluation-failure: run
108 condition-string1: '${{arch}}'
109 condition-string2: 'cygwin64'
110 steps:
111 - shell:
112 !include-raw-escape:
113 - scripts/common/cygwin64-shebang
114 - scripts/common/cygwin-prefix
115 - scripts/liburcu/build.sh
116 - conditional-step:
117 condition-kind: strings-match
118 on-evaluation-failure: run
119 condition-string1: '${{arch}}'
120 condition-string2: 'msys32'
121 steps:
122 - inject:
123 properties-content: 'MSYSTEM=MINGW32'
124 - shell:
125 !include-raw-escape:
126 - scripts/common/msys32-shebang
127 - scripts/common/cygwin-prefix
128 - scripts/liburcu/build.sh
129 - conditional-step:
130 condition-kind: strings-match
131 on-evaluation-failure: run
132 condition-string1: '${{arch}}'
133 condition-string2: 'msys64'
134 steps:
135 - inject:
136 properties-content: 'MSYSTEM=MINGW64'
137 - shell:
138 !include-raw-escape:
139 - scripts/common/msys64-shebang
140 - scripts/common/cygwin-prefix
141 - scripts/liburcu/build.sh
142
143- liburcu_build_publishers_defaults: &liburcu_build_publishers_defaults
144 name: 'liburcu_build_publishers_defaults'
e3022ad9
MJ
145 publishers:
146 - warnings:
147 console-log-parsers:
148 - 'GNU Make + GNU C Compiler (gcc)'
51ca880a
MJ
149 total-thresholds:
150 unstable:
d2c76ee5
MJ
151 total-all: 0
152 total-high: 0
153 total-normal: 0
154 total-low: 0
e3022ad9
MJ
155 - archive:
156 artifacts: 'build/**'
157 allow-empty: false
1d573689 158 - ircbot:
95654431 159 strategy: new-failure-and-fixed
1d573689
MJ
160 matrix-notifier: only-parent
161 channels:
162 - name: '#lttng'
e3022ad9 163
dfc19a66
MJ
164
165## Templates
166- job-template:
167 name: liburcu_{version}_{buildtype}
168 defaults: liburcu
169
170 <<: *liburcu_build_axes_defaults
171 <<: *liburcu_build_builders_defaults
172 <<: *liburcu_build_publishers_defaults
173
174- job-template:
175 name: liburcu_{version}_winbuild
176 defaults: liburcu
177
178 <<: *liburcu_build_axes_defaults
179 <<: *liburcu_build_builders_win
180 <<: *liburcu_build_publishers_defaults
181
e3022ad9
MJ
182- job-template:
183 name: liburcu_{version}_cppcheck
184 defaults: liburcu
185
186 triggers:
e8078c79
MJ
187 - pollscm:
188 cron: "@daily"
e3022ad9
MJ
189
190 builders:
191 - shell: |
192 rm -f liburcu-cppcheck.xml
6d35c326 193 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/liburcu 2> liburcu-cppcheck.xml
e3022ad9
MJ
194
195 publishers:
196 - archive:
197 artifacts: 'liburcu-cppcheck.xml'
198 allow-empty: false
e3022ad9
MJ
199 - cppcheck:
200 pattern: 'liburcu-cppcheck.xml'
201 - email:
202 recipients: 'ci-notification@lists.lttng.org'
203 notify-every-unstable-build: true
204 send-to-individuals: false
205
206- job-template:
207 name: liburcu_{version}_scan-build
208 defaults: liburcu
209 node: 'x86-64'
210
211 triggers:
e8078c79
MJ
212 - pollscm:
213 cron: "@daily"
e3022ad9
MJ
214
215 builders:
216 - shell:
69f05d59 217 !include-raw-escape: scripts/common/scan-build.sh
e3022ad9
MJ
218
219 publishers:
220 - html-publisher:
221 name: 'HTML Report'
222 dir: 'scan-build-archive/'
223 files: 'index.html'
224
e8078c79
MJ
225- job-template:
226 name: liburcu_{version}_coverity
227 defaults: liburcu
228 node: 'x86-64'
229
230 triggers:
231 - pollscm:
232 cron: "@daily"
233
234 wrappers:
dfc19a66
MJ
235 - ansicolor
236 - timeout:
237 timeout: 60
238 fail: true
239 type: absolute
e8078c79 240 - timestamps
dfc19a66
MJ
241 - workspace-cleanup:
242 clean-if:
243 - failure: false
e8078c79
MJ
244 - credentials-binding:
245 - username-password-separated:
246 credential-id: liburcu_coverity_token
247 username: COVERITY_SCAN_PROJECT_NAME
248 password: COVERITY_SCAN_TOKEN
249
250 builders:
251 - shell:
ef63064f 252 !include-raw-escape: scripts/common/coverity.sh
e8078c79
MJ
253
254 publishers:
255 - workspace-cleanup
6d35c326
MJ
256 - archive:
257 artifacts: 'analysis-results.tgz,cov-int/**'
258 allow-empty: false
e3022ad9
MJ
259
260
261## Project
262- project:
263 name: liburcu
51ca880a
MJ
264 github_user: urcu
265 github_name: userspace-rcu
e3022ad9 266 version:
dfc19a66
MJ
267 - stable-0.8
268 - stable-0.9
be76d048 269 - stable-0.10
dfc19a66 270 - master
e3022ad9 271 jobs:
57ae8ff4
MJ
272 - 'liburcu_{version}_{buildtype}':
273 buildtype: build
b6e61d51 274 arch: !!python/tuple [x86-32, x86-64]
9d0846f3 275 build: !!python/tuple [std, oot, dist]
dfc19a66 276 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
57ae8ff4
MJ
277 - 'liburcu_{version}_{buildtype}':
278 buildtype: portbuild
72f4f0c1 279 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el]
9d0846f3 280 build: !!python/tuple [std]
dfc19a66 281 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
7491c28d
MJ
282 - 'liburcu_{version}_{buildtype}':
283 buildtype: solarisbuild
284 arch: !!python/tuple [solaris10, solaris11]
285 build: !!python/tuple [std]
dfc19a66 286 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
51ca880a 287 version: # Solaris support was introduced in 0.9
7491c28d
MJ
288 - master
289 - stable-0.9
be76d048 290 - stable-0.10
f7bf4d7a
MJ
291 - 'liburcu_{version}_{buildtype}':
292 buildtype: macosxbuild
293 arch: !!python/tuple [macosx]
294 build: !!python/tuple [std]
dfc19a66
MJ
295 conf: !!python/tuple [std, static, tls_fallback, debug-rcu]
296 version:
297 - master
298 - stable-0.9
be76d048 299 - stable-0.10
dfc19a66
MJ
300 - 'liburcu_{version}_winbuild':
301 arch: !!python/tuple [cygwin, cygwin64]
302 build: !!python/tuple [std]
303 conf: !!python/tuple [std]
f7bf4d7a
MJ
304 version:
305 - master
306 - stable-0.9
be76d048 307 - stable-0.10
e3022ad9
MJ
308 - 'liburcu_{version}_cppcheck'
309 - 'liburcu_{version}_scan-build'
e8078c79
MJ
310 - 'liburcu_{version}_coverity':
311 version: master
e3022ad9 312
This page took 0.05173 seconds and 4 git commands to generate.