CSIT-1399 Run VPP_Device tests per csit patch
[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: 'vpp-csit-device'
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             - patchset-created-event:
105                 exclude-drafts: 'true'
106                 exclude-trivial-rebase: 'false'
107                 exclude-no-code-change: 'false'
108             - draft-published-event
109             - comment-added-contains-event:
110                 comment-contains-value: 'recheck'
111             - comment-added-contains-event:
112                 comment-contains-value: 'reverify'
113             - comment-added-contains-event:
114                 comment-contains-value: 'csit-devicetest'
115           projects:
116             - project-compare-type: 'ANT'
117               project-pattern: '{project}'
118               branches:
119                 - branch-compare-type: 'ANT'
120                   branch-pattern: '**/{branch}'
121
122     builders:
123       - shell:
124           !include-raw-escape: jjb/csit/include-raw-csit-device-verify.sh
125
126     publishers:
127       - archive-artifacts:
128           artifacts: 'archive/*.*'
129           latest-only: false
130       - robot:
131           output-path: archive
132           other-files:
133             - '*.*'
134       - fdio-infra-shiplogs:
135           maven-version: 'mvn33-new'