Add CSIT rls2009 branch
[ci-management.git] / jjb / csit / csit-vpp-device.yaml
1 # Copyright (c) 2020 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-vpp-device
17     description: 'CSIT jenkins jobs.'
18     os:
19       - 'ubuntu1804'
20     node-arch:
21       - '1n-skx'
22       - '1n-tx2':
23           executor: 'vpp-csit-arm-ubuntu18'
24           skip-vote: 'true'
25           trigger: 'gerrit-trigger-csit-vpp-devicetest-manual'
26     jobs:
27       - 'csit-vpp-device-{stream}-{os}-{node-arch}'
28       - 'csit-vpp-device-{stream}-{os}-{node-arch}-semiweekly':
29           stream:
30             - master:
31                 branch: 'master'
32                 branch-id: 'oper'
33             - '1908_2':
34                 branch: 'rls1908_2'
35                 branch-id: 'oper-rls1908_2'
36             - '2009':
37                 branch: 'rls2009'
38                 branch-id: 'oper-rls2009'
39       - 'csit-vpp-device-{stream}-{os}-{node-arch}-weekly':
40           stream:
41             - master:
42                 branch: 'master'
43                 branch-id: 'oper'
44             - '1908_2':
45                 branch: 'rls1908_2'
46                 branch-id: 'oper-rls1908_2'
47             - '2009':
48                 branch: 'rls2009'
49                 branch-id: 'oper-rls2009'
50       - 'csit-vpp-device-master-{os}-1n-tx2-csit-verify-hourly'
51       - 'csit-vpp-device-master-{os}-1n-tx2-vpp-verify-hourly'
52
53     project: 'csit'
54     executor: 'vpp-csit-device'
55     branch: 'master'
56     branch-id: 'oper'
57     trigger: 'gerrit-trigger-csit-vpp-devicetest-full'
58     stream:
59       - master:
60           branch: 'master'
61           branch-id: 'oper'
62       - '1908_2':
63           branch: 'rls1908_2'
64           branch-id: 'oper-rls1908_2'
65       - '2005':
66           branch: 'rls2005'
67           branch-id: 'oper-rls2005'
68       - '2009':
69           branch: 'rls2009'
70           branch-id: 'oper-rls2009'
71
72 - job-template:
73     name: 'csit-vpp-device-{stream}-{os}-{node-arch}'
74     description: |
75       <ul>
76           <li>objective
77               <ul>
78                   <li>vpp-device verify - per csit gerrit patch
79               </ul>
80           <li>job
81               <ul>
82                   <li>name: <b>csit-vpp-device-{stream}-{os}-{node-arch}</b>
83                   <li>trigger: keyword in comment to csit patch:
84                       <b>csit-devicetest tag_list</b>
85               </ul>
86           <li>executor
87               <ul>
88                   <li>{executor}
89               </ul>
90           <li>test-cases selection
91               <ul>
92                   <li>test-cases selected using trigger keyword followed by tags
93                   <li>all test-cases are labelled with CSIT RF topic tags
94                       defined in <i>csit/docs/tag_documentation.rst</i>
95               </ul>
96           <li>default tags for vpp-device test type
97               <ul>
98                   <li>devicetest
99               </ul>
100           <li>results
101               <ul>
102                   <li>jjb verify: PASS/FAIL
103                   <li>present: no
104                   <li>analyse: no
105               </ul>
106       </ul>
107
108     project-type: freestyle
109     node: '{executor}'
110     concurrent: true
111     archive-artifacts: 'archive/*.*'
112     latest-only: false
113
114     build-discarder:
115       daysToKeep: '{build-days-to-keep}'
116       numToKeep: '{build-num-to-keep}'
117       artifactDaysToKeep: '{build-artifact-days-to-keep}'
118       artifactNumToKeep: '{build-artifact-num-to-keep}'
119
120     parameters:
121       - project-parameter:
122           project: '{project}'
123       - gerrit-parameter:
124           branch: '{branch}'
125       - os-parameter:
126           os: '{os}'
127       - gerrit-refspec-parameter
128       - gerrit-event-type-parameter
129       - gerrit-event-comment-text-parameter
130       - string:
131           name: ARCHIVE_ARTIFACTS
132           default: '{archive-artifacts}'
133           description: Artifacts to archive to the logs server.
134       # This is an automatic verify job, part of API coverage.
135       # CRC checking is needed to ensure vpp crc job breaks only when intended.
136       # Unlikely to be removed, as this job is primary source of API coverage.
137       - csit-fail-on-crc-mismatch-parameter:
138           fail-on-crc-mismatch: 'True'
139
140     scm:
141       - gerrit-trigger-scm:
142           credentials-id: 'jenkins-gerrit-credentials'
143           refspec: '$GERRIT_REFSPEC'
144           choosing-strategy: 'gerrit'
145
146     wrappers:
147       - fdio-infra-wrappers:
148           build-timeout: '{build-timeout}'
149
150     triggers:
151       - '{trigger}':
152           project: '{project}'
153           branch: '{branch}'
154           skip-vote: '{skip-vote}'
155
156     builders:
157       - shell:
158           !include-raw-escape:
159           - ../scripts/csit/device-verify.sh
160
161     publishers:
162       - robot:
163           output-path: archive
164           other-files:
165             - '*.*'
166       - fdio-infra-shiplogs:
167           maven-version: 'mvn33-new'
168
169 - job-template:
170     name: 'csit-vpp-device-{stream}-{os}-{node-arch}-semiweekly'
171     description: |
172       <ul>
173           <li>objective
174               <ul>
175                   <li>Validate latest vpp build from corresponding branch stored
176                       in nexus against verified CSIT codebase of corresponding
177                       branch.
178               </ul>
179           <li>executor
180               <ul>
181                   <li>{executor}
182               </ul>
183           <li>test-cases selection
184               <ul>
185                   <li>pre-selected test-cases
186                   <li>all test-cases are labelled with CSIT RF topic tags
187                       defined in <i>csit/docs/tag_documentation.rst</i>
188               </ul>
189           <li>default tags for vpp-device test type
190               <ul>
191                   <li>devicetest
192               </ul>
193           <li>results
194               <ul>
195                   <li>jjb verify: PASS/FAIL
196                   <li>present: no
197                   <li>analyse: no
198               </ul>
199       </ul>
200
201     project-type: freestyle
202     node: '{executor}'
203     concurrent: false
204     archive-artifacts: 'csit/archive/*.*'
205     latest-only: false
206
207     build-discarder:
208       daysToKeep: '{build-days-to-keep}'
209       numToKeep: '{build-num-to-keep}'
210       artifactDaysToKeep: '{build-artifact-days-to-keep}'
211       artifactNumToKeep: '{build-artifact-num-to-keep}'
212
213     parameters:
214       - project-parameter:
215           project: '{project}'
216       - gerrit-parameter:
217           branch: '{branch}'
218       - os-parameter:
219           os: '{os}'
220       - string:
221           name: ARCHIVE_ARTIFACTS
222           default: '{archive-artifacts}'
223           description: Artifacts to archive to the logs server.
224
225     wrappers:
226       - fdio-infra-wrappers-non-activity-timeout:
227           build-timeout: '{build-timeout}'
228
229     triggers:
230       - timed: '0 4 * * 2,6'
231
232       - gerrit-trigger-manually-triggered:
233           comment-trigger-value: 'csit-verify-vpp'
234           name: '{project}'
235           branch: '{branch}'
236
237     builders:
238       - shell: 'echo "BRANCH_ID={branch-id}" > $WORKSPACE/variables.prop'
239       - inject:
240           properties-file: variables.prop
241       - shell:
242           !include-raw-escape:
243           - ../scripts/csit/device-semiweekly.sh
244
245     publishers:
246       - robot:
247           output-path: 'csit/archive'
248           other-files:
249             - '*.*'
250       - fdio-infra-shiplogs:
251           maven-version: 'mvn33-new'
252
253 - job-template:
254     name: 'csit-vpp-device-{stream}-{os}-{node-arch}-weekly'
255     description: |
256       <ul>
257           <li>objective
258               <ul>
259                   <li>Validate CSIT code of corresponding branch against
260                       verified vpp build from corresponding branch.
261               </ul>
262           <li>executor
263               <ul>
264                   <li>{executor}
265               </ul>
266           <li>test-cases selection
267               <ul>
268                   <li>pre-selected test-cases
269                   <li>all test-cases are labelled with CSIT RF topic tags
270                       defined in <i>csit/docs/tag_documentation.rst</i>
271               </ul>
272           <li>default tags for vpp-device test type
273               <ul>
274                   <li>devicetest
275               </ul>
276           <li>results
277               <ul>
278                   <li>jjb verify: PASS/FAIL
279                   <li>present: no
280                   <li>analyse: no
281               </ul>
282       </ul>
283
284     project-type: freestyle
285     node: '{executor}'
286     concurrent: false
287     archive-artifacts: 'archive/*.*'
288     latest-only: false
289
290     build-discarder:
291       daysToKeep: '{build-days-to-keep}'
292       numToKeep: '{build-num-to-keep}'
293       artifactDaysToKeep: '{build-artifact-days-to-keep}'
294       artifactNumToKeep: '{build-artifact-num-to-keep}'
295
296     parameters:
297       - project-parameter:
298           project: '{project}'
299       - gerrit-parameter:
300           branch: '{branch}'
301       - os-parameter:
302           os: '{os}'
303       - string:
304           name: ARCHIVE_ARTIFACTS
305           default: '{archive-artifacts}'
306           description: Artifacts to archive to the logs server.
307
308     scm:
309       - git-scm:
310           credentials-id: 'jenkins-gerrit-credentials'
311           branch: '{branch}'
312
313     wrappers:
314       - fdio-infra-wrappers-non-activity-timeout:
315           build-timeout: '{build-timeout}'
316
317     triggers:
318       - timed: '0 4 * * 0'
319
320       - gerrit-trigger-manually-triggered:
321           comment-trigger-value: 'csit-vpp-ref-verify'
322           name: '{project}'
323           branch: '{branch}'
324
325     builders:
326       - shell:
327           !include-raw-escape:
328           - ../scripts/csit/device-verify.sh
329
330     publishers:
331       - robot:
332           output-path: archive
333           other-files:
334             - '*.*'
335       - fdio-infra-shiplogs:
336           maven-version: 'mvn33-new'
337
338 - job-template:
339     name: 'csit-vpp-device-master-{os}-1n-tx2-csit-verify-hourly'
340     description: |
341       <ul>
342           <li>objective
343               <ul>
344                   <li>Validate CSIT code of corresponding branch against
345                       verified vpp build from corresponding branch.
346               </ul>
347           <li>executor
348               <ul>
349                   <li>vpp-csit-arm-ubuntu18
350               </ul>
351           <li>test-cases selection
352               <ul>
353                   <li>pre-selected test-cases
354                   <li>all test-cases are labelled with CSIT RF topic tags
355                       defined in <i>csit/docs/tag_documentation.rst</i>
356               </ul>
357           <li>default tags for vpp-device test type
358               <ul>
359                   <li>devicetest
360               </ul>
361           <li>results
362               <ul>
363                   <li>jjb verify: PASS/FAIL
364                   <li>present: no
365                   <li>analyse: no
366               </ul>
367       </ul>
368
369     project-type: freestyle
370     node: 'vpp-csit-arm-ubuntu18'
371     concurrent: false
372     archive-artifacts: 'archive/*.*'
373     latest-only: false
374
375     build-discarder:
376       daysToKeep: '{build-days-to-keep}'
377       numToKeep: '{build-num-to-keep}'
378       artifactDaysToKeep: '{build-artifact-days-to-keep}'
379       artifactNumToKeep: '{build-artifact-num-to-keep}'
380
381     parameters:
382       - project-parameter:
383           project: '{project}'
384       - gerrit-parameter:
385           branch: '{branch}'
386       - os-parameter:
387           os: 'ubuntu1804'
388       - string:
389           name: ARCHIVE_ARTIFACTS
390           default: '{archive-artifacts}'
391           description: Artifacts to archive to the logs server.
392
393     scm:
394       - git-scm:
395           credentials-id: 'jenkins-gerrit-credentials'
396           branch: '{branch}'
397
398     wrappers:
399       - fdio-infra-wrappers-non-activity-timeout:
400           build-timeout: '{build-timeout}'
401
402     triggers:
403       - timed: '0 * * * *'
404
405     builders:
406       - shell:
407           !include-raw-escape:
408           - ../scripts/csit/device-verify.sh
409
410     publishers:
411       - robot:
412           output-path: archive
413           other-files:
414             - '*.*'
415       - fdio-infra-shiplogs:
416           maven-version: 'mvn33-new'
417
418 - job-template:
419     name: 'csit-vpp-device-master-{os}-1n-tx2-vpp-verify-hourly'
420     description: |
421       <ul>
422           <li>objective
423               <ul>
424                   <li>Validate latest vpp build from corresponding branch stored
425                       in nexus against verified CSIT codebase of corresponding
426                       branch.
427               </ul>
428           <li>executor
429               <ul>
430                   <li>vpp-csit-arm-ubuntu18
431               </ul>
432           <li>test-cases selection
433               <ul>
434                   <li>pre-selected test-cases
435                   <li>all test-cases are labelled with CSIT RF topic tags
436                       defined in <i>csit/docs/tag_documentation.rst</i>
437               </ul>
438           <li>default tags for vpp-device test type
439               <ul>
440                   <li>devicetest
441               </ul>
442           <li>results
443               <ul>
444                   <li>jjb verify: PASS/FAIL
445                   <li>present: no
446                   <li>analyse: no
447               </ul>
448       </ul>
449
450     project-type: freestyle
451     node: 'vpp-csit-arm-ubuntu18'
452     concurrent: false
453     archive-artifacts: 'csit/archive/*.*'
454     latest-only: false
455
456     build-discarder:
457       daysToKeep: '{build-days-to-keep}'
458       numToKeep: '{build-num-to-keep}'
459       artifactDaysToKeep: '{build-artifact-days-to-keep}'
460       artifactNumToKeep: '{build-artifact-num-to-keep}'
461
462     parameters:
463       - project-parameter:
464           project: '{project}'
465       - gerrit-parameter:
466           branch: '{branch}'
467       - os-parameter:
468           os: 'ubuntu1804'
469       - string:
470           name: ARCHIVE_ARTIFACTS
471           default: '{archive-artifacts}'
472           description: Artifacts to archive to the logs server.
473
474     wrappers:
475       - fdio-infra-wrappers-non-activity-timeout:
476           build-timeout: '{build-timeout}'
477
478     triggers:
479       - timed: '30 * * * *'
480
481     builders:
482       - shell: 'echo "BRANCH_ID={branch-id}" > $WORKSPACE/variables.prop'
483       - inject:
484           properties-file: variables.prop
485       - shell:
486           !include-raw-escape:
487           - ../scripts/csit/device-semiweekly.sh
488
489     publishers:
490       - robot:
491           output-path: 'csit/archive'
492           other-files:
493             - '*.*'
494       - fdio-infra-shiplogs:
495           maven-version: 'mvn33-new'