Merge "Fix debian-9 docker image builder"
[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             - '2106':
43                 branch: 'rls2106'
44                 branch-id: 'oper-rls2106'
45       - 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}-weekly':
46           stream:
47             - master:
48                 branch: 'master'
49                 branch-id: 'oper'
50             - '2009_lts':
51                 branch: 'rls2009_lts'
52                 branch-id: 'oper-rls2009_lts'
53             - '2101':
54                 branch: 'rls2101'
55                 branch-id: 'oper-rls2101'
56             - '2106':
57                 branch: 'rls2106'
58                 branch-id: 'oper-rls2106'
59
60     project: 'csit'
61     branch: 'master'
62     branch-id: 'oper'
63     stream:
64       - master:
65           branch: 'master'
66           branch-id: 'oper'
67       - '2009_lts':
68           branch: 'rls2009_lts'
69           branch-id: 'oper-rls2009_lts'
70       - '2101':
71           branch: 'rls2101'
72           branch-id: 'oper-rls2101'
73       - '2106':
74           branch: 'rls2106'
75           branch-id: 'oper-rls2106'
76
77 - job-template:
78     name: 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}'
79
80     project-type: freestyle
81     node: 'csit-builder-{os}-prod-{executor-arch}'
82     concurrent: true
83     latest-only: false
84
85     build-discarder:
86       daysToKeep: '{build-days-to-keep}'
87       numToKeep: '{build-num-to-keep}'
88       artifactDaysToKeep: '{build-artifact-days-to-keep}'
89       artifactNumToKeep: '{build-artifact-num-to-keep}'
90
91     parameters:
92       - project-parameter:
93           project: '{project}'
94       - gerrit-parameter:
95           branch: '{branch}'
96       - make-parallel-jobs-parameter:
97           make-parallel-jobs: '{make-parallel-jobs}'
98       - os-parameter:
99           os: '{os}'
100       - gerrit-refspec-parameter
101       - gerrit-event-type-parameter
102       - gerrit-event-comment-text-parameter
103       # This is an automatic verify job, part of API coverage.
104       # CRC checking is needed to ensure vpp crc job breaks only when intended.
105       # Unlikely to be removed, as this job is primary source of API coverage.
106       - csit-fail-on-crc-mismatch-parameter:
107           fail-on-crc-mismatch: 'True'
108
109     scm:
110       - gerrit-trigger-scm:
111           credentials-id: 'jenkins-gerrit-credentials'
112           refspec: '$GERRIT_REFSPEC'
113           choosing-strategy: 'gerrit'
114
115     wrappers:
116       - fdio-infra-wrappers:
117           build-timeout: '{build-timeout}'
118
119     triggers:
120       - gerrit-trigger-csit-vpp-devicetest-full:
121           project: '{project}'
122           branch: '{branch}'
123           skip-vote: '{skip-vote}'
124
125     builders:
126       - shell:
127           !include-raw-escape:
128           - ../scripts/setup_executor_env.sh
129       - shell:
130           !include-raw-escape:
131           - ../scripts/csit/device-verify.sh
132
133     publishers:
134       - fdio-infra-publish
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     latest-only: false
143
144     build-discarder:
145       daysToKeep: '{build-days-to-keep}'
146       numToKeep: '{build-num-to-keep}'
147       artifactDaysToKeep: '{build-artifact-days-to-keep}'
148       artifactNumToKeep: '{build-artifact-num-to-keep}'
149
150     parameters:
151       - project-parameter:
152           project: '{project}'
153       - gerrit-parameter:
154           branch: '{branch}'
155       - make-parallel-jobs-parameter:
156           make-parallel-jobs: '{make-parallel-jobs}'
157       - os-parameter:
158           os: '{os}'
159
160     wrappers:
161       - fdio-infra-wrappers-non-activity-timeout:
162           build-timeout: '{build-timeout}'
163
164     triggers:
165       - timed: '0 4 * * 2,6'
166
167       - gerrit-trigger-manually-triggered:
168           comment-trigger-value: 'csit-verify-vpp'
169           name: '{project}'
170           branch: '{branch}'
171
172     builders:
173       - shell: 'echo "BRANCH_ID={branch-id}" > $WORKSPACE/variables.prop'
174       - inject:
175           properties-file: variables.prop
176       - shell:
177           !include-raw-escape:
178           - ../scripts/setup_executor_env.sh
179       - shell:
180           !include-raw-escape:
181           - ../scripts/csit/device-semiweekly.sh
182
183     publishers:
184       - fdio-infra-publish
185
186 - job-template:
187     name: 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}-weekly'
188
189     project-type: freestyle
190     node: 'csit-builder-{os}-prod-{executor-arch}'
191     concurrent: false
192     latest-only: false
193
194     build-discarder:
195       daysToKeep: '{build-days-to-keep}'
196       numToKeep: '{build-num-to-keep}'
197       artifactDaysToKeep: '{build-artifact-days-to-keep}'
198       artifactNumToKeep: '{build-artifact-num-to-keep}'
199
200     parameters:
201       - project-parameter:
202           project: '{project}'
203       - gerrit-parameter:
204           branch: '{branch}'
205       - make-parallel-jobs-parameter:
206           make-parallel-jobs: '{make-parallel-jobs}'
207       - os-parameter:
208           os: '{os}'
209
210     scm:
211       - git-scm:
212           credentials-id: 'jenkins-gerrit-credentials'
213           branch: '{branch}'
214
215     wrappers:
216       - fdio-infra-wrappers-non-activity-timeout:
217           build-timeout: '{build-timeout}'
218
219     triggers:
220       - timed: '0 4 * * 0'
221
222       - gerrit-trigger-manually-triggered:
223           comment-trigger-value: 'csit-vpp-ref-verify'
224           name: '{project}'
225           branch: '{branch}'
226
227     builders:
228       - shell:
229           !include-raw-escape:
230           - ../scripts/setup_executor_env.sh
231       - shell:
232           !include-raw-escape:
233           - ../scripts/csit/device-verify.sh
234
235     publishers:
236       - fdio-infra-publish