Add upstream project triggers based on ust for tools
[lttng-ci.git] / jobs / lttng-tools.yaml
1 - defaults:
2 name: lttng-tools
3 description: |
4 The lttng-tools project provides a session daemon (lttng-sessiond)
5 that acts as a tracing registry, the "lttng" command line for tracing
6 control, a lttng-ctl library for tracing control and a lttng-relayd
7 for network streaming.
8
9 <p>Job is managed by Jenkins Job Builder.</p>
10
11 project-type: freestyle
12
13 logrotate:
14 daysToKeep: -1
15 numToKeep: 2
16 artifactDaysToKeep: -1
17 artifactNumToKeep: -1
18
19 wrappers:
20 - workspace-cleanup
21 - timestamps
22 - ansicolor
23
24 scm:
25 - git:
26 url: git://github.com/{github_user}/{github_name}.git
27 browser: githubweb
28 browser-url: https://github.com/{github_user}/{github_name}
29 branches:
30 - origin/{version}
31
32 triggers:
33 - pollscm:
34 cron: "@hourly"
35
36 properties:
37 - github:
38 url: https://github.com/{github_user}/{github_name}
39
40
41 ## Templates
42 - job-template:
43 name: lttng-tools_{version}_{buildtype}
44 defaults: lttng-tools
45
46 project-type: matrix
47 node: 'master' # Applies only to matrix flyweight task
48 execution-strategy:
49 combination-filter: |
50 (build=="std") || (liburcu_version=="master")
51 axes:
52 - axis:
53 type: slave
54 name: arch
55 values: '{obj:arch}'
56 - axis:
57 type: user-defined
58 name: conf
59 values: '{obj:conf}'
60 - axis:
61 type: user-defined
62 name: liburcu_version
63 values: '{obj:urcuversion}'
64 - axis:
65 type: user-defined
66 name: babeltrace_version
67 values: '{obj:babelversion}'
68 - axis:
69 type: user-defined
70 name: build
71 values: '{obj:build}'
72
73 properties:
74 - throttle:
75 max-per-node: 1
76 option: 'category'
77 categories:
78 - 'lttng-tools'
79 matrix-builds: false
80 matrix-configs: true
81 triggers:
82 - timed: '@hourly'
83 - reverse:
84 jobs: 'lttng-ust_{version}_{buildtype}'
85 result: 'success'
86
87 builders:
88 - conditional-step:
89 condition-kind: regex-match
90 label: '$conf'
91 regex: (std|static)
92 on-evaluation-failure: run
93 steps:
94 - copyartifact:
95 project: liburcu_${{liburcu_version}}_{buildtype}/arch=${{arch}},conf=${{conf}},build=std
96 which-build: last-successful
97 stable: true
98 filter: 'build/**'
99 target: 'deps/liburcu'
100 do-not-fingerprint: true
101 - copyartifact:
102 project: babeltrace_${{babeltrace_version}}_{buildtype}/arch=${{arch}},conf=${{conf}},build=std
103 which-build: last-successful
104 stable: true
105 filter: 'build/**'
106 target: 'deps/babeltrace'
107 do-not-fingerprint: true
108 - copyartifact:
109 project: lttng-ust_{version}_{buildtype}/liburcu_version=${{liburcu_version}},arch=${{arch}},conf=${{conf}},build=std
110 which-build: last-successful
111 stable: true
112 filter: 'build/**'
113 target: 'deps/lttng-ust'
114 do-not-fingerprint: true
115 - conditional-step:
116 condition-kind: regex-match
117 label: '$conf'
118 regex: (python-bindings|no-ust)
119 on-evaluation-failure: run
120 steps:
121 - copyartifact:
122 project: liburcu_${{liburcu_version}}_{buildtype}/arch=${{arch}},conf=std,build=std
123 which-build: last-successful
124 stable: true
125 filter: 'build/**'
126 target: 'deps/liburcu'
127 do-not-fingerprint: true
128 - copyartifact:
129 project: babeltrace_${{babeltrace_version}}_{buildtype}/arch=${{arch}},conf=std,build=std
130 which-build: last-successful
131 stable: true
132 filter: 'build/**'
133 target: 'deps/babeltrace'
134 do-not-fingerprint: true
135 - copyartifact:
136 project: lttng-ust_{version}_{buildtype}/liburcu_version=${{liburcu_version}},arch=${{arch}},conf=std,build=std
137 which-build: last-successful
138 stable: true
139 filter: 'build/**'
140 target: 'deps/lttng-ust'
141 do-not-fingerprint: true
142 - conditional-step:
143 condition-kind: regex-match
144 label: '$conf'
145 regex: (java-agent|python-agent)
146 on-evaluation-failure: run
147 steps:
148 - copyartifact:
149 project: liburcu_${{liburcu_version}}_{buildtype}/arch=${{arch}},conf=std,build=std
150 which-build: last-successful
151 stable: true
152 filter: 'build/**'
153 target: 'deps/liburcu'
154 do-not-fingerprint: true
155 - copyartifact:
156 project: babeltrace_${{babeltrace_version}}_{buildtype}/arch=${{arch}},conf=std,build=std
157 which-build: last-successful
158 stable: true
159 filter: 'build/**'
160 target: 'deps/babeltrace'
161 do-not-fingerprint: true
162 - copyartifact:
163 project: lttng-ust_{version}_{buildtype}/liburcu_version=${{liburcu_version}},arch=${{arch}},conf=${{conf}},build=std
164 which-build: last-successful
165 stable: true
166 filter: 'build/**'
167 target: 'deps/lttng-ust'
168 do-not-fingerprint: true
169 - shell:
170 !include-raw-escape: scripts/lttng-tools/build.sh
171
172 # TODO: Scan for open tasks
173 publishers:
174 - tap:
175 results: 'tap/**/*.tap'
176 failed-tests-mark-build-as-failure: true
177 todo-is-failure: false
178 - warnings:
179 console-log-parsers:
180 - 'GNU Make + GNU C Compiler (gcc)'
181 total-thresholds:
182 unstable:
183 total-all: 1
184 total-high: 1
185 total-normal: 1
186 total-low: 1
187 - archive:
188 artifacts: 'build/**'
189 allow-empty: false
190 - workspace-cleanup
191 - ircbot:
192 strategy: new-failure-and-fixed
193 matrix-notifier: only-parent
194 channels:
195 - name: '#lttng'
196
197
198 - job-template:
199 name: lttng-tools_{version}_cppcheck
200 defaults: lttng-tools
201
202 triggers:
203 - pollscm:
204 cron: "@daily"
205
206 builders:
207 - shell: |
208 rm -f lttng-tools-cppcheck.xml
209 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE 2> lttng-tools-cppcheck.xml
210
211 publishers:
212 - archive:
213 artifacts: 'lttng-tools-cppcheck.xml'
214 allow-empty: false
215 - cppcheck:
216 pattern: 'lttng-tools-cppcheck.xml'
217 - email:
218 recipients: 'ci-notification@lists.lttng.org'
219 notify-every-unstable-build: true
220 send-to-individuals: false
221
222 - job-template:
223 name: lttng-tools_{version}_scan-build
224 defaults: lttng-tools
225 node: 'x86-64'
226
227 triggers:
228 - pollscm:
229 cron: "@daily"
230
231 builders:
232 - copyartifact:
233 project: liburcu_{urcuversion}_build/arch=x86-64,conf=std,build=std
234 which-build: last-successful
235 stable: true
236 filter: 'build/**'
237 target: 'deps/liburcu'
238 do-not-fingerprint: true
239 - copyartifact:
240 project: lttng-ust_{version}_build/liburcu_version={urcuversion},arch=x86-64,conf=std,build=std
241 which-build: last-successful
242 stable: true
243 filter: 'build/**'
244 target: 'deps/lttng-ust'
245 do-not-fingerprint: true
246 - shell:
247 !include-raw-escape: scripts/lttng-tools/scan-build.sh
248
249 publishers:
250 - html-publisher:
251 name: 'HTML Report'
252 dir: 'scan-build-archive/'
253 files: 'index.html'
254
255 - job-template:
256 name: lttng-tools_{version}_coverity
257 defaults: lttng-tools
258 node: 'x86-64'
259
260 triggers:
261 - pollscm:
262 cron: "@daily"
263
264 wrappers:
265 - workspace-cleanup
266 - timestamps
267 - ansicolor:
268 colormap: xterm
269 - credentials-binding:
270 - username-password-separated:
271 credential-id: lttng-tools_coverity_token
272 username: COVERITY_SCAN_PROJECT_NAME
273 password: COVERITY_SCAN_TOKEN
274
275 builders:
276 - copyartifact:
277 project: liburcu_master_build/arch=x86-64,conf=std,build=std
278 which-build: last-successful
279 stable: true
280 filter: 'build/**'
281 target: 'deps/liburcu'
282 do-not-fingerprint: true
283 - copyartifact:
284 project: lttng-ust_{version}_build/liburcu_version={version},arch=x86-64,conf=std,build=std
285 which-build: last-successful
286 stable: true
287 filter: 'build/**'
288 target: 'deps/lttng-ust'
289 do-not-fingerprint: true
290 - shell:
291 !include-raw-escape: scripts/common/coverity.sh
292
293 publishers:
294 - workspace-cleanup
295
296 # TODO
297 - job-template:
298 name: lttng-tools_{version}_pylint
299 defaults: lttng-tools
300 node: 'x86-64'
301
302 scm: []
303
304 triggers:
305 - pollscm:
306 cron: "@daily"
307
308 builders:
309 - copyartifact:
310 project: lttng-tools-{version}/arch=x86-64,build=std,conf=python-agent
311 which-build: last-successful
312 stable: true
313 filter: 'build/**'
314 target: 'deps/lttng-tools'
315 do-not-fingerprint: true
316 - shell:
317 !include-raw-escape: scripts/lttng-tools/pylint.sh
318
319 publishers:
320 - archive:
321 artifacts: 'pep8.out,pylint.out'
322 - violations:
323 pep8:
324 pattern: pep8.out
325 min: 10
326 max: 999
327 unstable: 999
328 pylint:
329 pattern: pylint.out
330 min: 10
331 max: 999
332 unstable: 999
333 - email:
334 recipients: 'ci-notification@lists.lttng.org'
335 notify-every-unstable-build: true
336 send-to-individuals: false
337
338
339 ## Project
340 - project:
341 name: lttng-tools
342 github_user: lttng
343 github_name: lttng-tools
344 version:
345 !include: jobs/inc/lttng-tools-versions.yaml.inc
346 jobs:
347 - 'lttng-tools_{version}_{buildtype}':
348 buildtype: build
349 version: master
350 arch: !!python/tuple [x86-32, x86-64]
351 build: !!python/tuple [std, oot, dist]
352 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
353 urcuversion: !!python/tuple [master]
354 babelversion: !!python/tuple [master]
355 - 'lttng-tools_{version}_{buildtype}':
356 buildtype: portbuild
357 version: master
358 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el]
359 build: !!python/tuple [std]
360 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
361 urcuversion: !!python/tuple [master]
362 babelversion: !!python/tuple [master]
363 - 'lttng-tools_{version}_{buildtype}':
364 buildtype: build
365 version: stable-2.7
366 arch: !!python/tuple [x86-32, x86-64]
367 build: !!python/tuple [std, oot, dist]
368 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
369 urcuversion: !!python/tuple [stable-0.9]
370 babelversion: !!python/tuple [stable-1.3]
371 - 'lttng-tools_{version}_{buildtype}':
372 buildtype: portbuild
373 version: stable-2.7
374 arch: !!python/tuple [armhf, arm64, powerpc]
375 build: !!python/tuple [std]
376 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
377 urcuversion: !!python/tuple [stable-0.9]
378 babelversion: !!python/tuple [stable-1.3]
379 - 'lttng-tools_{version}_{buildtype}':
380 buildtype: build
381 version: stable-2.6
382 arch: !!python/tuple [x86-32, x86-64]
383 build: !!python/tuple [std, oot, dist]
384 conf: !!python/tuple [std, no-ust, python-bindings]
385 urcuversion: !!python/tuple [stable-0.9]
386 babelversion: !!python/tuple [stable-1.3]
387 - 'lttng-tools_{version}_{buildtype}':
388 buildtype: portbuild
389 version: stable-2.6
390 arch: !!python/tuple [armhf, arm64, powerpc]
391 build: !!python/tuple [std]
392 conf: !!python/tuple [std, no-ust, python-bindings]
393 urcuversion: !!python/tuple [stable-0.9]
394 babelversion: !!python/tuple [stable-1.3]
395 - 'lttng-tools_{version}_cppcheck'
396 - 'lttng-tools_{version}_scan-build':
397 version: master
398 urcuversion: master
399 - 'lttng-tools_{version}_scan-build':
400 version: stable-2.7
401 urcuversion: stable-0.9
402 - 'lttng-tools_{version}_scan-build':
403 version: stable-2.6
404 urcuversion: stable-0.9
405 #- 'lttng-tools_{version}_pylint'
406 - 'lttng-tools_{version}_coverity':
407 version: master
408
This page took 0.070269 seconds and 5 git commands to generate.