Fix: Patch to emails for CSIT trending
[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}-{os}-{executor-arch}'
22       - 'csit-trending-merge-daily-master-{os}-{executor-arch}'
23       - 'csit-trending-merge-weekly-2009-lts-{os}-{executor-arch}'
24
25     project: 'csit'
26     branch: 'master'
27     os:
28       - 'ubuntu2004'
29     executor-arch: 'x86_64'
30     build-artifact-num-to-keep: 10
31     stream:
32       - master:
33           branch: 'master'
34       - '2009_lts':
35           branch: 'rls2009_lts'
36       - '2101':
37           branch: 'rls2101'
38       - '2101_1':
39           branch: 'rls2101_1'
40       - '2106':
41           branch: 'rls2106'
42
43 - project:
44     name: csit-view
45     views:
46       - project-view
47     project-name: csit
48
49 - job-template:
50     name: 'csit-docs-merge-{stream}-{os}-{executor-arch}'
51
52     project-type: freestyle
53     node: 'builder-{os}-prod-{executor-arch}'
54     concurrent: true
55     allow-empty: 'true'
56     fingerprint: false
57     only-if-success: true
58     default-excludes: false
59
60     build-discarder:
61       daysToKeep: '{build-days-to-keep}'
62       numToKeep: '{build-num-to-keep}'
63       artifactDaysToKeep: '{build-artifact-days-to-keep}'
64       artifactNumToKeep: '{build-artifact-num-to-keep}'
65
66     parameters:
67       - project-parameter:
68           project: '{project}'
69       - gerrit-parameter:
70           branch: '{branch}'
71
72     scm:
73       - gerrit-trigger-scm:
74           credentials-id: 'jenkins-gerrit-credentials'
75           refspec: ''
76           choosing-strategy: 'default'
77
78     wrappers:
79       - fdio-infra-wrappers-non-activity-timeout:
80           build-timeout: '{build-timeout}'
81
82     triggers:
83       - reverse:
84           jobs: 'csit-vpp-device-{stream}-{os}-{executor-arch}-1n-skx-weekly'
85           result: 'success'
86       - gerrit:
87           server-name: 'Primary'
88           trigger-on:
89             - comment-added-contains-event:
90                 comment-contains-value: 'run-docs'
91           projects:
92             - project-compare-type: 'ANT'
93               project-pattern: '{project}'
94               branches:
95                 - branch-compare-type: 'ANT'
96                   branch-pattern: '**/{branch}'
97           skip-vote:
98             successful: true
99             failed: true
100             unstable: true
101             notbuilt: true
102
103     builders:
104       - shell:
105           !include-raw-escape:
106           - ../scripts/setup_executor_env.sh
107       - shell:
108           !include-raw-escape:
109           - ../scripts/csit/docs.sh
110
111     publishers:
112       - fdio-infra-publish-docs
113       - fdio-infra-publish
114
115 - job-template:
116     name: 'csit-report-merge-{stream}-{os}-{executor-arch}'
117
118     project-type: freestyle
119     node: 'builder-{os}-prod-{executor-arch}'
120     concurrent: false
121     latest-only: false
122
123     build-discarder:
124       daysToKeep: '{build-days-to-keep}'
125       numToKeep: '{build-num-to-keep}'
126       artifactDaysToKeep: '{build-artifact-days-to-keep}'
127       artifactNumToKeep: '{build-artifact-num-to-keep}'
128
129     parameters:
130       - project-parameter:
131           project: '{project}'
132       - gerrit-parameter:
133           branch: '{branch}'
134
135     scm:
136       - gerrit-trigger-scm:
137           credentials-id: 'jenkins-gerrit-credentials'
138           refspec: ''
139           choosing-strategy: 'default'
140
141     wrappers:
142       - fdio-infra-wrappers-non-activity-timeout:
143           build-timeout: '{build-timeout}'
144
145     triggers:
146       - gerrit:
147           server-name: 'Primary'
148           trigger-on:
149             - comment-added-contains-event:
150                 comment-contains-value: 'run-report'
151           projects:
152             - project-compare-type: 'ANT'
153               project-pattern: '{project}'
154               branches:
155                 - branch-compare-type: 'ANT'
156                   branch-pattern: '**/{branch}'
157           skip-vote:
158             successful: true
159             failed: true
160             unstable: true
161             notbuilt: true
162
163     builders:
164       - shell:
165           !include-raw-escape:
166           - ../scripts/setup_executor_env.sh
167       - shell:
168           !include-raw-escape:
169           - ../scripts/csit/report.sh
170
171     publishers:
172       - fdio-infra-publish-docs
173       - fdio-infra-publish
174
175 - job-template:
176     name: 'csit-trending-merge-daily-master-{os}-{executor-arch}'
177
178     project-type: freestyle
179     node: 'builder-{os}-prod-{executor-arch}'
180     concurrent: false
181
182     build-discarder:
183       daysToKeep: '{build-days-to-keep}'
184       numToKeep: '{build-num-to-keep}'
185       artifactDaysToKeep: '{build-artifact-days-to-keep}'
186       artifactNumToKeep: '{build-artifact-num-to-keep}'
187
188     parameters:
189       - project-parameter:
190           project: '{project}'
191       - gerrit-parameter:
192           branch: '{branch}'
193
194     scm:
195       - gerrit-trigger-scm:
196           credentials-id: 'jenkins-gerrit-credentials'
197           refspec: ''
198           choosing-strategy: 'default'
199
200     wrappers:
201       - fdio-infra-wrappers-non-activity-timeout:
202           build-timeout: '{build-timeout}'
203
204     triggers:
205       - timed: '0 2,14 * * *'
206
207     builders:
208       - shell:
209           !include-raw-escape:
210           - ../scripts/setup_executor_env.sh
211       - shell:
212           !include-raw-escape:
213           - ../scripts/csit/trending.sh
214
215     publishers:
216       - email-ext:
217           # yamllint disable-line rule:line-length
218           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
219           reply-to: ''
220           content-type: 'text'
221           subject: 'Failed tests as of  $BUILD_TIMESTAMP'
222           # yamllint disable-line rule:line-length
223           body: |
224                 Following tests failed in the last trending job runs, listed per testbed type.
225
226                 ${{FILE,path="resources/tools/presentation/_build/_static/vpp/trending-failed-tests.txt"}}
227
228           always: true
229           failure: false
230
231       - email-ext:
232           # yamllint disable-line rule:line-length
233           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
234           reply-to: ''
235           content-type: 'text'
236           subject: 'Regressions as of  $BUILD_TIMESTAMP'
237           # yamllint disable-line rule:line-length
238           body: |
239                 Following regressions occured in the last trending job runs, listed per testbed type.
240
241                 ${{FILE,path="resources/tools/presentation/_build/_static/vpp/trending-regressions.txt"}}
242
243           always: true
244           failure: false
245
246       - email-ext:
247           # yamllint disable-line rule:line-length
248           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
249           reply-to: ''
250           content-type: 'text'
251           subject: 'Progressions as of  $BUILD_TIMESTAMP'
252           # yamllint disable-line rule:line-length
253           body: |
254                 Following progressions occured in the last trending job runs, listed per testbed type.
255
256                 ${{FILE,path="resources/tools/presentation/_build/_static/vpp/trending-progressions.txt"}}
257
258           always: true
259           failure: false
260
261       - fdio-infra-publish-docs
262       - fdio-infra-publish
263
264 - job-template:
265     name: 'csit-trending-merge-weekly-2009-lts-{os}-{executor-arch}'
266
267     project-type: freestyle
268     node: 'builder-{os}-prod-{executor-arch}'
269     concurrent: false
270
271     build-discarder:
272       daysToKeep: '{build-days-to-keep}'
273       numToKeep: '{build-num-to-keep}'
274       artifactDaysToKeep: '{build-artifact-days-to-keep}'
275       artifactNumToKeep: '{build-artifact-num-to-keep}'
276
277     parameters:
278       - project-parameter:
279           project: '{project}'
280       - gerrit-parameter:
281           branch: 'rls2009_lts'
282
283     scm:
284       - gerrit-trigger-scm:
285           credentials-id: 'jenkins-gerrit-credentials'
286           refspec: ''
287           choosing-strategy: 'default'
288
289     wrappers:
290       - fdio-infra-wrappers-non-activity-timeout:
291           build-timeout: '{build-timeout}'
292
293     triggers:
294       - timed: '0 0 * * 1'
295
296     builders:
297       - shell:
298           !include-raw-escape:
299           - ../scripts/setup_executor_env.sh
300       - shell:
301           !include-raw-escape:
302           - ../scripts/csit/trending.sh
303
304     publishers:
305       - email-ext:
306           # yamllint disable-line rule:line-length
307           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
308           reply-to: ''
309           content-type: 'text'
310           subject: '2009 LTS: Failed tests as of  $BUILD_TIMESTAMP'
311           # yamllint disable-line rule:line-length
312           body: |
313                 Following tests failed in the last trending job runs, listed per testbed type.
314
315                 ${{FILE,path="resources/tools/presentation/_build/_static/vpp/trending-failed-tests.txt"}}
316
317           always: true
318           failure: false
319
320       - email-ext:
321           # yamllint disable-line rule:line-length
322           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
323           reply-to: ''
324           content-type: 'text'
325           subject: '2009 LTS: Regressions as of  $BUILD_TIMESTAMP'
326           # yamllint disable-line rule:line-length
327           body: |
328                 Following regressions occured in the last trending job runs, listed per testbed type.
329
330                 ${{FILE,path="path="resources/tools/presentation/_build/_static/vpp/trending-regressions.txt"}}
331
332           always: true
333           failure: false
334
335       - email-ext:
336           # yamllint disable-line rule:line-length
337           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
338           reply-to: ''
339           content-type: 'text'
340           subject: '2009 LTS: Progressions as of  $BUILD_TIMESTAMP'
341           # yamllint disable-line rule:line-length
342           body: |
343                 Following progressions occured in the last trending job runs, listed per testbed type.
344
345                 ${{FILE,path="path="resources/tools/presentation/_build/_static/vpp/trending-progressions.txt"}}
346
347           always: true
348           failure: false
349
350       - fdio-infra-publish-docs
351       - fdio-infra-publish
352
353
354 - project:
355     name: csit-info
356     project-name: csit
357     jobs:
358       - gerrit-info-yaml-verify
359     build-node: centos7-builder-2c-2g
360     project: csit
361     branch: master
362
363 - project:
364     name: csit-sonar
365     project: csit
366     project-name: csit
367     mvn-settings: csit-settings
368     sonarcloud: true
369     sonarcloud-project-organization: '{sonarcloud_project_organization}'
370     sonarcloud-api-token: '{sonarcloud_api_token}'
371     sonarcloud-project-key: '{sonarcloud_project_organization}_{project-name}'
372     branch: master
373     build-node: centos7-builder-2c-2g
374     jobs:
375       - gerrit-maven-sonar