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