CSIT: Convert jobs to ubuntu2004 part.IV
[ci-management.git] / jjb / csit / csit-vpp-device.yaml
1 # Copyright (c) 2021 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     node-arch:
19       - '1n-skx':
20           os: 'ubuntu2004'
21           executor-arch: 'x86_64'
22           skip-vote: 'false'
23       - '1n-tx2':
24           os: 'ubuntu2004'
25           executor-arch: 'aarch64'
26           skip-vote: 'true'
27     jobs:
28       - 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}'
29       - 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}-semiweekly':
30           stream:
31             - master:
32                 branch: 'master'
33                 branch-id: 'oper'
34             - '2009_lts':
35                 branch: 'rls2009_lts'
36                 branch-id: 'oper-rls2009_lts'
37             - '2101':
38                 branch: 'rls2101'
39                 branch-id: 'oper-rls2101'
40       - 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}-weekly':
41           stream:
42             - master:
43                 branch: 'master'
44                 branch-id: 'oper'
45             - '2009_lts':
46                 branch: 'rls2009_lts'
47                 branch-id: 'oper-rls2009_lts'
48             - '2101':
49                 branch: 'rls2101'
50                 branch-id: 'oper-rls2101'
51
52     project: 'csit'
53     branch: 'master'
54     branch-id: 'oper'
55     stream:
56       - master:
57           branch: 'master'
58           branch-id: 'oper'
59       - '2009':
60           branch: 'rls2009'
61           branch-id: 'oper-rls2009'
62       - '2009_lts':
63           branch: 'rls2009_lts'
64           branch-id: 'oper-rls2009_lts'
65       - '2101':
66           branch: 'rls2101'
67           branch-id: 'oper-rls2101'
68
69 - job-template:
70     name: 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}'
71
72     project-type: freestyle
73     node: 'csit-builder-{os}-prod-{executor-arch}'
74     concurrent: true
75     archive-artifacts: 'archive/*.*'
76     latest-only: false
77
78     build-discarder:
79       daysToKeep: '{build-days-to-keep}'
80       numToKeep: '{build-num-to-keep}'
81       artifactDaysToKeep: '{build-artifact-days-to-keep}'
82       artifactNumToKeep: '{build-artifact-num-to-keep}'
83
84     parameters:
85       - project-parameter:
86           project: '{project}'
87       - gerrit-parameter:
88           branch: '{branch}'
89       - os-parameter:
90           os: '{os}'
91       - gerrit-refspec-parameter
92       - gerrit-event-type-parameter
93       - gerrit-event-comment-text-parameter
94       - string:
95           name: ARCHIVE_ARTIFACTS
96           default: '{archive-artifacts}'
97           description: Artifacts to archive to the logs server.
98       # This is an automatic verify job, part of API coverage.
99       # CRC checking is needed to ensure vpp crc job breaks only when intended.
100       # Unlikely to be removed, as this job is primary source of API coverage.
101       - csit-fail-on-crc-mismatch-parameter:
102           fail-on-crc-mismatch: 'True'
103
104     scm:
105       - gerrit-trigger-scm:
106           credentials-id: 'jenkins-gerrit-credentials'
107           refspec: '$GERRIT_REFSPEC'
108           choosing-strategy: 'gerrit'
109
110     wrappers:
111       - fdio-infra-wrappers:
112           build-timeout: '{build-timeout}'
113
114     triggers:
115       - gerrit-trigger-csit-vpp-devicetest-full:
116           project: '{project}'
117           branch: '{branch}'
118           skip-vote: '{skip-vote}'
119
120     builders:
121       - shell:
122           !include-raw-escape:
123           - ../scripts/setup_executor_env.sh
124       - shell:
125           !include-raw-escape:
126           - ../scripts/csit/device-verify.sh
127
128     publishers:
129       - robot:
130           output-path: 'archives'
131           other-files:
132             - '*.*'
133       - fdio-infra-shiplogs:
134           maven-version: 'mvn33-new'
135
136 - job-template:
137     name: 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}-semiweekly'
138
139     project-type: freestyle
140     node: 'csit-builder-{os}-prod-{executor-arch}'
141     concurrent: false
142     archive-artifacts: 'csit/archive/*.*'
143     latest-only: false
144
145     build-discarder:
146       daysToKeep: '{build-days-to-keep}'
147       numToKeep: '{build-num-to-keep}'
148       artifactDaysToKeep: '{build-artifact-days-to-keep}'
149       artifactNumToKeep: '{build-artifact-num-to-keep}'
150
151     parameters:
152       - project-parameter:
153           project: '{project}'
154       - gerrit-parameter:
155           branch: '{branch}'
156       - os-parameter:
157           os: '{os}'
158       - string:
159           name: ARCHIVE_ARTIFACTS
160           default: '{archive-artifacts}'
161           description: Artifacts to archive to the logs server.
162
163     wrappers:
164       - fdio-infra-wrappers-non-activity-timeout:
165           build-timeout: '{build-timeout}'
166
167     triggers:
168       - timed: '0 4 * * 2,6'
169
170       - gerrit-trigger-manually-triggered:
171           comment-trigger-value: 'csit-verify-vpp'
172           name: '{project}'
173           branch: '{branch}'
174
175     builders:
176       - shell: 'echo "BRANCH_ID={branch-id}" > $WORKSPACE/variables.prop'
177       - inject:
178           properties-file: variables.prop
179       - shell:
180           !include-raw-escape:
181           - ../scripts/setup_executor_env.sh
182       - shell:
183           !include-raw-escape:
184           - ../scripts/csit/device-semiweekly.sh
185
186     publishers:
187       - robot:
188           output-path: 'archives'
189           other-files:
190             - '*.*'
191       - fdio-infra-shiplogs:
192           maven-version: 'mvn33-new'
193
194 - job-template:
195     name: 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}-weekly'
196
197     project-type: freestyle
198     node: 'csit-builder-{os}-prod-{executor-arch}'
199     concurrent: false
200     archive-artifacts: 'archive/*.*'
201     latest-only: false
202
203     build-discarder:
204       daysToKeep: '{build-days-to-keep}'
205       numToKeep: '{build-num-to-keep}'
206       artifactDaysToKeep: '{build-artifact-days-to-keep}'
207       artifactNumToKeep: '{build-artifact-num-to-keep}'
208
209     parameters:
210       - project-parameter:
211           project: '{project}'
212       - gerrit-parameter:
213           branch: '{branch}'
214       - os-parameter:
215           os: '{os}'
216       - string:
217           name: ARCHIVE_ARTIFACTS
218           default: '{archive-artifacts}'
219           description: Artifacts to archive to the logs server.
220
221     scm:
222       - git-scm:
223           credentials-id: 'jenkins-gerrit-credentials'
224           branch: '{branch}'
225
226     wrappers:
227       - fdio-infra-wrappers-non-activity-timeout:
228           build-timeout: '{build-timeout}'
229
230     triggers:
231       - timed: '0 4 * * 0'
232
233       - gerrit-trigger-manually-triggered:
234           comment-trigger-value: 'csit-vpp-ref-verify'
235           name: '{project}'
236           branch: '{branch}'
237
238     builders:
239       - shell:
240           !include-raw-escape:
241           - ../scripts/setup_executor_env.sh
242       - shell:
243           !include-raw-escape:
244           - ../scripts/csit/device-verify.sh
245
246     publishers:
247       - robot:
248           output-path: 'archives'
249           other-files:
250             - '*.*'
251       - fdio-infra-shiplogs:
252           maven-version: 'mvn33-new'