385b6626ce673621dd1fbf8ba8d2cad276722705
[lttng-ci.git] / jobs / librseq.yaml
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: &librseq_wrapper_ansicolor_defaults
22 colormap: xterm
23 - timeout: &librseq_wrapper_timeout_defaults
24 timeout: 10
25 fail: true
26 type: no-activity
27 - timestamps
28 - workspace-cleanup
29
30 scm:
31 - git:
32 url: https://github.com/{github_user}/{github_name}.git
33 browser: githubweb
34 browser-url: https://github.com/{github_user}/{github_name}
35 branches:
36 - origin/{version}
37 basedir: src/librseq
38 skip-tag: true
39
40 triggers:
41 - pollscm:
42 cron: "@hourly"
43
44 properties:
45 - inject:
46 properties-content: |
47 PROJECT_NAME=librseq
48 - build-discarder:
49 num-to-keep: 10
50 artifact-num-to-keep: 2
51 - github:
52 url: https://github.com/{github_user}/{github_name}
53
54
55 ## Anchors
56 - librseq_matrix_axes_defaults: &librseq_matrix_axes_defaults
57 name: 'librseq_matrix_axes_defaults'
58 project-type: matrix
59 node: 'master' # Applies only to matrix flyweight task
60 execution-strategy:
61 touchstone:
62 expr: '{touchstone}'
63 result: unstable
64 axes:
65 - axis: &librseq_matrix_axis_platform
66 type: slave
67 name: platform
68 values: '{obj:platforms}'
69 - axis: &librseq_matrix_axis_conf
70 type: user-defined
71 name: conf
72 values: '{obj:confs}'
73 - axis: &librseq_matrix_axis_build
74 type: user-defined
75 name: build
76 values: '{obj:builds}'
77
78 - librseq_matrix_axes_cc: &librseq_matrix_axes_cc
79 name: 'librseq_matrix_axes_cc'
80 project-type: matrix
81 node: 'master' # Applies only to matrix flyweight task
82 execution-strategy:
83 touchstone:
84 expr: '{touchstone}'
85 result: unstable
86 axes:
87 - axis: *librseq_matrix_axis_platform
88 - axis: *librseq_matrix_axis_conf
89 - axis: *librseq_matrix_axis_build
90 - axis: &librseq_matrix_axis_cc
91 type: user-defined
92 name: cc
93 values: '{obj:ccs}'
94
95 - librseq_builders_defaults: &librseq_builders_defaults
96 name: 'librseq_builders_defaults'
97 builders:
98 - shell:
99 !include-raw-escape:
100 - scripts/common/print.sh
101 - scripts/librseq/build.sh
102
103 - librseq_publishers_defaults: &librseq_publishers_defaults
104 name: 'librseq_publishers_defaults'
105 publishers:
106 - tap: &librseq_publisher_tap_defaults
107 results: 'tap/**/*.log'
108 fail-if-no-results: true
109 failed-tests-mark-build-as-failure: true
110 todo-is-failure: false
111 - raw: &librseq_publisher_warnings-ng_defaults
112 xml: |
113 <io.jenkins.plugins.analysis.core.steps.IssuesRecorder plugin="warnings-ng">
114 <analysisTools>
115 <io.jenkins.plugins.analysis.warnings.Gcc4>
116 <id/>
117 <name/>
118 <jenkins plugin="plugin-util-api"/>
119 <pattern/>
120 <reportEncoding/>
121 <skipSymbolicLinks>false</skipSymbolicLinks>
122 </io.jenkins.plugins.analysis.warnings.Gcc4>
123 <io.jenkins.plugins.analysis.warnings.Clang>
124 <id/>
125 <name/>
126 <jenkins plugin="plugin-util-api"/>
127 <pattern/>
128 <reportEncoding/>
129 <skipSymbolicLinks>false</skipSymbolicLinks>
130 </io.jenkins.plugins.analysis.warnings.Clang>
131 </analysisTools>
132 <sourceCodeEncoding/>
133 <sourceDirectory/>
134 <sourceDirectories/>
135 <ignoreQualityGate>false</ignoreQualityGate>
136 <ignoreFailedBuilds>true</ignoreFailedBuilds>
137 <failOnError>false</failOnError>
138 <healthy>0</healthy>
139 <unhealthy>0</unhealthy>
140 <minimumSeverity plugin="analysis-model-api">
141 <name>LOW</name>
142 </minimumSeverity>
143 <filters/>
144 <isEnabledForFailure>true</isEnabledForFailure>
145 <isAggregatingResults>true</isAggregatingResults>
146 <isBlameDisabled>false</isBlameDisabled>
147 <skipPublishingChecks>true</skipPublishingChecks>
148 <publishAllIssues>false</publishAllIssues>
149 <qualityGates>
150 <io.jenkins.plugins.analysis.core.util.QualityGate>
151 <threshold>1</threshold>
152 <type>TOTAL</type>
153 <status>WARNING</status>
154 </io.jenkins.plugins.analysis.core.util.QualityGate>
155 </qualityGates>
156 <trendChartType>AGGREGATION_TOOLS</trendChartType>
157 <scm/>
158 </io.jenkins.plugins.analysis.core.steps.IssuesRecorder>
159 - archive: &librseq_publisher_archive_defaults
160 artifacts: 'build/**,tap/**'
161 allow-empty: false
162 - workspace-cleanup: &librseq_publisher_workspace-cleanup_defaults
163 clean-if:
164 - failure: false
165 - email-ext: &librseq_publisher_email-ext_defaults
166 recipients: '{obj:email_to}'
167 reply-to: ci-notification@lists.lttng.org
168 always: false
169 unstable: false
170 first-failure: true
171 first-unstable: true
172 not-built: false
173 aborted: false
174 regression: false
175 failure: false
176 second-failure: false
177 improvement: false
178 still-failing: false
179 success: false
180 fixed: false
181 fixed-unhealthy: true
182 still-unstable: false
183 pre-build: false
184 matrix-trigger: only-parent
185 send-to:
186 - recipients
187
188 - librseq_publishers_gerrit: &librseq_publishers_gerrit
189 name: 'librseq_publishers_gerrit'
190 publishers:
191 - tap: *librseq_publisher_tap_defaults
192 - raw: *librseq_publisher_warnings-ng_defaults
193 - archive: *librseq_publisher_archive_defaults
194 - workspace-cleanup: *librseq_publisher_workspace-cleanup_defaults
195
196
197 ## Templates
198 - job-template:
199 name: librseq_{version}_{buildtype}
200 defaults: librseq
201
202 <<: *librseq_matrix_axes_defaults
203 <<: *librseq_builders_defaults
204 <<: *librseq_publishers_defaults
205
206 - job-template:
207 name: librseq_{version}_{cctype}
208 defaults: librseq
209
210 <<: *librseq_matrix_axes_cc
211 <<: *librseq_builders_defaults
212 <<: *librseq_publishers_defaults
213
214 - job-template:
215 name: librseq_{version}_cppcheck
216 defaults: librseq
217
218 triggers:
219 - pollscm:
220 cron: "@daily"
221
222 builders:
223 - shell: |
224 rm -f cppcheck-result.xml
225 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/librseq 2> cppcheck-result.xml
226
227 publishers:
228 - archive:
229 artifacts: 'cppcheck-result.xml'
230 allow-empty: false
231 - cppcheck:
232 pattern: 'cppcheck-result.xml'
233 - workspace-cleanup: *librseq_publisher_workspace-cleanup_defaults
234 - email-ext: *librseq_publisher_email-ext_defaults
235
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_matrix_axes_defaults
264 <<: *librseq_builders_defaults
265 <<: *librseq_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
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 - workspace-cleanup: *librseq_publisher_workspace-cleanup_defaults
297
298 - job-template:
299 name: librseq_{version}_coverity
300 defaults: librseq
301 node: 'amd64'
302
303 triggers:
304 - pollscm:
305 cron: "@daily"
306
307 wrappers:
308 - ansicolor: *librseq_wrapper_ansicolor_defaults
309 - timeout: *librseq_wrapper_timeout_defaults
310 - timestamps
311 - workspace-cleanup
312 - credentials-binding:
313 - username-password-separated:
314 credential-id: librseq_coverity_token
315 username: COVERITY_SCAN_PROJECT_NAME
316 password: COVERITY_SCAN_TOKEN
317
318 builders:
319 - shell:
320 !include-raw-escape: scripts/common/coverity.sh
321
322 publishers:
323 - workspace-cleanup
324 - archive:
325 artifacts: 'analysis-results.tgz,cov-int/**'
326 allow-empty: false
327 - workspace-cleanup: *librseq_publisher_workspace-cleanup_defaults
328
329 - view-template:
330 name: 'Librseq'
331 description: 'Restartable sequences'
332 view-type: list
333 regex: 'librseq_.*'
334
335
336 ## Project
337 - project:
338 name: librseq
339 github_user: compudj
340 github_name: librseq
341 email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
342 version:
343 - master
344 jobs:
345 - 'librseq_{version}_{buildtype}':
346 buildtype: linuxbuild
347 platforms: !!python/tuple [jammy-amd64]
348 builds: !!python/tuple [std, oot, dist, oot-dist]
349 confs: !!python/tuple [std, static]
350 touchstone: '(build == "std") && (conf == "std")'
351 - 'librseq_{version}_{cctype}':
352 cctype: gccbuild
353 platforms: !!python/tuple [jammy-amd64]
354 builds: !!python/tuple [std]
355 confs: !!python/tuple [std, static]
356 ccs: !!python/tuple [gcc-9, gcc-10, gcc-11, gcc-12]
357 touchstone: '(build == "std") && (conf == "std") && (cc == "gcc-11")'
358 - 'librseq_{version}_{cctype}':
359 cctype: clangbuild
360 platforms: !!python/tuple [jammy-amd64]
361 builds: !!python/tuple [std]
362 confs: !!python/tuple [std, static]
363 ccs: !!python/tuple [clang-11, clang-12, clang-13, clang-14]
364 touchstone: '(build == "std") && (conf == "std") && (cc == "clang-14")'
365 - 'librseq_{version}_{buildtype}':
366 buildtype: portbuild
367 platforms: !!python/tuple [deb11-armhf, deb11-arm64, sid-powerpc, deb11-ppc64el, deb11-i386]
368 builds: !!python/tuple [std]
369 confs: !!python/tuple [std, static]
370 touchstone: '(build == "std") && (conf == "std") && (platform == "deb11-i386")'
371
372 - project:
373 name: gerrit-librseq
374 github_user: compudj
375 github_name: librseq
376 jobs:
377 - 'dev_gerrit_librseq_{buildtype}':
378 buildtype: linuxbuild
379 platforms: !!python/tuple [jammy-amd64]
380 builds: !!python/tuple [std, oot, dist, oot-dist]
381 confs: !!python/tuple [std, static]
382 touchstone: '(build == "std") && (conf == "std")'
383
384 - project:
385 name: librseq-views
386 views:
387 - Librseq
This page took 0.040174 seconds and 3 git commands to generate.