Commit | Line | Data |
---|---|---|
ae855ba1 MJ |
1 | # {project}_{version}_{jobtype} |
2 | # librseq_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: librseq | |
14 | description: | | |
15 | ||
16 | <p>Job is managed by Jenkins Job Builder.</p> | |
17 | ||
18 | project-type: freestyle | |
19 | ||
20 | wrappers: | |
21 | - ansicolor | |
22 | - timeout: | |
23 | timeout: 10 | |
24 | fail: true | |
733146f2 | 25 | type: no-activity |
ae855ba1 MJ |
26 | - timestamps |
27 | - workspace-cleanup: | |
28 | clean-if: | |
29 | - failure: false | |
30 | ||
31 | scm: | |
32 | - git: | |
4d27af8f | 33 | url: https://github.com/{github_user}/{github_name}.git |
ae855ba1 MJ |
34 | browser: githubweb |
35 | browser-url: https://github.com/{github_user}/{github_name} | |
36 | branches: | |
37 | - origin/{version} | |
38 | basedir: src/librseq | |
39 | skip-tag: true | |
40 | ||
41 | triggers: | |
42 | - pollscm: | |
43 | cron: "@hourly" | |
44 | ||
45 | properties: | |
46 | - inject: | |
47 | properties-content: | | |
48 | PROJECT_NAME=librseq | |
49 | - build-discarder: | |
50 | num-to-keep: 2 | |
51 | - github: | |
52 | url: https://github.com/{github_user}/{github_name} | |
53 | ||
54 | ||
55 | ## Anchors | |
56 | - librseq_build_axes_defaults: &librseq_build_axes_defaults | |
57 | name: 'librseq_build_axes_defaults' | |
58 | project-type: matrix | |
59 | node: 'master' # Applies only to matrix flyweight task | |
9a07183c MJ |
60 | execution-strategy: |
61 | touchstone: | |
62 | expr: '{touchstone}' | |
63 | result: unstable | |
ae855ba1 MJ |
64 | axes: |
65 | - axis: | |
66 | type: slave | |
9a07183c MJ |
67 | name: platform |
68 | values: '{obj:platforms}' | |
ae855ba1 MJ |
69 | - axis: |
70 | type: user-defined | |
71 | name: conf | |
9a07183c | 72 | values: '{obj:confs}' |
ae855ba1 MJ |
73 | - axis: |
74 | type: user-defined | |
75 | name: build | |
9a07183c | 76 | values: '{obj:builds}' |
ae855ba1 MJ |
77 | |
78 | - librseq_build_axes_cc: &librseq_build_axes_cc | |
79 | name: 'librseq_build_axes_cc' | |
80 | project-type: matrix | |
81 | node: 'master' # Applies only to matrix flyweight task | |
9a07183c MJ |
82 | execution-strategy: |
83 | touchstone: | |
84 | expr: '{touchstone}' | |
85 | result: unstable | |
ae855ba1 MJ |
86 | axes: |
87 | - axis: | |
88 | type: slave | |
9a07183c MJ |
89 | name: platform |
90 | values: '{obj:platforms}' | |
ae855ba1 MJ |
91 | - axis: |
92 | type: user-defined | |
93 | name: conf | |
9a07183c | 94 | values: '{obj:confs}' |
ae855ba1 MJ |
95 | - axis: |
96 | type: user-defined | |
97 | name: build | |
9a07183c | 98 | values: '{obj:builds}' |
ae855ba1 MJ |
99 | - axis: |
100 | type: user-defined | |
101 | name: cc | |
9a07183c | 102 | values: '{obj:ccs}' |
ae855ba1 MJ |
103 | |
104 | - librseq_build_builders_defaults: &librseq_build_builders_defaults | |
105 | name: 'librseq_build_builders_defaults' | |
106 | builders: | |
107 | - shell: | |
51c9c62d MJ |
108 | !include-raw-escape: |
109 | - scripts/common/print.sh | |
110 | - scripts/librseq/build.sh | |
ae855ba1 MJ |
111 | |
112 | - librseq_build_publishers_defaults: &librseq_build_publishers_defaults | |
113 | name: 'librseq_build_publishers_defaults' | |
114 | publishers: | |
10c9bf80 MJ |
115 | - tap: |
116 | results: 'tap/**/*.log' | |
117 | fail-if-no-results: true | |
118 | failed-tests-mark-build-as-failure: true | |
119 | todo-is-failure: false | |
ae855ba1 MJ |
120 | - warnings: |
121 | console-log-parsers: | |
122 | - 'GNU Make + GNU C Compiler (gcc)' | |
123 | total-thresholds: | |
124 | unstable: | |
125 | total-all: 0 | |
126 | total-high: 0 | |
127 | total-normal: 0 | |
128 | total-low: 0 | |
129 | - archive: | |
10c9bf80 | 130 | artifacts: 'build/**,tap/**' |
ae855ba1 | 131 | allow-empty: false |
ae855ba1 MJ |
132 | - email-ext: |
133 | recipients: '{obj:email_to}' | |
134 | reply-to: ci-notification@lists.lttng.org | |
135 | always: false | |
136 | unstable: false | |
137 | first-failure: true | |
138 | first-unstable: true | |
139 | not-built: false | |
140 | aborted: false | |
141 | regression: false | |
142 | failure: false | |
143 | second-failure: false | |
144 | improvement: false | |
145 | still-failing: false | |
146 | success: false | |
147 | fixed: false | |
148 | fixed-unhealthy: true | |
149 | still-unstable: false | |
150 | pre-build: false | |
151 | matrix-trigger: only-parent | |
152 | send-to: | |
153 | - recipients | |
154 | ||
10c9bf80 MJ |
155 | - librseq_build_publishers_gerrit: &librseq_build_publishers_gerrit |
156 | name: 'librseq_build_publishers_gerrit' | |
157 | publishers: | |
158 | - tap: | |
159 | results: 'tap/**/*.log' | |
160 | fail-if-no-results: true | |
161 | failed-tests-mark-build-as-failure: true | |
162 | todo-is-failure: false | |
163 | - warnings: | |
164 | console-log-parsers: | |
165 | - 'GNU Make + GNU C Compiler (gcc)' | |
166 | total-thresholds: | |
167 | failed: | |
168 | total-all: 0 | |
169 | total-high: 0 | |
170 | total-normal: 0 | |
171 | total-low: 0 | |
172 | - archive: | |
173 | artifacts: 'build/**,tap/**' | |
174 | allow-empty: false | |
175 | ||
176 | ||
ae855ba1 MJ |
177 | ## Templates |
178 | - job-template: | |
179 | name: librseq_{version}_{buildtype} | |
180 | defaults: librseq | |
181 | ||
182 | <<: *librseq_build_axes_defaults | |
183 | <<: *librseq_build_builders_defaults | |
184 | <<: *librseq_build_publishers_defaults | |
185 | ||
186 | - job-template: | |
187 | name: librseq_{version}_{cctype} | |
188 | defaults: librseq | |
189 | ||
190 | <<: *librseq_build_axes_cc | |
191 | <<: *librseq_build_builders_defaults | |
192 | <<: *librseq_build_publishers_defaults | |
193 | ||
194 | - job-template: | |
195 | name: librseq_{version}_cppcheck | |
196 | defaults: librseq | |
197 | ||
198 | triggers: | |
199 | - pollscm: | |
200 | cron: "@daily" | |
201 | ||
202 | builders: | |
203 | - shell: | | |
204 | rm -f cppcheck-result.xml | |
205 | cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/librseq 2> cppcheck-result.xml | |
206 | ||
207 | publishers: | |
208 | - archive: | |
209 | artifacts: 'cppcheck-result.xml' | |
210 | allow-empty: false | |
211 | - cppcheck: | |
212 | pattern: 'cppcheck-result.xml' | |
213 | - email-ext: | |
214 | recipients: '{obj:email_to}' | |
215 | reply-to: ci-notification@lists.lttng.org | |
216 | always: false | |
217 | unstable: false | |
218 | first-failure: true | |
219 | first-unstable: false | |
220 | not-built: false | |
221 | aborted: false | |
222 | regression: false | |
223 | failure: false | |
224 | second-failure: false | |
225 | improvement: false | |
226 | still-failing: false | |
227 | success: false | |
228 | fixed: false | |
229 | fixed-unhealthy: true | |
230 | still-unstable: true | |
231 | pre-build: false | |
232 | matrix-trigger: only-parent | |
233 | send-to: | |
234 | - recipients | |
235 | ||
10c9bf80 MJ |
236 | - job-template: |
237 | name: dev_gerrit_librseq_{buildtype} | |
238 | defaults: librseq | |
239 | concurrent: true | |
240 | ||
241 | scm: | |
242 | - git: | |
243 | url: https://review.lttng.org/librseq | |
244 | refspec: 'refs/changes/*:refs/changes/*' | |
245 | branches: | |
246 | - '$GERRIT_REFSPEC' | |
247 | basedir: src/librseq | |
248 | skip-tag: true | |
249 | ||
250 | triggers: | |
251 | - gerrit: | |
252 | trigger-on: | |
253 | - comment-added-event: | |
254 | approval-category: 'CI-Build' | |
255 | approval-value: 1 | |
256 | projects: | |
257 | - project-compare-type: 'PLAIN' | |
258 | project-pattern: 'librseq' | |
259 | branches: | |
260 | - branch-compare-type: 'ANT' | |
261 | branch-pattern: '**' | |
262 | ||
263 | <<: *librseq_build_axes_defaults | |
264 | <<: *librseq_build_builders_defaults | |
265 | <<: *librseq_build_publishers_gerrit | |
266 | ||
267 | properties: | |
268 | - inject: | |
269 | properties-content: | | |
270 | PROJECT_NAME=librseq | |
271 | - build-discarder: | |
272 | days-to-keep: 1 | |
273 | - throttle: | |
274 | option: 'category' | |
275 | categories: | |
276 | - 'gerrit-{buildtype}' | |
277 | ||
ae855ba1 MJ |
278 | - job-template: |
279 | name: librseq_{version}_scan-build | |
280 | defaults: librseq | |
281 | node: 'amd64' | |
282 | ||
283 | triggers: | |
284 | - pollscm: | |
285 | cron: "@daily" | |
286 | ||
287 | builders: | |
288 | - shell: | |
289 | !include-raw-escape: scripts/common/scan-build.sh | |
290 | ||
291 | publishers: | |
292 | - html-publisher: | |
293 | name: 'HTML Report' | |
294 | dir: 'scan-build-archive/' | |
295 | files: 'index.html' | |
296 | ||
297 | - job-template: | |
298 | name: librseq_{version}_coverity | |
299 | defaults: librseq | |
300 | node: 'amd64' | |
301 | ||
302 | triggers: | |
303 | - pollscm: | |
304 | cron: "@daily" | |
305 | ||
306 | wrappers: | |
307 | - ansicolor | |
308 | - timeout: | |
733146f2 | 309 | timeout: 10 |
ae855ba1 | 310 | fail: true |
733146f2 | 311 | type: no-activity |
ae855ba1 MJ |
312 | - timestamps |
313 | - workspace-cleanup: | |
314 | clean-if: | |
315 | - failure: false | |
316 | - credentials-binding: | |
317 | - username-password-separated: | |
318 | credential-id: librseq_coverity_token | |
319 | username: COVERITY_SCAN_PROJECT_NAME | |
320 | password: COVERITY_SCAN_TOKEN | |
321 | ||
322 | builders: | |
323 | - shell: | |
324 | !include-raw-escape: scripts/common/coverity.sh | |
325 | ||
326 | publishers: | |
327 | - workspace-cleanup | |
328 | - archive: | |
329 | artifacts: 'analysis-results.tgz,cov-int/**' | |
330 | allow-empty: false | |
331 | ||
332 | - view-template: | |
72600ad8 | 333 | name: 'Librseq' |
ae855ba1 MJ |
334 | description: 'Restartable sequences' |
335 | view-type: list | |
b4c748a8 | 336 | regex: 'librseq_.*' |
ae855ba1 MJ |
337 | |
338 | ||
339 | ## Project | |
340 | - project: | |
341 | name: librseq | |
342 | github_user: compudj | |
343 | github_name: librseq | |
344 | email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com' | |
345 | version: | |
346 | - master | |
347 | jobs: | |
348 | - 'librseq_{version}_{buildtype}': | |
349 | buildtype: build | |
9a07183c MJ |
350 | platforms: !!python/tuple [jammy-amd64] |
351 | builds: !!python/tuple [std, oot, dist, oot-dist] | |
352 | confs: !!python/tuple [std, static] | |
353 | touchstone: '(build == "std") && (conf == "std")' | |
ae855ba1 MJ |
354 | - 'librseq_{version}_{cctype}': |
355 | cctype: gccbuild | |
9a07183c MJ |
356 | platforms: !!python/tuple [jammy-amd64] |
357 | builds: !!python/tuple [std] | |
358 | confs: !!python/tuple [std, static] | |
359 | ccs: !!python/tuple [gcc-9, gcc-10, gcc-11, gcc-12] | |
360 | touchstone: '(build == "std") && (conf == "std") && (cc == "gcc-11")' | |
ae855ba1 MJ |
361 | - 'librseq_{version}_{cctype}': |
362 | cctype: clangbuild | |
9a07183c MJ |
363 | platforms: !!python/tuple [jammy-amd64] |
364 | builds: !!python/tuple [std] | |
365 | confs: !!python/tuple [std, static] | |
366 | ccs: !!python/tuple [clang-11, clang-12, clang-13, clang-14] | |
367 | touchstone: '(build == "std") && (conf == "std") && (cc == "clang-14")' | |
ae855ba1 MJ |
368 | - 'librseq_{version}_{buildtype}': |
369 | buildtype: portbuild | |
9a07183c MJ |
370 | platforms: !!python/tuple [deb11-armhf, deb11-arm64, sid-powerpc, deb11-ppc64el, deb11-i386] |
371 | builds: !!python/tuple [std] | |
372 | confs: !!python/tuple [std, static] | |
373 | touchstone: '(build == "std") && (conf == "std") && (platform == "deb11-i386")' | |
ae855ba1 | 374 | |
10c9bf80 MJ |
375 | - project: |
376 | name: gerrit-librseq | |
377 | github_user: compudj | |
378 | github_name: librseq | |
379 | jobs: | |
380 | - 'dev_gerrit_librseq_{buildtype}': | |
381 | buildtype: build | |
9a07183c MJ |
382 | platforms: !!python/tuple [jammy-amd64] |
383 | builds: !!python/tuple [std, oot, dist, oot-dist] | |
384 | confs: !!python/tuple [std, static] | |
385 | touchstone: '(build == "std") && (conf == "std")' | |
10c9bf80 | 386 | |
ae855ba1 MJ |
387 | - project: |
388 | name: librseq-views | |
389 | views: | |
72600ad8 | 390 | - Librseq |