CSIT-1306 Add vpp-device verify job
[ci-management.git] / jjb / csit / csit-vpp-device.yaml
1 # Copyright (c) 2018 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     topo:
21       - '1n'
22     arch:
23       - 'skx'
24     jobs:
25       - 'csit-vpp-device-{stream}-{os}-{topo}-{arch}'
26     project: 'csit'
27     branch: 'master'
28     branch-id: 'oper'
29     stream:
30       - master:
31           branch: 'master'
32           branch-id: 'oper'
33       - '1810':
34           branch: 'rls1810'
35           branch-id: 'oper-rls1810'
36
37 - job-template:
38     name: 'csit-vpp-device-{stream}-{os}-{topo}-{arch}'
39     description: |
40       <ul>
41           <li>objective
42               <ul>
43                   <li>vpp-device verify - per csit gerrit patch
44               </ul>
45           <li>job
46               <ul>
47                   <li>name: <b>csit-vpp-device-{stream}-{os}-{topo}-{arch}</b>
48                   <li>trigger: keyword in comment to csit patch:
49                       <b>csit-devicetest tag_list</b>
50               </ul>
51           <li>test-cases selection
52               <ul>
53                   <li>test-cases selected using trigger keyword followed by tags
54                   <li>all test-cases are labelled with CSIT RF topic tags
55                       defined in <i>csit/docs/tag_documentation.rst</i>
56               </ul>
57           <li>default tags for vpp-device test type
58               <ul>
59                   <li>devicetest
60               </ul>
61           <li>results
62               <ul>
63                   <li>jjb verify: PASS/FAIL
64                   <li>present: no
65                   <li>analyse: no
66               </ul>
67       </ul>
68
69     project-type: freestyle
70     node: 'foo'
71     concurrent: true
72
73     build-discarder:
74       daysToKeep: '{build-days-to-keep}'
75       numToKeep: '{build-num-to-keep}'
76       artifactDaysToKeep: '{build-artifact-days-to-keep}'
77       artifactNumToKeep: '{build-artifact-num-to-keep}'
78
79     parameters:
80       - project-parameter:
81           project: '{project}'
82       - gerrit-parameter:
83           branch: '{branch}'
84       - os-parameter:
85           os: '{os}'
86       - gerrit-refspec-parameter
87       - gerrit-event-type-parameter
88       - gerrit-event-comment-text-parameter
89
90     scm:
91       - gerrit-trigger-scm:
92           credentials-id: 'jenkins-gerrit-credentials'
93           refspec: '$GERRIT_REFSPEC'
94           choosing-strategy: 'gerrit'
95
96     wrappers:
97       - fdio-infra-wrappers:
98           build-timeout: '{build-timeout}'
99
100     triggers:
101       - gerrit:
102           server-name: 'Primary'
103           trigger-on:
104             - comment-added-contains-event:
105                 comment-contains-value: 'csit-devicetest'
106           projects:
107             - project-compare-type: 'ANT'
108               project-pattern: '{project}'
109               branches:
110                 - branch-compare-type: 'ANT'
111                   branch-pattern: '**/{branch}'
112           skip-vote:
113             successful: true
114             failed: true
115             unstable: true
116             notbuilt: true
117
118     builders:
119       - shell:
120           !include-raw-escape: jjb/csit/include-raw-csit-device-verify.sh
121
122     publishers:
123       - archive-artifacts:
124           artifacts: 'archive/*.*'
125           latest-only: false
126       - robot:
127           output-path: archive
128           other-files:
129             - '*.*'
130       - fdio-infra-shiplogs:
131           maven-version: 'mvn33-new'