Commit | Line | Data |
---|---|---|
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}}' | |
8f541678 | 120 | condition-string2: 'msys2-mingw32' |
dfc19a66 MJ |
121 | steps: |
122 | - inject: | |
123 | properties-content: 'MSYSTEM=MINGW32' | |
124 | - shell: | |
125 | !include-raw-escape: | |
8f541678 | 126 | - scripts/common/msys2-shebang |
dfc19a66 MJ |
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}}' | |
8f541678 | 133 | condition-string2: 'msys2-mingw64' |
dfc19a66 MJ |
134 | steps: |
135 | - inject: | |
136 | properties-content: 'MSYSTEM=MINGW64' | |
137 | - shell: | |
138 | !include-raw-escape: | |
8f541678 | 139 | - scripts/common/msys2-shebang |
dfc19a66 MJ |
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' | |
092af1e4 JR |
163 | - email-ext: |
164 | recipients: '{obj:email_to}' | |
165 | reply-to: ci-notification@lists.lttng.org | |
166 | always: false | |
167 | unstable: false | |
168 | first-failure: true | |
169 | first-unstable: true | |
170 | not-built: false | |
171 | aborted: false | |
172 | regression: false | |
173 | failure: false | |
174 | second-failure: false | |
175 | improvement: false | |
176 | still-failing: false | |
177 | success: false | |
178 | fixed: false | |
179 | fixed-unhealthy: true | |
180 | still-unstable: false | |
181 | pre-build: false | |
182 | matrix-trigger: only-parent | |
183 | send-to: | |
184 | - recipients | |
dfc19a66 MJ |
185 | |
186 | ## Templates | |
187 | - job-template: | |
188 | name: liburcu_{version}_{buildtype} | |
189 | defaults: liburcu | |
190 | ||
191 | <<: *liburcu_build_axes_defaults | |
192 | <<: *liburcu_build_builders_defaults | |
193 | <<: *liburcu_build_publishers_defaults | |
194 | ||
195 | - job-template: | |
196 | name: liburcu_{version}_winbuild | |
197 | defaults: liburcu | |
198 | ||
199 | <<: *liburcu_build_axes_defaults | |
200 | <<: *liburcu_build_builders_win | |
201 | <<: *liburcu_build_publishers_defaults | |
202 | ||
e3022ad9 MJ |
203 | - job-template: |
204 | name: liburcu_{version}_cppcheck | |
205 | defaults: liburcu | |
206 | ||
207 | triggers: | |
e8078c79 MJ |
208 | - pollscm: |
209 | cron: "@daily" | |
e3022ad9 MJ |
210 | |
211 | builders: | |
212 | - shell: | | |
5279b0f2 MJ |
213 | rm -f cppcheck-result.xml |
214 | cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/liburcu 2> cppcheck-result.xml | |
e3022ad9 MJ |
215 | |
216 | publishers: | |
217 | - archive: | |
5279b0f2 | 218 | artifacts: 'cppcheck-result.xml' |
e3022ad9 | 219 | allow-empty: false |
e3022ad9 | 220 | - cppcheck: |
5279b0f2 | 221 | pattern: 'cppcheck-result.xml' |
092af1e4 JR |
222 | - email-ext: |
223 | recipients: '{obj:email_to}' | |
224 | reply-to: ci-notification@lists.lttng.org | |
225 | always: false | |
226 | unstable: false | |
227 | first-failure: true | |
228 | first-unstable: false | |
229 | not-built: false | |
230 | aborted: false | |
231 | regression: false | |
232 | failure: false | |
233 | second-failure: false | |
234 | improvement: false | |
235 | still-failing: false | |
236 | success: false | |
237 | fixed: false | |
238 | fixed-unhealthy: true | |
239 | still-unstable: true | |
240 | pre-build: false | |
241 | matrix-trigger: only-parent | |
242 | send-to: | |
243 | - recipients | |
e3022ad9 MJ |
244 | |
245 | - job-template: | |
246 | name: liburcu_{version}_scan-build | |
247 | defaults: liburcu | |
16844a6d | 248 | node: 'amd64' |
e3022ad9 MJ |
249 | |
250 | triggers: | |
e8078c79 MJ |
251 | - pollscm: |
252 | cron: "@daily" | |
e3022ad9 MJ |
253 | |
254 | builders: | |
255 | - shell: | |
69f05d59 | 256 | !include-raw-escape: scripts/common/scan-build.sh |
e3022ad9 MJ |
257 | |
258 | publishers: | |
259 | - html-publisher: | |
260 | name: 'HTML Report' | |
261 | dir: 'scan-build-archive/' | |
262 | files: 'index.html' | |
263 | ||
e8078c79 MJ |
264 | - job-template: |
265 | name: liburcu_{version}_coverity | |
266 | defaults: liburcu | |
16844a6d | 267 | node: 'amd64' |
e8078c79 MJ |
268 | |
269 | triggers: | |
270 | - pollscm: | |
271 | cron: "@daily" | |
272 | ||
273 | wrappers: | |
dfc19a66 MJ |
274 | - ansicolor |
275 | - timeout: | |
276 | timeout: 60 | |
277 | fail: true | |
278 | type: absolute | |
e8078c79 | 279 | - timestamps |
dfc19a66 MJ |
280 | - workspace-cleanup: |
281 | clean-if: | |
282 | - failure: false | |
e8078c79 MJ |
283 | - credentials-binding: |
284 | - username-password-separated: | |
285 | credential-id: liburcu_coverity_token | |
286 | username: COVERITY_SCAN_PROJECT_NAME | |
287 | password: COVERITY_SCAN_TOKEN | |
288 | ||
289 | builders: | |
290 | - shell: | |
ef63064f | 291 | !include-raw-escape: scripts/common/coverity.sh |
e8078c79 MJ |
292 | |
293 | publishers: | |
294 | - workspace-cleanup | |
6d35c326 MJ |
295 | - archive: |
296 | artifacts: 'analysis-results.tgz,cov-int/**' | |
297 | allow-empty: false | |
e3022ad9 MJ |
298 | |
299 | ||
300 | ## Project | |
301 | - project: | |
302 | name: liburcu | |
51ca880a MJ |
303 | github_user: urcu |
304 | github_name: userspace-rcu | |
092af1e4 | 305 | email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com' |
e3022ad9 | 306 | version: |
dfc19a66 MJ |
307 | - stable-0.8 |
308 | - stable-0.9 | |
be76d048 | 309 | - stable-0.10 |
dfc19a66 | 310 | - master |
e3022ad9 | 311 | jobs: |
57ae8ff4 MJ |
312 | - 'liburcu_{version}_{buildtype}': |
313 | buildtype: build | |
16844a6d | 314 | arch: !!python/tuple [amd64] |
9d0846f3 | 315 | build: !!python/tuple [std, oot, dist] |
dfc19a66 | 316 | conf: !!python/tuple [std, static, tls_fallback, debug-rcu] |
57ae8ff4 MJ |
317 | - 'liburcu_{version}_{buildtype}': |
318 | buildtype: portbuild | |
16844a6d | 319 | arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386] |
9d0846f3 | 320 | build: !!python/tuple [std] |
dfc19a66 | 321 | conf: !!python/tuple [std, static, tls_fallback, debug-rcu] |
81bf613d MJ |
322 | - 'liburcu_{version}_{buildtype}': |
323 | buildtype: slesbuild | |
324 | arch: !!python/tuple [sles12sp2] | |
325 | build: !!python/tuple [std] | |
326 | conf: !!python/tuple [std] | |
7491c28d MJ |
327 | - 'liburcu_{version}_{buildtype}': |
328 | buildtype: solarisbuild | |
995ac8f2 | 329 | arch: !!python/tuple [sol10-i386, sol11-i386] |
7491c28d | 330 | build: !!python/tuple [std] |
dfc19a66 | 331 | conf: !!python/tuple [std, static, tls_fallback, debug-rcu] |
51ca880a | 332 | version: # Solaris support was introduced in 0.9 |
7491c28d MJ |
333 | - master |
334 | - stable-0.9 | |
be76d048 | 335 | - stable-0.10 |
f7bf4d7a MJ |
336 | - 'liburcu_{version}_{buildtype}': |
337 | buildtype: macosxbuild | |
338 | arch: !!python/tuple [macosx] | |
339 | build: !!python/tuple [std] | |
dfc19a66 MJ |
340 | conf: !!python/tuple [std, static, tls_fallback, debug-rcu] |
341 | version: | |
342 | - master | |
343 | - stable-0.9 | |
be76d048 | 344 | - stable-0.10 |
dfc19a66 MJ |
345 | - 'liburcu_{version}_winbuild': |
346 | arch: !!python/tuple [cygwin, cygwin64] | |
347 | build: !!python/tuple [std] | |
348 | conf: !!python/tuple [std] | |
f7bf4d7a MJ |
349 | version: |
350 | - master | |
351 | - stable-0.9 | |
be76d048 | 352 | - stable-0.10 |
e3022ad9 MJ |
353 | - 'liburcu_{version}_cppcheck' |
354 | - 'liburcu_{version}_scan-build' | |
e8078c79 MJ |
355 | - 'liburcu_{version}_coverity': |
356 | version: master | |
e3022ad9 | 357 |