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