Merge pull request #28 from PSRCode/yaml_publisher_anchor
[lttng-ci.git] / jobs / babeltrace.yaml
1 - defaults:
2 name: babeltrace
3 description: |
4 The Babeltrace project provides trace read and write libraries, as well
5 as a trace converter. Plugins can be created for any trace format to
6 allow its conversion to/from another trace format.
7
8 The main format expected to be converted to/from is the Common Trace
9 Format (CTF). The default input format of the "babeltrace" command is
10 CTF, and its default output format is a human-readable text log. The
11 "babeltrace-log" command converts from a text log to a CTF trace.
12
13 <p>Job is managed by Jenkins Job Builder.</p>
14
15 project-type: freestyle
16
17 wrappers:
18 - ansicolor
19 - timeout:
20 timeout: 90
21 fail: true
22 type: absolute
23 - timestamps
24 - workspace-cleanup:
25 clean-if:
26 - failure: false
27
28 scm:
29 - git:
30 url: git://github.com/{github_user}/{github_name}.git
31 browser: githubweb
32 browser-url: https://github.com/{github_user}/{github_name}
33 branches:
34 - origin/{version}
35 basedir: src/babeltrace
36 skip-tag: true
37 git-tool: jgit
38
39 triggers:
40 - pollscm:
41 cron: "@hourly"
42
43 properties:
44 - inject:
45 properties-content: |
46 PROJECT_NAME=babeltrace
47 - build-discarder:
48 num-to-keep: 2
49 - github:
50 url: https://github.com/{github_user}/{github_name}
51
52
53 ## Anchors
54 - babeltrace_build_axes_defaults: &babeltrace_build_axes_defaults
55 name: 'babeltrace_build_axes_defaults'
56 project-type: matrix
57 node: 'master' # Applies only to matrix flyweight task
58 axes:
59 - axis:
60 type: slave
61 name: arch
62 values: '{obj:arch}'
63 - axis:
64 type: user-defined
65 name: conf
66 values: '{obj:conf}'
67 - axis:
68 type: user-defined
69 name: build
70 values: '{obj:build}'
71
72 - babeltrace_build_builders_defaults: &babeltrace_build_builders_defaults
73 name: 'babeltrace_build_builders_defaults'
74 builders:
75 - shell:
76 !include-raw-escape: scripts/babeltrace/build.sh
77
78 - babeltrace_build_builders_win: &babeltrace_build_builders_win
79 name: 'babeltrace_build_builders_win'
80 builders:
81 - conditional-step:
82 condition-kind: strings-match
83 on-evaluation-failure: run
84 condition-string1: '${{arch}}'
85 condition-string2: 'cygwin'
86 steps:
87 - shell:
88 !include-raw-escape:
89 - scripts/common/cygwin-shebang
90 - scripts/common/cygwin-prefix
91 - scripts/babeltrace/build.sh
92 - conditional-step:
93 condition-kind: strings-match
94 on-evaluation-failure: run
95 condition-string1: '${{arch}}'
96 condition-string2: 'cygwin64'
97 steps:
98 - shell:
99 !include-raw-escape:
100 - scripts/common/cygwin64-shebang
101 - scripts/common/cygwin-prefix
102 - scripts/babeltrace/build.sh
103 - conditional-step:
104 condition-kind: strings-match
105 on-evaluation-failure: run
106 condition-string1: '${{arch}}'
107 condition-string2: 'msys2-mingw32'
108 steps:
109 - inject:
110 properties-content: 'MSYSTEM=MINGW32'
111 - shell:
112 !include-raw-escape:
113 - scripts/common/msys2-shebang
114 - scripts/common/cygwin-prefix
115 - scripts/babeltrace/build.sh
116 - conditional-step:
117 condition-kind: strings-match
118 on-evaluation-failure: run
119 condition-string1: '${{arch}}'
120 condition-string2: 'msys2-mingw64'
121 steps:
122 - inject:
123 properties-content: 'MSYSTEM=MINGW64'
124 - shell:
125 !include-raw-escape:
126 - scripts/common/msys2-shebang
127 - scripts/common/cygwin-prefix
128 - scripts/babeltrace/build.sh
129
130
131 - babeltrace_build_publishers_defaults: &babeltrace_build_publishers_defaults
132 name: 'babeltrace_build_publishers_defaults'
133 publishers:
134 - tap:
135 results: 'tap/**/*.log'
136 failed-tests-mark-build-as-failure: true
137 todo-is-failure: false
138 - warnings:
139 console-log-parsers:
140 - 'GNU Make + GNU C Compiler (gcc)'
141 total-thresholds:
142 unstable:
143 total-all: 0
144 total-high: 0
145 total-normal: 0
146 total-low: 0
147
148 - babeltrace_build_publishers_prod: &babeltrace_build_publishers_prod
149 name: 'babeltrace_build_publishers_prod'
150 publishers:
151 - tap:
152 results: 'tap/**/*.log'
153 failed-tests-mark-build-as-failure: true
154 todo-is-failure: false
155 - warnings:
156 console-log-parsers:
157 - 'GNU Make + GNU C Compiler (gcc)'
158 total-thresholds:
159 unstable:
160 total-all: 0
161 total-high: 0
162 total-normal: 0
163 total-low: 0
164 - archive:
165 artifacts: 'build/**'
166 allow-empty: false
167 - ircbot:
168 strategy: new-failure-and-fixed
169 matrix-notifier: only-parent
170 channels:
171 - name: '#lttng'
172
173 ## Templates
174
175 - job-template:
176 name: babeltrace_{version}_{buildtype}
177 defaults: babeltrace
178
179 <<: *babeltrace_build_axes_defaults
180 <<: *babeltrace_build_builders_defaults
181 <<: *babeltrace_build_publishers_prod
182
183 - job-template:
184 name: babeltrace_{version}_winbuild
185 defaults: babeltrace
186
187 <<: *babeltrace_build_axes_defaults
188 <<: *babeltrace_build_builders_win
189 <<: *babeltrace_build_publishers_prod
190
191 - job-template:
192 name: dev_{user}_babeltrace_{version}_{buildtype}
193 defaults: babeltrace
194
195 <<: *babeltrace_build_axes_defaults
196 <<: *babeltrace_build_builders_defaults
197 <<: *babeltrace_build_publishers_defaults
198
199 - job-template:
200 name: babeltrace_{version}_cppcheck
201 defaults: babeltrace
202
203 triggers:
204 - pollscm:
205 cron: "@daily"
206
207 builders:
208 - shell: |
209 rm -f babeltrace-cppcheck.xml
210 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/babeltrace 2> babeltrace-cppcheck.xml
211
212 publishers:
213 - archive:
214 artifacts: 'babeltrace-cppcheck.xml'
215 allow-empty: false
216 - cppcheck:
217 pattern: 'babeltrace-cppcheck.xml'
218
219 - job-template:
220 name: babeltrace_{version}_scan-build
221 defaults: babeltrace
222 node: 'x86-64'
223
224 triggers:
225 - pollscm:
226 cron: "@daily"
227
228 builders:
229 - shell:
230 !include-raw-escape: scripts/common/scan-build.sh
231
232 publishers:
233 - html-publisher:
234 name: 'HTML Report'
235 dir: 'scan-build-archive/'
236 files: 'index.html'
237
238 - job-template:
239 name: babeltrace_{version}_coverity
240 defaults: babeltrace
241 node: 'x86-64'
242
243 triggers:
244 - pollscm:
245 cron: "@daily"
246
247 wrappers:
248 - workspace-cleanup
249 - timestamps
250 - ansicolor:
251 colormap: xterm
252 - credentials-binding:
253 - username-password-separated:
254 credential-id: babeltrace_coverity_token
255 username: COVERITY_SCAN_PROJECT_NAME
256 password: COVERITY_SCAN_TOKEN
257 builders:
258 - shell:
259 !include-raw-escape: scripts/common/coverity.sh
260
261 publishers:
262 - workspace-cleanup
263 - archive:
264 artifacts: 'analysis-results.tgz,cov-int/**'
265 allow-empty: false
266
267 - job-template:
268 name: babeltrace_{version}_pylint
269 defaults: babeltrace
270 node: 'x86-64'
271
272 scm: []
273
274 triggers:
275 - pollscm:
276 cron: "@daily"
277
278 builders:
279 - copyartifact:
280 project: babeltrace_{version}_build/arch=x86-64,build=std,conf=python-bindings
281 which-build: last-successful
282 stable: false
283 filter: 'build/**'
284 target: 'deps/babeltrace'
285 - shell:
286 !include-raw-escape: scripts/babeltrace/pylint.sh
287
288 publishers:
289 - archive:
290 artifacts: 'pep8.out,pylint.out'
291 - violations:
292 pep8:
293 pattern: pep8.out
294 min: 10
295 max: 999
296 unstable: 999
297 pylint:
298 pattern: pylint.out
299 min: 10
300 max: 999
301 unstable: 999
302 - email:
303 recipients: 'ci-notification@lists.lttng.org'
304 notify-every-unstable-build: true
305 send-to-individuals: false
306
307 # Use - in version number since yaml anchor do not support dot
308 - babeltrace_version_glib-2-22-5_anchor: &babeltrace_version_glib-2-22-5_anchor
309 name: 'babeltrace_version_glib_anchor'
310 defaults: babeltrace
311 node: 'x86-64'
312
313 builders:
314 - inject:
315 properties-content: |
316 LD_LIBRARY_PATH=$WORKSPACE/glib-2.22.5/BUILD_RESULT/lib
317 PKG_CONFIG_PATH=$WORKSPACE/glib-2.22.5/BUILD_RESULT/lib/pkgconfig
318 arch=x86-64
319 conf=std
320 build=std
321 - shell: |
322 wget http://ftp.gnome.org/pub/gnome/sources/glib/2.22/glib-2.22.5.tar.gz
323 tar xvf glib-2.22.5.tar.gz
324 cd glib-2.22.5
325 mkdir BUILD_RESULT
326 ./configure --prefix=$WORKSPACE/glib-2.22.5/BUILD_RESULT
327 make -j `nproc`
328 make install
329
330 - shell:
331 !include-raw-escape: scripts/babeltrace/build.sh
332
333 - job-template:
334 name: babeltrace_{version}_glib-2.22.5
335 triggers:
336 - pollscm:
337 cron: "@daily"
338 <<: *babeltrace_version_glib-2-22-5_anchor
339
340 - job-template:
341 name: dev_{user}_babeltrace_{version}_glib-2.22.5
342 <<: *babeltrace_version_glib-2-22-5_anchor
343
344
345 ## Project
346 - project:
347 name: babeltrace
348 github_user: efficios
349 github_name: babeltrace
350 version:
351 - stable-1.3
352 - stable-1.4
353 - stable-1.5
354 - stable-2.0
355 - master
356 jobs:
357 - 'babeltrace_{version}_{buildtype}':
358 buildtype: build
359 arch: !!python/tuple [x86-32, x86-64]
360 build: !!python/tuple [std, oot, dist]
361 conf: !!python/tuple [std, static, python-bindings]
362 - 'babeltrace_{version}_{buildtype}':
363 buildtype: clangbuild
364 arch: !!python/tuple [x86-32, x86-64]
365 build: !!python/tuple [clang]
366 conf: !!python/tuple [std, static]
367 - 'babeltrace_{version}_{buildtype}':
368 buildtype: portbuild
369 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el]
370 build: !!python/tuple [std]
371 conf: !!python/tuple [std, static, python-bindings]
372 - 'babeltrace_{version}_{buildtype}':
373 buildtype: slesbuild
374 arch: !!python/tuple [sles12sp2]
375 build: !!python/tuple [std]
376 conf: !!python/tuple [std]
377 - 'babeltrace_{version}_{buildtype}':
378 buildtype: solarisbuild
379 arch: !!python/tuple [sol10-i386, sol11-i386]
380 build: !!python/tuple [std]
381 conf: !!python/tuple [std, static]
382 - 'babeltrace_{version}_{buildtype}':
383 buildtype: macosxbuild
384 arch: !!python/tuple [macosx]
385 build: !!python/tuple [std]
386 conf: !!python/tuple [std]
387 version: # macOS support was introduced in 1.4
388 - stable-1.4
389 - stable-1.5
390 - stable-2.0
391 - master
392 - 'babeltrace_{version}_winbuild':
393 arch: !!python/tuple [cygwin, cygwin64, msys2-mingw32, msys2-mingw64]
394 build: !!python/tuple [std]
395 conf: !!python/tuple [std]
396 version: # Mingw support was introduced in 2.0
397 - stable-2.0
398 - master
399 - 'babeltrace_{version}_winbuild':
400 arch: !!python/tuple [cygwin, cygwin64]
401 build: !!python/tuple [std]
402 conf: !!python/tuple [std]
403 version: # Cygwin support was introduced in 1.5
404 - stable-1.5
405 - 'babeltrace_{version}_cppcheck'
406 - 'babeltrace_{version}_scan-build'
407 - 'babeltrace_{version}_pylint'
408 - 'babeltrace_{version}_coverity':
409 version: master
410 - 'babeltrace_{version}_glib-2.22.5':
411 version: master
412
413
414 - project:
415 name: babeltrace-jgalar-staging
416 user: jgalar
417 github_user: jgalar
418 github_name: babeltrace
419 version:
420 - stable-1.3-staging
421 - stable-1.4-staging
422 - stable-1.5-staging
423 - stable-2.0-staging
424 - master-staging
425 jobs:
426 - 'dev_{user}_babeltrace_{version}_glib-2.22.5':
427 version:
428 - master-staging
429 - 'dev_{user}_babeltrace_{version}_{buildtype}':
430 buildtype: build
431 arch: !!python/tuple [x86-32, x86-64]
432 build: !!python/tuple [std, oot, dist]
433 conf: !!python/tuple [std, static, python-bindings]
434 - 'dev_{user}_babeltrace_{version}_{buildtype}':
435 buildtype: macosxbuild
436 version: # macOS support was introduced in 1.4
437 - stable-1.4-staging
438 - stable-1.5-staging
439 - stable-2.0-staging
440 - master-staging
441 arch: !!python/tuple [macosx]
442 build: !!python/tuple [std]
443 conf: !!python/tuple [std]
444
This page took 0.039996 seconds and 5 git commands to generate.