Global: Docs generation in s3
[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-daily-master-{os}-{executor-arch}'
23       - 'csit-trending-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}-ubuntu1804-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       - gerrit-refspec-parameter
135
136     scm:
137       - gerrit-trigger-scm:
138           credentials-id: 'jenkins-gerrit-credentials'
139           refspec: '$GERRIT_REFSPEC'
140           choosing-strategy: 'gerrit'
141
142     wrappers:
143       - fdio-infra-wrappers-non-activity-timeout:
144           build-timeout: '{build-timeout}'
145
146     triggers:
147       - gerrit:
148           server-name: 'Primary'
149           trigger-on:
150             - comment-added-contains-event:
151                 comment-contains-value: 'run-report'
152           projects:
153             - project-compare-type: 'ANT'
154               project-pattern: '{project}'
155               branches:
156                 - branch-compare-type: 'ANT'
157                   branch-pattern: '**/{branch}'
158           skip-vote:
159             successful: true
160             failed: true
161             unstable: true
162             notbuilt: true
163
164     builders:
165       - shell:
166           !include-raw-escape:
167           - ../scripts/setup_executor_env.sh
168       - shell:
169           !include-raw-escape:
170           - ../scripts/csit/report.sh
171
172     publishers:
173       - fdio-infra-publish-docs
174       - fdio-infra-publish
175
176 - job-template:
177     name: 'csit-trending-daily-master-{os}-{executor-arch}'
178
179     project-type: freestyle
180     node: 'builder-{os}-prod-{executor-arch}'
181     concurrent: false
182
183     build-discarder:
184       daysToKeep: '{build-days-to-keep}'
185       numToKeep: '{build-num-to-keep}'
186       artifactDaysToKeep: '{build-artifact-days-to-keep}'
187       artifactNumToKeep: '{build-artifact-num-to-keep}'
188
189     parameters:
190       - project-parameter:
191           project: '{project}'
192       - gerrit-parameter:
193           branch: '{branch}'
194
195     scm:
196       - gerrit-trigger-scm:
197           credentials-id: 'jenkins-gerrit-credentials'
198           refspec: ''
199           choosing-strategy: 'default'
200
201     wrappers:
202       - fdio-infra-wrappers-non-activity-timeout:
203           build-timeout: '{build-timeout}'
204
205     triggers:
206       - timed: '0 2,14 * * *'
207
208     builders:
209       - shell:
210           !include-raw-escape:
211           - ../scripts/setup_executor_env.sh
212       - shell:
213           !include-raw-escape:
214           - ../scripts/csit/trending.sh
215
216     publishers:
217       - email-ext:
218           # yamllint disable-line rule:line-length
219           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
220           reply-to: ''
221           content-type: 'text'
222           subject: 'Failed tests as of  $BUILD_TIMESTAMP'
223           # yamllint disable-line rule:line-length
224           body: |
225                 Following tests failed in the last trending job runs, listed per testbed type.
226
227                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-failed-tests.txt"}}
228
229           always: true
230           failure: false
231
232       - email-ext:
233           # yamllint disable-line rule:line-length
234           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
235           reply-to: ''
236           content-type: 'text'
237           subject: 'Regressions as of  $BUILD_TIMESTAMP'
238           # yamllint disable-line rule:line-length
239           body: |
240                 Following regressions occured in the last trending job runs, listed per testbed type.
241
242                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-regressions.txt"}}
243
244           always: true
245           failure: false
246
247       - email-ext:
248           # yamllint disable-line rule:line-length
249           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
250           reply-to: ''
251           content-type: 'text'
252           subject: 'Progressions as of  $BUILD_TIMESTAMP'
253           # yamllint disable-line rule:line-length
254           body: |
255                 Following progressions occured in the last trending job runs, listed per testbed type.
256
257                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-progressions.txt"}}
258
259           always: true
260           failure: false
261
262       - fdio-infra-publish-docs
263       - fdio-infra-publish
264
265 - job-template:
266     name: 'csit-trending-weekly-2009-lts-{os}-{executor-arch}'
267
268     project-type: freestyle
269     node: 'builder-{os}-prod-{executor-arch}'
270     concurrent: false
271
272     build-discarder:
273       daysToKeep: '{build-days-to-keep}'
274       numToKeep: '{build-num-to-keep}'
275       artifactDaysToKeep: '{build-artifact-days-to-keep}'
276       artifactNumToKeep: '{build-artifact-num-to-keep}'
277
278     parameters:
279       - project-parameter:
280           project: '{project}'
281       - gerrit-parameter:
282           branch: 'rls2009_lts'
283
284     scm:
285       - gerrit-trigger-scm:
286           credentials-id: 'jenkins-gerrit-credentials'
287           refspec: ''
288           choosing-strategy: 'default'
289
290     wrappers:
291       - fdio-infra-wrappers-non-activity-timeout:
292           build-timeout: '{build-timeout}'
293
294     triggers:
295       - timed: '0 0 * * 1'
296
297     builders:
298       - shell:
299           !include-raw-escape:
300           - ../scripts/setup_executor_env.sh
301       - shell:
302           !include-raw-escape:
303           - ../scripts/csit/trending.sh
304
305     publishers:
306       - email-ext:
307           # yamllint disable-line rule:line-length
308           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
309           reply-to: ''
310           content-type: 'text'
311           subject: '2009 LTS: Failed tests as of  $BUILD_TIMESTAMP'
312           # yamllint disable-line rule:line-length
313           body: |
314                 Following tests failed in the last trending job runs, listed per testbed type.
315
316                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-failed-tests.txt"}}
317
318           always: true
319           failure: false
320
321       - email-ext:
322           # yamllint disable-line rule:line-length
323           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
324           reply-to: ''
325           content-type: 'text'
326           subject: '2009 LTS: Regressions as of  $BUILD_TIMESTAMP'
327           # yamllint disable-line rule:line-length
328           body: |
329                 Following regressions occured in the last trending job runs, listed per testbed type.
330
331                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-regressions.txt"}}
332
333           always: true
334           failure: false
335
336       - email-ext:
337           # yamllint disable-line rule:line-length
338           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
339           reply-to: ''
340           content-type: 'text'
341           subject: '2009 LTS: Progressions as of  $BUILD_TIMESTAMP'
342           # yamllint disable-line rule:line-length
343           body: |
344                 Following progressions occured in the last trending job runs, listed per testbed type.
345
346                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-progressions.txt"}}
347
348           always: true
349           failure: false
350
351       - fdio-infra-publish-docs
352       - fdio-infra-publish
353
354
355 - project:
356     name: csit-info
357     project-name: csit
358     jobs:
359       - gerrit-info-yaml-verify
360     build-node: centos7-builder-2c-2g
361     project: csit
362     branch: master
363
364 - project:
365     name: csit-sonar
366     project: csit
367     project-name: csit
368     mvn-settings: csit-settings
369     sonarcloud: true
370     sonarcloud-project-organization: '{sonarcloud_project_organization}'
371     sonarcloud-api-token: '{sonarcloud_api_token}'
372     sonarcloud-project-key: '{sonarcloud_project_organization}_{project-name}'
373     branch: master
374     build-node: centos7-builder-2c-2g
375     jobs:
376       - gerrit-maven-sonar