jjb: Standardize build scripts
[lttng-ci.git] / jobs / lttng-ust.yaml
1 - defaults:
2 name: lttng-ust
3 description: |
4 LTTng-UST, the Linux Trace Toolkit Next Generation Userspace Tracer, is a
5 port of the low-overhead tracing capabilities of the LTTng kernel tracer
6 to user-space. The library "liblttng-ust" enables tracing of
7 applications and libraries.
8
9 <p>Job is managed by Jenkins Job Builder.</p>
10
11 project-type: freestyle
12
13 wrappers:
14 - workspace-cleanup
15 - timestamps
16 - ansicolor
17
18 scm:
19 - git:
20 url: git://github.com/{github_user}/{github_name}.git
21 browser: githubweb
22 browser-url: https://github.com/{github_user}/{github_name}
23 branches:
24 - origin/{version}
25 basedir: src/lttng-ust
26 skip-tag: true
27
28 triggers:
29 - pollscm:
30 cron: "@hourly"
31
32 properties:
33 - inject:
34 properties-content: |
35 PROJECT_NAME=lttng-ust
36 - build-discarder:
37 num-to-keep: 2
38 - github:
39 url: https://github.com/{github_user}/{github_name}
40
41
42 ## Templates
43 - job-template:
44 name: lttng-ust_{version}_{buildtype}
45 defaults: lttng-ust
46
47 project-type: matrix
48 node: 'master' # Applies only to matrix flyweight task
49 execution-strategy:
50 combination-filter: |
51 (build=="std") || (liburcu_version=="master")
52 axes:
53 - axis:
54 type: slave
55 name: arch
56 values: '{obj:arch}'
57 - axis:
58 type: user-defined
59 name: conf
60 values: '{obj:conf}'
61 - axis:
62 type: user-defined
63 name: liburcu_version
64 values: '{obj:liburcu_version}'
65 - axis:
66 type: user-defined
67 name: build
68 values: '{obj:build}'
69
70 builders:
71 - conditional-step:
72 condition-kind: regex-match
73 label: '$conf'
74 regex: (std|agents)
75 on-evaluation-failure: run
76 steps:
77 - copyartifact:
78 project: liburcu_${{liburcu_version}}_{buildtype}/arch=$arch,conf=std,build=std
79 which-build: last-successful
80 stable: false
81 filter: 'build/**'
82 target: 'deps'
83 do-not-fingerprint: true
84
85 - conditional-step:
86 condition-kind: regex-match
87 label: '$conf'
88 regex: (debug-rcu)
89 on-evaluation-failure: run
90 steps:
91 - copyartifact:
92 project: liburcu_${{liburcu_version}}_{buildtype}/arch=$arch,conf=debug-rcu,build=std
93 which-build: last-successful
94 stable: false
95 filter: 'build/**'
96 target: 'deps'
97 do-not-fingerprint: true
98 - shell:
99 !include-raw-escape: scripts/lttng-ust/build.sh
100
101 # TODO: Scan for open tasks
102 publishers:
103 - tap:
104 results: 'tap/**/*.log'
105 fail-if-no-results: true
106 failed-tests-mark-build-as-failure: true
107 todo-is-failure: false
108 - warnings:
109 console-log-parsers:
110 - 'GNU Make + GNU C Compiler (gcc)'
111 total-thresholds:
112 unstable:
113 total-all: 0
114 total-high: 0
115 total-normal: 0
116 total-low: 0
117 - archive:
118 artifacts: 'build/**,tap/**'
119 allow-empty: false
120 - workspace-cleanup
121 - email-ext:
122 recipients: '{obj:email_to}'
123 reply-to: ci-notification@lists.lttng.org
124 always: false
125 unstable: false
126 first-failure: true
127 first-unstable: true
128 not-built: false
129 aborted: false
130 regression: false
131 failure: false
132 second-failure: false
133 improvement: false
134 still-failing: false
135 success: false
136 fixed: false
137 fixed-unhealthy: true
138 still-unstable: false
139 pre-build: false
140 matrix-trigger: only-parent
141 send-to:
142 - recipients
143
144 - job-template:
145 name: lttng-ust_{version}_cppcheck
146 defaults: lttng-ust
147
148 triggers:
149 - pollscm:
150 cron: "@daily"
151
152 builders:
153 - shell: |
154 rm -f cppcheck-result.xml
155 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/lttng-ust 2> cppcheck-result.xml
156
157 publishers:
158 - archive:
159 artifacts: 'cppcheck-result.xml'
160 allow-empty: false
161 - cppcheck:
162 pattern: 'cppcheck-result.xml'
163 - email:
164 recipients: 'ci-notification@lists.lttng.org'
165 notify-every-unstable-build: true
166 send-to-individuals: false
167
168 - job-template:
169 name: lttng-ust_{version}_scan-build
170 defaults: lttng-ust
171 node: 'amd64'
172
173 triggers:
174 - pollscm:
175 cron: "@daily"
176
177 builders:
178 - copyartifact:
179 project: liburcu_master_build/arch=amd64,conf=std,build=std
180 which-build: last-successful
181 stable: false
182 filter: 'build/**'
183 target: 'deps/liburcu'
184 do-not-fingerprint: true
185 - shell:
186 !include-raw-escape: scripts/common/scan-build.sh
187
188 publishers:
189 - html-publisher:
190 name: 'HTML Report'
191 dir: 'scan-build-archive/'
192 files: 'index.html'
193
194 - job-template:
195 name: lttng-ust_{version}_coverity
196 defaults: lttng-ust
197 node: 'amd64'
198
199 triggers:
200 - pollscm:
201 cron: "@daily"
202
203 wrappers:
204 - workspace-cleanup
205 - timestamps
206 - ansicolor:
207 colormap: xterm
208 - credentials-binding:
209 - username-password-separated:
210 credential-id: lttng-ust_coverity_token
211 username: COVERITY_SCAN_PROJECT_NAME
212 password: COVERITY_SCAN_TOKEN
213
214 builders:
215 - copyartifact:
216 project: liburcu_master_build/arch=amd64,conf=std,build=std
217 which-build: last-successful
218 stable: false
219 filter: 'build/**'
220 target: 'deps/liburcu'
221 do-not-fingerprint: true
222 - shell:
223 !include-raw-escape: scripts/common/coverity.sh
224
225 publishers:
226 - workspace-cleanup
227 - archive:
228 artifacts: 'analysis-results.tgz,cov-int/**'
229 allow-empty: false
230
231
232 ## Views
233 - view-template:
234 name: 'LTTng-ust'
235 view-type: list
236 regex: 'lttng-ust[-_].*'
237
238
239 ## Projects
240 - project:
241 name: lttng-ust
242 github_user: lttng
243 github_name: lttng-ust
244 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
245 version:
246 - stable-2.8
247 - stable-2.9
248 - stable-2.10
249 - stable-2.11
250 jobs:
251 - 'lttng-ust_{version}_{buildtype}':
252 buildtype: build
253 arch: !!python/tuple [amd64]
254 build: !!python/tuple [std, dist, oot, oot-dist]
255 conf: !!python/tuple [std, agents, debug-rcu]
256 liburcu_version: !!python/tuple [stable-0.8, stable-0.9, stable-0.10, stable-0.11, master]
257 - 'lttng-ust_{version}_{buildtype}':
258 buildtype: portbuild
259 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
260 build: !!python/tuple [std]
261 conf: !!python/tuple [std, agents]
262 liburcu_version: !!python/tuple [stable-0.8, stable-0.9, stable-0.10, stable-0.11, master]
263 - 'lttng-ust_{version}_{buildtype}':
264 buildtype: slesbuild
265 arch: !!python/tuple [sles12sp2]
266 build: !!python/tuple [std]
267 conf: !!python/tuple [std]
268 liburcu_version: !!python/tuple [stable-0.9, stable-0.10, stable-0.11, master]
269 - 'lttng-ust_{version}_cppcheck'
270 - 'lttng-ust_{version}_scan-build'
271 - 'lttng-ust_{version}_{buildtype}':
272 buildtype: build
273 version: master
274 arch: !!python/tuple [amd64]
275 build: !!python/tuple [std, dist, oot, oot-dist]
276 conf: !!python/tuple [std, agents, debug-rcu]
277 liburcu_version: !!python/tuple [stable-0.11, master]
278 - 'lttng-ust_{version}_{buildtype}':
279 buildtype: portbuild
280 version: master
281 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
282 build: !!python/tuple [std]
283 conf: !!python/tuple [std, agents]
284 liburcu_version: !!python/tuple [stable-0.11, master]
285 - 'lttng-ust_{version}_{buildtype}':
286 buildtype: slesbuild
287 version: master
288 arch: !!python/tuple [sles12sp2]
289 build: !!python/tuple [std]
290 conf: !!python/tuple [std]
291 liburcu_version: !!python/tuple [stable-0.11, master]
292 - 'lttng-ust_{version}_cppcheck':
293 version: master
294 - 'lttng-ust_{version}_scan-build':
295 version: master
296 - 'lttng-ust_{version}_coverity':
297 version: master
298
299 # stable-2.7
300 - 'lttng-ust_{version}_{buildtype}':
301 buildtype: slesbuild
302 version: stable-2.7
303 arch: !!python/tuple [sles12sp2]
304 build: !!python/tuple [std]
305 conf: !!python/tuple [std]
306 liburcu_version: !!python/tuple [stable-0.9]
307
308 - project:
309 name: lttng-ust-views
310 views:
311 - LTTng-ust
This page took 0.036686 seconds and 5 git commands to generate.