Merge "Add INFO.yaml verify job"
[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       - '1904':
40           branch: 'rls1904'
41           branch-id: 'oper-rls1904'
42     stream:
43       - master:
44           branch: 'master'
45       - '1807':
46           branch: 'rls1807'
47       - '1810':
48           branch: 'rls1810'
49       - '1901':
50           branch: 'rls1901'
51       - '1904':
52           branch: 'rls1904'
53
54 - job-template:
55     name: 'csit-vpp-verify-{stream_timed}-{os}-weekly'
56     # yamllint disable-line rule:line-length
57     description: 'Purpose of this job is to validate CSIT code of corresponding branch against verified vpp build from corresponding branch.'
58     # yamllint enable rule:line-length
59
60     project-type: freestyle
61     node: '{os}-basebuild-4c-4g'
62     concurrent: false
63     archive-artifacts: >
64       **/csit/report.html
65       **/csit/log.html
66       **/csit/output.xml
67     latest-only: false
68
69     build-discarder:
70       daysToKeep: '{build-days-to-keep}'
71       numToKeep: '{build-num-to-keep}'
72       artifactDaysToKeep: '{build-artifact-days-to-keep}'
73       artifactNumToKeep: '{build-artifact-num-to-keep}'
74
75     parameters:
76       - project-parameter:
77           project: '{project}'
78       - gerrit-parameter:
79           branch: '{branch}'
80       - string:
81           name: ARCHIVE_ARTIFACTS
82           default: '{archive-artifacts}'
83           description: Artifacts to archive to the logs server.
84
85     scm:
86       - git-scm:
87           credentials-id: 'jenkins-gerrit-credentials'
88           branch: '{branch}'
89
90     wrappers:
91       - fdio-infra-wrappers-non-activity-timeout:
92           build-timeout: '{build-timeout}'
93
94     triggers:
95       - timed: '0 4 * * 0'
96
97       - gerrit-trigger-manually-triggered:
98           comment-trigger-value: 'csit-vpp-ref-verify'
99           name: '{project}'
100           branch: '{branch}'
101
102     builders:
103       - shell:
104           !include-raw-escape: jjb/csit/include-raw-csit-vpp-verify-weekly.sh
105
106     publishers:
107       - robot-report:
108           output-path: ''
109
110       - fdio-infra-shiplogs:
111           maven-version: 'mvn33-new'
112
113 - job-template:
114     name: 'csit-vpp-verify-{stream_timed}-{os}-semiweekly'
115     # yamllint disable-line rule:line-length
116     description: 'Purpose of this job is to validate latest vpp build from corresponding branch stored in nexus against verified CSIT codebase of corresponding branch.'
117     # yamllint enable rule:line-length
118
119     project-type: freestyle
120     node: '{os}-basebuild-4c-4g'
121     concurrent: false
122     archive-artifacts: 'csit/archive/*.*'
123     latest-only: false
124
125     build-discarder:
126       daysToKeep: '{build-days-to-keep}'
127       numToKeep: '{build-num-to-keep}'
128       artifactDaysToKeep: '{build-artifact-days-to-keep}'
129       artifactNumToKeep: '{build-artifact-num-to-keep}'
130
131     parameters:
132       - project-parameter:
133           project: '{project}'
134       - gerrit-parameter:
135           branch: '{branch}'
136       - string:
137           name: ARCHIVE_ARTIFACTS
138           default: '{archive-artifacts}'
139           description: Artifacts to archive to the logs server.
140
141     wrappers:
142       - fdio-infra-wrappers-non-activity-timeout:
143           build-timeout: '{build-timeout}'
144
145     triggers:
146       - timed: '0 4 * * 2,6'
147
148       - gerrit-trigger-manually-triggered:
149           comment-trigger-value: 'csit-verify-vpp'
150           name: '{project}'
151           branch: '{branch}'
152
153     builders:
154       - shell: 'echo "BRANCH_ID={branch-id}" > $WORKSPACE/variables.prop'
155       - inject:
156           properties-file: variables.prop
157       - shell:
158           # yamllint disable-line rule:line-length
159           !include-raw-escape: jjb/csit/include-raw-csit-vpp-verify-semiweekly.sh
160           # yamllint enable rule:line-length
161
162     publishers:
163       - robot-report:
164           output-path: 'csit/archive'
165
166       - fdio-infra-shiplogs:
167           maven-version: 'mvn33-new'
168
169 - job-template:
170     name: 'csit-vpp-functional-{stream}-{os}-virl'
171
172     project-type: freestyle
173     node: '{os}-basebuild-4c-4g'
174     concurrent: true
175     archive-artifacts: >
176       **/csit/report.html
177       **/csit/log.html
178       **/csit/output.xml
179     latest-only: false
180
181     build-discarder:
182       daysToKeep: '{build-days-to-keep}'
183       numToKeep: '{build-num-to-keep}'
184       artifactDaysToKeep: '{build-artifact-days-to-keep}'
185       artifactNumToKeep: '{build-artifact-num-to-keep}'
186
187     parameters:
188       - project-parameter:
189           project: '{project}'
190       - gerrit-parameter:
191           branch: '{branch}'
192       - string:
193           name: ARCHIVE_ARTIFACTS
194           default: '{archive-artifacts}'
195           description: Artifacts to archive to the logs server.
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-patch-submitted:
209           name: '{project}'
210           branch: '{branch}'
211
212     builders:
213       - shell:
214           !include-raw-escape: include-raw-csit-vpp-functional-virl.sh
215
216     publishers:
217       - robot-report:
218           output-path: ''
219
220       - fdio-infra-shiplogs:
221           maven-version: 'mvn33-new'
222
223 - job-template:
224     name: 'csit-nsh_sfc-verify-func-{stream}-{os}-virl'
225
226     project-type: freestyle
227     node: '{os}-basebuild-4c-4g'
228     concurrent: true
229     archive-artifacts: 'archive/*.*'
230     latest-only: false
231
232     build-discarder:
233       daysToKeep: '{build-days-to-keep}'
234       numToKeep: '{build-num-to-keep}'
235       artifactDaysToKeep: '{build-artifact-days-to-keep}'
236       artifactNumToKeep: '{build-artifact-num-to-keep}'
237
238     parameters:
239       - project-parameter:
240           project: '{project}'
241       - gerrit-parameter:
242           branch: '{branch}'
243       - os-parameter:
244           os: '{os}'
245       - stream-parameter:
246           stream: '{stream}'
247       - string:
248           name: ARCHIVE_ARTIFACTS
249           default: '{archive-artifacts}'
250           description: Artifacts to archive to the logs server.
251
252     scm:
253       - gerrit-trigger-scm:
254           credentials-id: 'jenkins-gerrit-credentials'
255           refspec: '$GERRIT_REFSPEC'
256           choosing-strategy: 'gerrit'
257
258     wrappers:
259       - fdio-infra-wrappers:
260           build-timeout: '{build-timeout}'
261
262     triggers:
263       - gerrit-trigger-manually-triggered:
264           name: '{project}'
265           branch: '{branch}'
266           comment-trigger-value: 'csit_nsh_sfc_func_{stream}'
267
268     builders:
269       - shell:
270           !include-raw-escape: include-raw-csit-nsh_sfc-functional-virl.sh
271
272     publishers:
273       - robot-report:
274           output-path: 'archive'
275
276       - fdio-infra-shiplogs:
277           maven-version: 'mvn33-new'
278
279 - job-template:
280     name: 'csit-tldk-verify-func-{stream}-{os}-virl'
281
282     project-type: freestyle
283     node: '{os}-basebuild-4c-4g'
284     concurrent: true
285     archive-artifacts: 'archive/*.*'
286     latest-only: false
287
288     build-discarder:
289       daysToKeep: '{build-days-to-keep}'
290       numToKeep: '{build-num-to-keep}'
291       artifactDaysToKeep: '{build-artifact-days-to-keep}'
292       artifactNumToKeep: '{build-artifact-num-to-keep}'
293
294     parameters:
295       - project-parameter:
296           project: '{project}'
297       - gerrit-parameter:
298           branch: '{branch}'
299       - os-parameter:
300           os: '{os}'
301       - string:
302           name: ARCHIVE_ARTIFACTS
303           default: '{archive-artifacts}'
304           description: Artifacts to archive to the logs server.
305
306     scm:
307       - gerrit-trigger-scm:
308           credentials-id: 'jenkins-gerrit-credentials'
309           refspec: '$GERRIT_REFSPEC'
310           choosing-strategy: 'gerrit'
311
312     wrappers:
313       - fdio-infra-wrappers:
314           build-timeout: '{build-timeout}'
315
316     triggers:
317       - gerrit-trigger-manually-triggered:
318           name: '{project}'
319           branch: '{branch}'
320           comment-trigger-value: 'csit_verify_tldk_func'
321
322     builders:
323       - shell:
324           !include-raw-escape: include-raw-csit-tldk-functional-virl.sh
325
326     publishers:
327       - robot-report:
328           output-path: 'archive'
329
330       - fdio-infra-shiplogs:
331           maven-version: 'mvn33-new'
332
333 - job-template:
334     name: 'csit-dmm-functional-{stream}-ubuntu1604-virl'
335
336     project-type: freestyle
337     node: 'ubuntu1604-basebuild-4c-4g'
338     concurrent: true
339     archive-artifacts: 'archive/*.*'
340     latest-only: false
341
342     build-discarder:
343       daysToKeep: '{build-days-to-keep}'
344       numToKeep: '{build-num-to-keep}'
345       artifactDaysToKeep: '{build-artifact-days-to-keep}'
346       artifactNumToKeep: '{build-artifact-num-to-keep}'
347
348     parameters:
349       - project-parameter:
350           project: '{project}'
351       - gerrit-parameter:
352           branch: '{branch}'
353       - string:
354           name: ARCHIVE_ARTIFACTS
355           default: '{archive-artifacts}'
356           description: Artifacts to archive to the logs server.
357
358     scm:
359       - gerrit-trigger-scm:
360           credentials-id: 'jenkins-gerrit-credentials'
361           refspec: '$GERRIT_REFSPEC'
362           choosing-strategy: 'gerrit'
363
364     wrappers:
365       - fdio-infra-wrappers:
366           build-timeout: '{build-timeout}'
367
368     triggers:
369       - gerrit-trigger-manually-triggered:
370           name: '{project}'
371           branch: '{branch}'
372           comment-trigger-value: 'csit_verify_dmm_func'
373
374     builders:
375       - shell:
376           !include-raw-escape: include-raw-csit-dmm-functional-virl.sh
377
378     publishers:
379       - robot-report:
380           output-path: ''
381
382       - fdio-infra-shiplogs:
383           maven-version: 'mvn33-new'