Merge "Modify logs publisher"
[ci-management.git] / jjb / csit / csit.yaml
1 # Copyright (c) 2019 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_timed}'
21       - 'csit-report-merge-{stream}'
22       - 'csit-trending-daily-master'
23
24     project: 'csit'
25     branch: 'master'
26     executor: 'ubuntu1804-us'
27     executor-large: 'ubuntu1804-l'
28     build-artifact-num-to-keep: 10
29     stream_timed:
30       - master:
31           branch: 'master'
32           executor: 'ubuntu1804-us'
33     stream:
34       - master:
35           branch: 'master'
36           executor: 'ubuntu1804-us'
37       - '1901':
38           branch: 'rls1901'
39           executor: 'ubuntu1604-basebuild-4c-4g'
40       - '1904':
41           branch: 'rls1904'
42           executor: 'ubuntu1804-us'
43       - '1908':
44           branch: 'rls1908'
45       - '1908_1':
46           branch: 'rls1908_1'
47
48 - project:
49     name: csit-view
50     views:
51       - project-view
52     project-name: csit
53
54 - job-template:
55     name: 'csit-docs-merge-{stream_timed}'
56
57     project-type: freestyle
58     node: '{executor}'
59     concurrent: true
60     allow-empty: 'true'
61     fingerprint: false
62     only-if-success: true
63     default-excludes: false
64
65     build-discarder:
66       daysToKeep: '{build-days-to-keep}'
67       numToKeep: '{build-num-to-keep}'
68       artifactDaysToKeep: '{build-artifact-days-to-keep}'
69       artifactNumToKeep: '{build-artifact-num-to-keep}'
70
71     parameters:
72       - project-parameter:
73           project: '{project}'
74       - gerrit-parameter:
75           branch: '{branch}'
76       - maven-exec:
77           maven-version: 'mvn33-new'
78       - string:
79           name: ARCHIVE_ARTIFACTS
80           default: '{archive-artifacts}'
81           description: Artifacts to archive to the logs server.
82
83     scm:
84       - gerrit-trigger-scm:
85           credentials-id: 'jenkins-gerrit-credentials'
86           refspec: ''
87           choosing-strategy: 'default'
88
89     wrappers:
90       - fdio-infra-wrappers-non-activity-timeout:
91           build-timeout: '{build-timeout}'
92
93     triggers:
94       - reverse:
95           jobs: 'csit-vpp-verify-{stream_timed}-ubuntu1604-weekly'
96           result: 'success'
97       - gerrit:
98           server-name: 'Primary'
99           trigger-on:
100             - comment-added-contains-event:
101                 comment-contains-value: 'run-docs'
102           projects:
103             - project-compare-type: 'ANT'
104               project-pattern: '{project}'
105               branches:
106                 - branch-compare-type: 'ANT'
107                   branch-pattern: '**/{branch}'
108           skip-vote:
109             successful: true
110             failed: true
111             unstable: true
112             notbuilt: true
113
114     builders:
115       - maven-target:
116           maven-version: 'mvn33-new'
117           goals: '--version'
118           settings: 'csit-settings'
119           settings-type: cfp
120           global-settings: 'global-settings'
121           global-settings-type: cfp
122       - provide-maven-settings:
123           settings-file: 'csit-settings'
124           global-settings-file: 'global-settings'
125       - shell:
126           !include-raw-escape: include-raw-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: include-raw-csit-report.sh
202
203     publishers:
204       - fdio-infra-shiplogs:
205           maven-version: 'mvn33-new'
206
207 - job-template:
208     name: 'csit-trending-daily-master'
209
210     project-type: freestyle
211     node: '{executor-large}'
212     concurrent: false
213
214     build-discarder:
215       daysToKeep: '{build-days-to-keep}'
216       numToKeep: '{build-num-to-keep}'
217       artifactDaysToKeep: '{build-artifact-days-to-keep}'
218       artifactNumToKeep: '{build-artifact-num-to-keep}'
219
220     parameters:
221       - project-parameter:
222           project: '{project}'
223       - gerrit-parameter:
224           branch: '{branch}'
225       - maven-exec:
226           maven-version: 'mvn33-new'
227
228     scm:
229       - gerrit-trigger-scm:
230           credentials-id: 'jenkins-gerrit-credentials'
231           refspec: ''
232           choosing-strategy: 'default'
233
234     wrappers:
235       - fdio-infra-wrappers-non-activity-timeout:
236           build-timeout: '{build-timeout}'
237
238     triggers:
239       - timed: '0 2,14 * * *'
240
241     builders:
242       - maven-target:
243           maven-version: 'mvn33-new'
244           goals: '--version'
245           settings: 'csit-settings'
246           settings-type: cfp
247           global-settings: 'global-settings'
248           global-settings-type: cfp
249       - provide-maven-settings:
250           settings-file: 'csit-settings'
251           global-settings-file: 'global-settings'
252       - shell:
253           !include-raw-escape: include-raw-csit-cpta.sh
254
255     publishers:
256       - email-ext:
257           # yamllint disable-line rule:line-length
258           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
259           reply-to: ''
260           content-type: 'text'
261           subject: 'Failed tests as of  $BUILD_TIMESTAMP'
262           # yamllint disable-line rule:line-length
263           body: |
264                 Following tests failed in the last trending job runs, listed per testbed type.
265
266                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-failed-tests.txt"}}
267
268           always: true
269           failure: false
270
271       - email-ext:
272           # yamllint disable-line rule:line-length
273           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
274           reply-to: ''
275           content-type: 'text'
276           subject: 'Regressions as of  $BUILD_TIMESTAMP'
277           # yamllint disable-line rule:line-length
278           body: |
279                 Following regressions occured in the last trending job runs, listed per testbed type.
280
281                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-regressions.txt"}}
282
283           always: true
284           failure: false
285
286       - email-ext:
287           # yamllint disable-line rule:line-length
288           recipients: 'tifrank@cisco.com, csit-report+int+616+181919729795594561@lists.fd.io'
289           reply-to: ''
290           content-type: 'text'
291           subject: 'Progressions as of  $BUILD_TIMESTAMP'
292           # yamllint disable-line rule:line-length
293           body: |
294                 Following progressions occured in the last trending job runs, listed per testbed type.
295
296                 ${{FILE,path="build-root/docs/deploy-site/src/site/resources/trending/_static/vpp/trending-progressions.txt"}}
297
298           always: true
299           failure: false
300
301       - fdio-infra-shiplogs:
302           maven-version: 'mvn33-new'
303
304 - project:
305     name: csit-info
306     project-name: csit
307     jobs:
308       - gerrit-info-yaml-verify
309     build-node: centos7-builder-4c-4g
310     project: csit
311     branch: master