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