Use fdio-infra-publish for nomad executor based jobs
[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-publish
134
135 - job-template:
136     name: 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}-semiweekly'
137
138     project-type: freestyle
139     node: 'csit-builder-{os}-prod-{executor-arch}'
140     concurrent: false
141     archive-artifacts: 'csit/archive/*.*'
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       - os-parameter:
156           os: '{os}'
157       - string:
158           name: ARCHIVE_ARTIFACTS
159           default: '{archive-artifacts}'
160           description: Artifacts to archive to the logs server.
161
162     wrappers:
163       - fdio-infra-wrappers-non-activity-timeout:
164           build-timeout: '{build-timeout}'
165
166     triggers:
167       - timed: '0 4 * * 2,6'
168
169       - gerrit-trigger-manually-triggered:
170           comment-trigger-value: 'csit-verify-vpp'
171           name: '{project}'
172           branch: '{branch}'
173
174     builders:
175       - shell: 'echo "BRANCH_ID={branch-id}" > $WORKSPACE/variables.prop'
176       - inject:
177           properties-file: variables.prop
178       - shell:
179           !include-raw-escape:
180           - ../scripts/setup_executor_env.sh
181       - shell:
182           !include-raw-escape:
183           - ../scripts/csit/device-semiweekly.sh
184
185     publishers:
186       - robot:
187           output-path: 'archives'
188           other-files:
189             - '*.*'
190       - fdio-infra-publish
191
192 - job-template:
193     name: 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}-weekly'
194
195     project-type: freestyle
196     node: 'csit-builder-{os}-prod-{executor-arch}'
197     concurrent: false
198     archive-artifacts: 'archive/*.*'
199     latest-only: false
200
201     build-discarder:
202       daysToKeep: '{build-days-to-keep}'
203       numToKeep: '{build-num-to-keep}'
204       artifactDaysToKeep: '{build-artifact-days-to-keep}'
205       artifactNumToKeep: '{build-artifact-num-to-keep}'
206
207     parameters:
208       - project-parameter:
209           project: '{project}'
210       - gerrit-parameter:
211           branch: '{branch}'
212       - os-parameter:
213           os: '{os}'
214       - string:
215           name: ARCHIVE_ARTIFACTS
216           default: '{archive-artifacts}'
217           description: Artifacts to archive to the logs server.
218
219     scm:
220       - git-scm:
221           credentials-id: 'jenkins-gerrit-credentials'
222           branch: '{branch}'
223
224     wrappers:
225       - fdio-infra-wrappers-non-activity-timeout:
226           build-timeout: '{build-timeout}'
227
228     triggers:
229       - timed: '0 4 * * 0'
230
231       - gerrit-trigger-manually-triggered:
232           comment-trigger-value: 'csit-vpp-ref-verify'
233           name: '{project}'
234           branch: '{branch}'
235
236     builders:
237       - shell:
238           !include-raw-escape:
239           - ../scripts/setup_executor_env.sh
240       - shell:
241           !include-raw-escape:
242           - ../scripts/csit/device-verify.sh
243
244     publishers:
245       - robot:
246           output-path: 'archives'
247           other-files:
248             - '*.*'
249       - fdio-infra-publish