Merge "Modify logs publisher"
[ci-management.git] / jjb / csit / csit-func.yaml
1 # Copyright (c) 2019 Cisco and/or its affiliates.
2 # Copyright (c) 2019 PANTHEON.tech s.r.o. and/or its affiliates.
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at:
6 #
7 #     http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 ---
16 - project:
17     name: csit-func
18     description: 'CSIT Functinal Testing Jenkins jobs.'
19     os:
20       - 'ubuntu1604'
21       - 'centos7'
22
23     jobs:
24       - 'csit-vpp-verify-{stream_timed}-{os}-weekly'
25       - 'csit-vpp-verify-{stream_timed}-{os}-semiweekly'
26       - 'csit-vpp-functional-{stream}-{os}-virl'
27       - 'csit-nsh_sfc-verify-func-{stream}-{os}-virl'
28       - 'csit-tldk-verify-func-{stream}-{os}-virl'
29       - 'csit-dmm-functional-{stream}-ubuntu1604-virl'
30
31     project: 'csit'
32     branch: 'master'
33     branch-id: 'oper'
34     build-artifact-num-to-keep: 10
35     stream_timed:
36       - master:
37           branch: 'master'
38           branch-id: 'oper'
39     stream:
40       - master:
41           branch: 'master'
42       - '1901':
43           branch: 'rls1901'
44       - '1904':
45           branch: 'rls1904'
46       - '1908_1':
47           branch: 'rls1908_1'
48
49 - job-template:
50     name: 'csit-vpp-verify-{stream_timed}-{os}-weekly'
51     # yamllint disable-line rule:line-length
52     description: 'Purpose of this job is to validate CSIT code of corresponding branch against verified vpp build from corresponding branch.'
53     # yamllint enable rule:line-length
54
55     project-type: freestyle
56     node: '{os}-basebuild-4c-4g'
57     concurrent: false
58     archive-artifacts: >
59       **/csit/report.html
60       **/csit/log.html
61       **/csit/output.xml
62     latest-only: false
63
64     build-discarder:
65       daysToKeep: '{build-days-to-keep}'
66       numToKeep: '{build-num-to-keep}'
67       artifactDaysToKeep: '{build-artifact-days-to-keep}'
68       artifactNumToKeep: '{build-artifact-num-to-keep}'
69
70     parameters:
71       - project-parameter:
72           project: '{project}'
73       - gerrit-parameter:
74           branch: '{branch}'
75       - string:
76           name: ARCHIVE_ARTIFACTS
77           default: '{archive-artifacts}'
78           description: Artifacts to archive to the logs server.
79
80     scm:
81       - git-scm:
82           credentials-id: 'jenkins-gerrit-credentials'
83           branch: '{branch}'
84
85     wrappers:
86       - fdio-infra-wrappers-non-activity-timeout:
87           build-timeout: '{build-timeout}'
88
89     triggers:
90       - timed: '0 4 * * 0'
91
92       - gerrit-trigger-manually-triggered:
93           comment-trigger-value: 'csit-vpp-ref-verify'
94           name: '{project}'
95           branch: '{branch}'
96
97     builders:
98       - shell:
99           !include-raw-escape: jjb/csit/include-raw-csit-vpp-verify-weekly.sh
100
101     publishers:
102       - robot-report:
103           output-path: ''
104
105       - fdio-infra-shiplogs:
106           maven-version: 'mvn33-new'
107
108 - job-template:
109     name: 'csit-vpp-verify-{stream_timed}-{os}-semiweekly'
110     # yamllint disable-line rule:line-length
111     description: 'Purpose of this job is to validate latest vpp build from corresponding branch stored in nexus against verified CSIT codebase of corresponding branch.'
112     # yamllint enable rule:line-length
113
114     project-type: freestyle
115     node: '{os}-basebuild-4c-4g'
116     concurrent: false
117     archive-artifacts: 'csit/archive/*.*'
118     latest-only: false
119
120     build-discarder:
121       daysToKeep: '{build-days-to-keep}'
122       numToKeep: '{build-num-to-keep}'
123       artifactDaysToKeep: '{build-artifact-days-to-keep}'
124       artifactNumToKeep: '{build-artifact-num-to-keep}'
125
126     parameters:
127       - project-parameter:
128           project: '{project}'
129       - gerrit-parameter:
130           branch: '{branch}'
131       - string:
132           name: ARCHIVE_ARTIFACTS
133           default: '{archive-artifacts}'
134           description: Artifacts to archive to the logs server.
135
136     wrappers:
137       - fdio-infra-wrappers-non-activity-timeout:
138           build-timeout: '{build-timeout}'
139
140     triggers:
141       - timed: '0 4 * * 2,6'
142
143       - gerrit-trigger-manually-triggered:
144           comment-trigger-value: 'csit-verify-vpp'
145           name: '{project}'
146           branch: '{branch}'
147
148     builders:
149       - shell: 'echo "BRANCH_ID={branch-id}" > $WORKSPACE/variables.prop'
150       - inject:
151           properties-file: variables.prop
152       - shell:
153           # yamllint disable-line rule:line-length
154           !include-raw-escape: jjb/csit/include-raw-csit-vpp-verify-semiweekly.sh
155           # yamllint enable rule:line-length
156
157     publishers:
158       - robot-report:
159           output-path: 'csit/archive'
160
161       - fdio-infra-shiplogs:
162           maven-version: 'mvn33-new'
163
164 - job-template:
165     name: 'csit-vpp-functional-{stream}-{os}-virl'
166
167     project-type: freestyle
168     node: '{os}-basebuild-4c-4g'
169     concurrent: true
170     archive-artifacts: >
171       **/csit/report.html
172       **/csit/log.html
173       **/csit/output.xml
174     latest-only: false
175
176     build-discarder:
177       daysToKeep: '{build-days-to-keep}'
178       numToKeep: '{build-num-to-keep}'
179       artifactDaysToKeep: '{build-artifact-days-to-keep}'
180       artifactNumToKeep: '{build-artifact-num-to-keep}'
181
182     parameters:
183       - project-parameter:
184           project: '{project}'
185       - gerrit-parameter:
186           branch: '{branch}'
187       - string:
188           name: ARCHIVE_ARTIFACTS
189           default: '{archive-artifacts}'
190           description: Artifacts to archive to the logs server.
191       # This is an automatic verify job, part of API coverage.
192       # CRC checking is needed to ensure vpp crc job breaks only when intended.
193       # Can be removed when this job is no longer needed for full API coverage.
194       - csit-fail-on-crc-mismatch-parameter:
195           fail-on-crc-mismatch: 'True'
196
197     scm:
198       - gerrit-trigger-scm:
199           credentials-id: 'jenkins-gerrit-credentials'
200           refspec: '$GERRIT_REFSPEC'
201           choosing-strategy: 'gerrit'
202
203     wrappers:
204       - fdio-infra-wrappers:
205           build-timeout: '{build-timeout}'
206
207     triggers:
208       - gerrit-trigger-manually-triggered:
209           name: '{project}'
210           branch: '{branch}'
211           comment-trigger-value: 'csit-virltest'
212
213     builders:
214       - shell:
215           !include-raw-escape: include-raw-csit-vpp-functional-virl.sh
216
217     publishers:
218       - robot-report:
219           output-path: ''
220
221       - fdio-infra-shiplogs:
222           maven-version: 'mvn33-new'
223
224 - job-template:
225     name: 'csit-nsh_sfc-verify-func-{stream}-{os}-virl'
226
227     project-type: freestyle
228     node: '{os}-basebuild-4c-4g'
229     concurrent: true
230     archive-artifacts: 'archive/*.*'
231     latest-only: false
232
233     build-discarder:
234       daysToKeep: '{build-days-to-keep}'
235       numToKeep: '{build-num-to-keep}'
236       artifactDaysToKeep: '{build-artifact-days-to-keep}'
237       artifactNumToKeep: '{build-artifact-num-to-keep}'
238
239     parameters:
240       - project-parameter:
241           project: '{project}'
242       - gerrit-parameter:
243           branch: '{branch}'
244       - os-parameter:
245           os: '{os}'
246       - stream-parameter:
247           stream: '{stream}'
248       - string:
249           name: ARCHIVE_ARTIFACTS
250           default: '{archive-artifacts}'
251           description: Artifacts to archive to the logs server.
252
253     scm:
254       - gerrit-trigger-scm:
255           credentials-id: 'jenkins-gerrit-credentials'
256           refspec: '$GERRIT_REFSPEC'
257           choosing-strategy: 'gerrit'
258
259     wrappers:
260       - fdio-infra-wrappers:
261           build-timeout: '{build-timeout}'
262
263     triggers:
264       - gerrit-trigger-manually-triggered:
265           name: '{project}'
266           branch: '{branch}'
267           comment-trigger-value: 'csit_nsh_sfc_func_{stream}'
268
269     builders:
270       - shell:
271           !include-raw-escape: include-raw-csit-nsh_sfc-functional-virl.sh
272
273     publishers:
274       - robot-report:
275           output-path: 'archive'
276
277       - fdio-infra-shiplogs:
278           maven-version: 'mvn33-new'
279
280 - job-template:
281     name: 'csit-tldk-verify-func-{stream}-{os}-virl'
282
283     project-type: freestyle
284     node: '{os}-basebuild-4c-4g'
285     concurrent: true
286     archive-artifacts: 'archive/*.*'
287     latest-only: false
288
289     build-discarder:
290       daysToKeep: '{build-days-to-keep}'
291       numToKeep: '{build-num-to-keep}'
292       artifactDaysToKeep: '{build-artifact-days-to-keep}'
293       artifactNumToKeep: '{build-artifact-num-to-keep}'
294
295     parameters:
296       - project-parameter:
297           project: '{project}'
298       - gerrit-parameter:
299           branch: '{branch}'
300       - os-parameter:
301           os: '{os}'
302       - string:
303           name: ARCHIVE_ARTIFACTS
304           default: '{archive-artifacts}'
305           description: Artifacts to archive to the logs server.
306
307     scm:
308       - gerrit-trigger-scm:
309           credentials-id: 'jenkins-gerrit-credentials'
310           refspec: '$GERRIT_REFSPEC'
311           choosing-strategy: 'gerrit'
312
313     wrappers:
314       - fdio-infra-wrappers:
315           build-timeout: '{build-timeout}'
316
317     triggers:
318       - gerrit-trigger-manually-triggered:
319           name: '{project}'
320           branch: '{branch}'
321           comment-trigger-value: 'csit_verify_tldk_func'
322
323     builders:
324       - shell:
325           !include-raw-escape: include-raw-csit-tldk-functional-virl.sh
326
327     publishers:
328       - robot-report:
329           output-path: 'archive'
330
331       - fdio-infra-shiplogs:
332           maven-version: 'mvn33-new'
333
334 - job-template:
335     name: 'csit-dmm-functional-{stream}-ubuntu1604-virl'
336
337     project-type: freestyle
338     node: 'ubuntu1604-basebuild-4c-4g'
339     concurrent: true
340     archive-artifacts: 'archive/*.*'
341     latest-only: false
342
343     build-discarder:
344       daysToKeep: '{build-days-to-keep}'
345       numToKeep: '{build-num-to-keep}'
346       artifactDaysToKeep: '{build-artifact-days-to-keep}'
347       artifactNumToKeep: '{build-artifact-num-to-keep}'
348
349     parameters:
350       - project-parameter:
351           project: '{project}'
352       - gerrit-parameter:
353           branch: '{branch}'
354       - string:
355           name: ARCHIVE_ARTIFACTS
356           default: '{archive-artifacts}'
357           description: Artifacts to archive to the logs server.
358
359     scm:
360       - gerrit-trigger-scm:
361           credentials-id: 'jenkins-gerrit-credentials'
362           refspec: '$GERRIT_REFSPEC'
363           choosing-strategy: 'gerrit'
364
365     wrappers:
366       - fdio-infra-wrappers:
367           build-timeout: '{build-timeout}'
368
369     triggers:
370       - gerrit-trigger-manually-triggered:
371           name: '{project}'
372           branch: '{branch}'
373           comment-trigger-value: 'csit_verify_dmm_func'
374
375     builders:
376       - shell:
377           !include-raw-escape: include-raw-csit-dmm-functional-virl.sh
378
379     publishers:
380       - robot-report:
381           output-path: ''
382
383       - fdio-infra-shiplogs:
384           maven-version: 'mvn33-new'