9ee52d84bd5912f7eb00bebc727631fe718dcf15
[lttng-ci.git] / jobs / lttng-tools.yaml
1 - defaults:
2 name: lttng-tools
3 description: |
4
5 <p>Job is managed by Jenkins Job Builder.</p>
6
7 project-type: freestyle
8
9 logrotate:
10 daysToKeep: -1
11 numToKeep: 2
12 artifactDaysToKeep: -1
13 artifactNumToKeep: -1
14
15 wrappers:
16 - workspace-cleanup
17 - timestamps
18 - ansicolor
19
20 scm:
21 - git:
22 url: git://github.com/lttng/lttng-tools.git
23 browser: githubweb
24 browser-url: https://github.com/lttng/lttng-tools
25 branches:
26 - origin/{version}
27
28 triggers:
29 - pollscm:
30 cron: "@hourly"
31
32 properties:
33 - github:
34 url: https://github.com/lttng/lttng-tools
35
36
37 ## Templates
38 - job-template:
39 name: lttng-tools_{version}_{buildtype}
40 defaults: lttng-tools
41
42 project-type: matrix
43 node: 'x86-32 || x86-64' # Applies only to matrix flyweight task
44 execution-strategy:
45 combination-filter: |
46 (build=="std") || (liburcu_version=="master")
47 axes:
48 - axis:
49 type: slave
50 name: arch
51 values: '{obj:arch}'
52 - axis:
53 type: user-defined
54 name: conf
55 values:
56 - std
57 - no_ust
58 - python_bindings
59 - java_agents
60 - axis:
61 type: user-defined
62 name: babeltrace_version
63 values:
64 !include jobs/inc/babeltrace-versions.yaml.inc
65 - axis:
66 type: user-defined
67 name: liburcu_version
68 values:
69 !include jobs/inc/liburcu-versions.yaml.inc
70 - axis:
71 type: user-defined
72 name: lttng-ust_version
73 values:
74 - {version}
75 - axis:
76 type: user-defined
77 name: build
78 values: '{obj:build}'
79
80 builders:
81 - conditional-step:
82 condition-kind: strings-match
83 condition-string1: $conf
84 condition-string2: static
85 on-evaluation-failure: run
86 - copyartifact:
87 project: liburcu_${{liburcu_version}}_{buildtype}/arch=$arch,conf=std,build=std
88 which-build: last-successful
89 stable: true
90 filter: 'build/**'
91 target: 'deps/liburcu'
92 do-not-fingerprint: true
93 - copyartifact:
94 project: babeltrace_${{babeltrace_version}}_{buildtype}/arch=$arch,conf=std,build=std
95 which-build: last-successful
96 stable: true
97 filter: 'build/**'
98 target: 'deps/liburcu'
99 do-not-fingerprint: true
100 - copyartifact:
101 project: lttng-ust_${{lttng-ust_version}}_{buildtype}/arch=$arch,conf=std,build=std
102 which-build: last-successful
103 stable: true
104 filter: 'build/**'
105 target: 'deps/liburcu'
106 do-not-fingerprint: true
107 - shell:
108 !include-raw-escape scripts/lttng-tools/build.sh
109
110 # TODO: Scan for open tasks
111 publishers:
112 - tap:
113 results: 'tap/**/*.tap'
114 failed-tests-mark-build-as-failure: true
115 - warnings:
116 console-log-parsers:
117 - 'GNU Make + GNU C Compiler (gcc)'
118 #total-thresholds:
119 # failed:
120 # total-all: 0
121 # total-high: 0
122 # total-normal: 0
123 # total-low: 0
124 - archive:
125 artifacts: 'build/**'
126 allow-empty: false
127 - workspace-cleanup
128
129
130 - job-template:
131 name: lttng-tools_{version}_cppcheck
132 defaults: lttng-tools
133
134 triggers:
135 - pollscm:
136 cron: "@daily"
137
138 builders:
139 - shell: |
140 rm -f lttng-tools-cppcheck.xml
141 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE 2> lttng-tools-cppcheck.xml
142
143 publishers:
144 - archive:
145 artifacts: 'lttng-tools-cppcheck.xml'
146 allow-empty: false
147 - cppcheck:
148 pattern: 'lttng-tools-cppcheck.xml'
149 - email:
150 recipients: 'ci-notification@lists.lttng.org'
151 notify-every-unstable-build: true
152 send-to-individuals: false
153
154 - job-template:
155 name: lttng-tools_{version}_scan-build
156 defaults: lttng-tools
157 node: 'x86-64'
158
159 triggers:
160 - pollscm:
161 cron: "@daily"
162
163 builders:
164 - shell:
165 !include-raw-escape scripts/lttng-tools/scan-build.sh
166
167 publishers:
168 - html-publisher:
169 name: 'HTML Report'
170 dir: 'scan-build-archive/'
171 files: 'index.html'
172
173 # TODO: lttng-tools_{version}_coverity
174 #- job-template:
175 # name: lttng-tools_{version}_coverity
176 # defaults: lttng-tools
177 # node: 'x86-64'
178 #
179 # triggers:
180 # - pollscm:
181 # cron: "@daily"
182 #
183 # builders:
184 # - shell:
185 # !include-raw-escape scripts/lttng-tools/coverity.sh
186 #
187 # publishers:
188 # - html-publisher:
189 # name: 'HTML Report'
190 # dir: 'scan-build-archive/'
191 # files: 'index.html'
192
193 - job-template:
194 name: lttng-tools_{version}_pylint
195 defaults: lttng-tools
196 node: 'x86-64'
197
198 scm: []
199
200 triggers:
201 - pollscm:
202 cron: "@daily"
203
204 builders:
205 - copyartifact:
206 project: lttng-tools-{version}/arch=x86-64,build=std,conf=python-agent
207 which-build: last-successful
208 stable: true
209 filter: 'build/**'
210 target: 'deps/lttng-tools'
211 do-not-fingerprint: true
212 - shell:
213 !include-raw-escape scripts/lttng-tools/pylint.sh
214
215 publishers:
216 - archive:
217 artifacts: 'pep8.out,pylint.out'
218 - violations:
219 pep8:
220 pattern: pep8.out
221 min: 10
222 max: 999
223 unstable: 999
224 pylint:
225 pattern: pylint.out
226 min: 10
227 max: 999
228 unstable: 999
229 - email:
230 recipients: 'ci-notification@lists.lttng.org'
231 notify-every-unstable-build: true
232 send-to-individuals: false
233
234
235 ## Project
236 - project:
237 name: lttng-tools
238 version:
239 !include jobs/inc/lttng-tools-versions.yaml.inc
240 jobs:
241 - 'lttng-tools_{version}_{buildtype}':
242 buildtype: build
243 arch: !!python/tuple [x86-32, x86-64]
244 build: !!python/tuple [std, oot, dist]
245 - 'lttng-tools_{version}_{buildtype}':
246 buildtype: portbuild
247 arch: !!python/tuple [armhf, powerpc]
248 build: !!python/tuple [std]
249 - 'lttng-tools_{version}_cppcheck'
250 - 'lttng-tools_{version}_scan-build'
251
This page took 0.035088 seconds and 4 git commands to generate.