Merge "Upgrade common-packer to v0.7.5"
[ci-management.git] / jjb / csit / csit.yaml
1 # Copyright (c) 2021 Cisco and/or its affiliates.
2 # Licensed under the Apache License, Version 2.0 (the "License");
3 # you may not use this file except in compliance with the License.
4 # You may obtain a copy of the License at:
5 #
6 #     http://www.apache.org/licenses/LICENSE-2.0
7 #
8 # Unless required by applicable law or agreed to in writing, software
9 # distributed under the License is distributed on an "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 # See the License for the specific language governing permissions and
12 # limitations under the License.
13
14 ---
15 - project:
16     name: csit
17     description: 'CSIT Jenkins jobs.'
18
19     jobs:
20       - 'csit-docs-merge-{stream}-{os}-{executor-arch}'
21       - 'csit-report-merge-{stream}'
22       - 'csit-trending-daily-master'
23       - 'csit-trending-weekly-2009-lts'
24
25     project: 'csit'
26     branch: 'master'
27     os:
28       - 'ubuntu2004'
29     executor-arch: 'x86_64'
30     executor-large: 'ubuntu1804-l'
31     build-artifact-num-to-keep: 10
32     stream:
33       - master:
34           branch: 'master'
35       - '2005':
36           branch: 'rls2005'
37       - '2009':
38           branch: 'rls2009'
39       - '2009_lts':
40           branch: 'rls2009_lts'
41       - '2101':
42           branch: 'rls2101'
43
44 - project:
45     name: csit-view
46     views:
47       - project-view
48     project-name: csit
49
50 - job-template:
51     name: 'csit-docs-merge-{stream}-{os}-{executor-arch}'
52
53     project-type: freestyle
54     node: 'builder-{os}-prod-{executor-arch}'
55     concurrent: true
56     allow-empty: 'true'
57     fingerprint: false
58     only-if-success: true
59     default-excludes: false
60
61     build-discarder:
62       daysToKeep: '{build-days-to-keep}'
63       numToKeep: '{build-num-to-keep}'
64       artifactDaysToKeep: '{build-artifact-days-to-keep}'
65       artifactNumToKeep: '{build-artifact-num-to-keep}'
66
67     parameters:
68       - project-parameter:
69           project: '{project}'
70       - gerrit-parameter:
71           branch: '{branch}'
72       - maven-exec:
73           maven-version: 'mvn33-new'
74       - string:
75           name: ARCHIVE_ARTIFACTS
76           default: '{archive-artifacts}'
77           description: Artifacts to archive to the logs server.
78
79     scm:
80       - gerrit-trigger-scm:
81           credentials-id: 'jenkins-gerrit-credentials'
82           refspec: ''
83           choosing-strategy: 'default'
84
85     wrappers:
86       - fdio-infra-wrappers-non-activity-timeout:
87           build-timeout: '{build-timeout}'
88
89     triggers:
90       - reverse:
91           jobs: 'csit-vpp-device-{stream}-ubuntu1804-1n-skx-weekly'
92           result: 'success'
93       - gerrit:
94           server-name: 'Primary'
95           trigger-on:
96             - comment-added-contains-event:
97                 comment-contains-value: 'run-docs'
98           projects:
99             - project-compare-type: 'ANT'
100               project-pattern: '{project}'
101               branches:
102                 - branch-compare-type: 'ANT'
103                   branch-pattern: '**/{branch}'
104           skip-vote:
105             successful: true
106             failed: true
107             unstable: true
108             notbuilt: true
109
110     builders:
111       - maven-target:
112           maven-version: 'mvn33-new'
113           goals: '--version'
114           settings: 'csit-settings'
115           settings-type: cfp
116           global-settings: 'global-settings'
117           global-settings-type: cfp
118       - provide-maven-settings:
119           settings-file: 'csit-settings'
120           global-settings-file: 'global-settings'
121       - shell:
122           !include-raw-escape:
123           - ../scripts/setup_executor_env.sh
124       - shell:
125           !include-raw-escape:
126           - ../scripts/csit/docs.sh
127
128     publishers:
129       - fdio-infra-shiplogs:
130           maven-version: 'mvn33-new'
131
132 - job-template:
133     name: 'csit-report-merge-{stream}'
134
135     project-type: freestyle
136     node: '{executor-large}'
137     concurrent: false
138     allow-empty: 'true'
139     fingerprint: false
140     only-if-success: true
141     default-excludes: false
142
143     build-discarder:
144       daysToKeep: '{build-days-to-keep}'
145       numToKeep: '{build-num-to-keep}'
146       artifactDaysToKeep: '{build-artifact-days-to-keep}'
147       artifactNumToKeep: '{build-artifact-num-to-keep}'
148
149     parameters:
150       - project-parameter:
151           project: '{project}'
152       - gerrit-parameter:
153           branch: '{branch}'
154       - maven-exec:
155           maven-version: 'mvn33-new'
156       - string:
157           name: ARCHIVE_ARTIFACTS
158           default: '{archive-artifacts}'
159           description: Artifacts to archive to the logs server.
160
161     scm:
162       - gerrit-trigger-scm:
163           credentials-id: 'jenkins-gerrit-credentials'
164           refspec: '$GERRIT_REFSPEC'
165           choosing-strategy: 'default'
166
167     wrappers:
168       - fdio-infra-wrappers-non-activity-timeout:
169           build-timeout: '{build-timeout}'
170
171     triggers:
172       - gerrit:
173           server-name: 'Primary'
174           trigger-on:
175             - comment-added-contains-event:
176                 comment-contains-value: 'run-report'
177           projects:
178             - project-compare-type: 'ANT'
179               project-pattern: '{project}'
180               branches:
181                 - branch-compare-type: 'ANT'
182                   branch-pattern: '**/{branch}'
183           skip-vote:
184             successful: true
185             failed: true
186             unstable: true
187             notbuilt: true
188
189     builders:
190       - maven-target:
191           maven-version: 'mvn33-new'
192           goals: '--version'
193           settings: 'csit-settings'
194           settings-type: cfp
195           global-settings: 'global-settings'
196           global-settings-type: cfp
197       - provide-maven-settings:
198           settings-file: 'csit-settings'
199           global-settings-file: 'global-settings'
200       - shell:
201           !include-raw-escape:
202           - ../scripts/setup_executor_env.sh
203       - shell:
204           !include-raw-escape:
205           - ../scripts/csit/report.sh
206
207     publishers:
208       - fdio-infra-shiplogs:
209           maven-version: 'mvn33-new'
210
211 - job-template:
212     name: 'csit-trending-daily-master'
213
214     project-type: freestyle
215     node: '{executor-large}'
216     concurrent: false
217
218     build-discarder:
219       daysToKeep: '{build-days-to-keep}'
220       numToKeep: '{build-num-to-keep}'
221       artifactDaysToKeep: '{build-artifact-days-to-keep}'
222       artifactNumToKeep: '{build-artifact-num-to-keep}'
223
224     parameters:
225       - project-parameter:
226           project: '{project}'
227       - gerrit-parameter:
228           branch: '{branch}'
229       - maven-exec:
230           maven-version: 'mvn33-new'
231
232     scm:
233       - gerrit-trigger-scm:
234           credentials-id: 'jenkins-gerrit-credentials'
235           refspec: ''
236           choosing-strategy: 'default'
237
238     wrappers:
239       - fdio-infra-wrappers-non-activity-timeout:
240           build-timeout: '{build-timeout}'
241
242     triggers:
243       - timed: '0 2,14 * * *'
244
245     builders:
246       - maven-target:
247           maven-version: 'mvn33-new'
248           goals: '--version'
249           settings: 'csit-settings'
250           settings-type: cfp
251           global-settings: 'global-settings'
252           global-settings-type: cfp
253       - provide-maven-settings:
254           settings-file: 'csit-settings'
255           global-settings-file: 'global-settings'
256       - shell:
257           !include-raw-escape:
258           - ../scripts/setup_executor_env.sh
259       - shell:
260           !include-raw-escape:
261           - ../scripts/csit/cpta.sh
262
263     publishers:
264       - email-ext:
265           # yamllint disable-line rule:line-length
266           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
267           reply-to: ''
268           content-type: 'text'
269           subject: 'Failed tests as of  $BUILD_TIMESTAMP'
270           # yamllint disable-line rule:line-length
271           body: |
272                 Following tests failed in the last trending job runs, listed per testbed type.
273
274                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-failed-tests.txt"}}
275
276           always: true
277           failure: false
278
279       - email-ext:
280           # yamllint disable-line rule:line-length
281           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
282           reply-to: ''
283           content-type: 'text'
284           subject: 'Regressions as of  $BUILD_TIMESTAMP'
285           # yamllint disable-line rule:line-length
286           body: |
287                 Following regressions occured in the last trending job runs, listed per testbed type.
288
289                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-regressions.txt"}}
290
291           always: true
292           failure: false
293
294       - email-ext:
295           # yamllint disable-line rule:line-length
296           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
297           reply-to: ''
298           content-type: 'text'
299           subject: 'Progressions as of  $BUILD_TIMESTAMP'
300           # yamllint disable-line rule:line-length
301           body: |
302                 Following progressions occured in the last trending job runs, listed per testbed type.
303
304                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-progressions.txt"}}
305
306           always: true
307           failure: false
308
309       - fdio-infra-shiplogs:
310           maven-version: 'mvn33-new'
311
312 - job-template:
313     name: 'csit-trending-weekly-2009-lts'
314
315     project-type: freestyle
316     node: '{executor-large}'
317     concurrent: false
318
319     build-discarder:
320       daysToKeep: '{build-days-to-keep}'
321       numToKeep: '{build-num-to-keep}'
322       artifactDaysToKeep: '{build-artifact-days-to-keep}'
323       artifactNumToKeep: '{build-artifact-num-to-keep}'
324
325     parameters:
326       - project-parameter:
327           project: '{project}'
328       - gerrit-parameter:
329           branch: 'rls2009_lts'
330       - maven-exec:
331           maven-version: 'mvn33-new'
332
333     scm:
334       - gerrit-trigger-scm:
335           credentials-id: 'jenkins-gerrit-credentials'
336           refspec: ''
337           choosing-strategy: 'default'
338
339     wrappers:
340       - fdio-infra-wrappers-non-activity-timeout:
341           build-timeout: '{build-timeout}'
342
343     triggers:
344       - timed: '0 0 * * 1'
345
346     builders:
347       - maven-target:
348           maven-version: 'mvn33-new'
349           goals: '--version'
350           settings: 'csit-settings'
351           settings-type: cfp
352           global-settings: 'global-settings'
353           global-settings-type: cfp
354       - provide-maven-settings:
355           settings-file: 'csit-settings'
356           global-settings-file: 'global-settings'
357       - shell:
358           !include-raw-escape:
359           - ../scripts/setup_executor_env.sh
360       - shell:
361           !include-raw-escape:
362           - ../scripts/csit/cpta.sh
363
364     publishers:
365       - email-ext:
366           # yamllint disable-line rule:line-length
367           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
368           reply-to: ''
369           content-type: 'text'
370           subject: '2009 LTS: Failed tests as of  $BUILD_TIMESTAMP'
371           # yamllint disable-line rule:line-length
372           body: |
373                 Following tests failed in the last trending job runs, listed per testbed type.
374
375                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-failed-tests.txt"}}
376
377           always: true
378           failure: false
379
380       - email-ext:
381           # yamllint disable-line rule:line-length
382           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
383           reply-to: ''
384           content-type: 'text'
385           subject: '2009 LTS: Regressions as of  $BUILD_TIMESTAMP'
386           # yamllint disable-line rule:line-length
387           body: |
388                 Following regressions occured in the last trending job runs, listed per testbed type.
389
390                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-regressions.txt"}}
391
392           always: true
393           failure: false
394
395       - email-ext:
396           # yamllint disable-line rule:line-length
397           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
398           reply-to: ''
399           content-type: 'text'
400           subject: '2009 LTS: Progressions as of  $BUILD_TIMESTAMP'
401           # yamllint disable-line rule:line-length
402           body: |
403                 Following progressions occured in the last trending job runs, listed per testbed type.
404
405                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-progressions.txt"}}
406
407           always: true
408           failure: false
409
410       - fdio-infra-shiplogs:
411           maven-version: 'mvn33-new'
412
413 - project:
414     name: csit-info
415     project-name: csit
416     jobs:
417       - gerrit-info-yaml-verify
418     build-node: centos7-builder-2c-2g
419     project: csit
420     branch: master
421
422 - project:
423     name: csit-sonar
424     project: csit
425     project-name: csit
426     mvn-settings: csit-settings
427     sonarcloud: true
428     sonarcloud-project-organization: '{sonarcloud_project_organization}'
429     sonarcloud-api-token: '{sonarcloud_api_token}'
430     sonarcloud-project-key: '{sonarcloud_project_organization}_{project-name}'
431     branch: master
432     build-node: centos7-builder-2c-2g
433     jobs:
434       - gerrit-maven-sonar