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