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