c9a98631aaf15a7686ade136d06809dcf55fa930
[ci-management.git] / jjb / csit / csit-func.yaml
1 # Copyright (c) 2019 Cisco and/or its affiliates.
2 # Copyright (c) 2019 PANTHEON.tech s.r.o. and/or its affiliates.
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at:
6 #
7 #     http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 ---
16 - project:
17     name: csit-func
18     description: 'CSIT Functinal Testing Jenkins jobs.'
19     os:
20       - 'ubuntu1604'
21       - 'centos7'
22
23     jobs:
24       - 'csit-vpp-verify-{stream_timed}-{os}-weekly'
25       - 'csit-vpp-verify-{stream_timed}-{os}-semiweekly'
26       - 'csit-vpp-functional-{stream}-{os}-virl'
27       - 'csit-nsh_sfc-verify-func-{stream}-{os}-virl'
28       - 'csit-tldk-verify-func-{stream}-{os}-virl'
29       - 'csit-dmm-functional-{stream}-ubuntu1604-virl'
30
31     project: 'csit'
32     branch: 'master'
33     branch-id: 'oper'
34     build-artifact-num-to-keep: 10
35     stream_timed:
36       - master:
37           branch: 'master'
38           branch-id: 'oper'
39       - '1908':
40           branch: 'rls1908'
41           branch-id: 'oper-rls1908'
42     stream:
43       - master:
44           branch: 'master'
45       - '1901':
46           branch: 'rls1901'
47       - '1904':
48           branch: 'rls1904'
49       - '1908':
50           branch: 'rls1908'
51
52 - job-template:
53     name: 'csit-vpp-verify-{stream_timed}-{os}-weekly'
54     # yamllint disable-line rule:line-length
55     description: 'Purpose of this job is to validate CSIT code of corresponding branch against verified vpp build from corresponding branch.'
56     # yamllint enable rule:line-length
57
58     project-type: freestyle
59     node: '{os}-basebuild-4c-4g'
60     concurrent: false
61     archive-artifacts: >
62       **/csit/report.html
63       **/csit/log.html
64       **/csit/output.xml
65     latest-only: false
66
67     build-discarder:
68       daysToKeep: '{build-days-to-keep}'
69       numToKeep: '{build-num-to-keep}'
70       artifactDaysToKeep: '{build-artifact-days-to-keep}'
71       artifactNumToKeep: '{build-artifact-num-to-keep}'
72
73     parameters:
74       - project-parameter:
75           project: '{project}'
76       - gerrit-parameter:
77           branch: '{branch}'
78       - string:
79           name: ARCHIVE_ARTIFACTS
80           default: '{archive-artifacts}'
81           description: Artifacts to archive to the logs server.
82
83     scm:
84       - git-scm:
85           credentials-id: 'jenkins-gerrit-credentials'
86           branch: '{branch}'
87
88     wrappers:
89       - fdio-infra-wrappers-non-activity-timeout:
90           build-timeout: '{build-timeout}'
91
92     triggers:
93       - timed: '0 4 * * 0'
94
95       - gerrit-trigger-manually-triggered:
96           comment-trigger-value: 'csit-vpp-ref-verify'
97           name: '{project}'
98           branch: '{branch}'
99
100     builders:
101       - shell:
102           !include-raw-escape: jjb/csit/include-raw-csit-vpp-verify-weekly.sh
103
104     publishers:
105       - robot-report:
106           output-path: ''
107
108       - fdio-infra-shiplogs:
109           maven-version: 'mvn33-new'
110
111 - job-template:
112     name: 'csit-vpp-verify-{stream_timed}-{os}-semiweekly'
113     # yamllint disable-line rule:line-length
114     description: 'Purpose of this job is to validate latest vpp build from corresponding branch stored in nexus against verified CSIT codebase of corresponding branch.'
115     # yamllint enable rule:line-length
116
117     project-type: freestyle
118     node: '{os}-basebuild-4c-4g'
119     concurrent: false
120     archive-artifacts: 'csit/archive/*.*'
121     latest-only: false
122
123     build-discarder:
124       daysToKeep: '{build-days-to-keep}'
125       numToKeep: '{build-num-to-keep}'
126       artifactDaysToKeep: '{build-artifact-days-to-keep}'
127       artifactNumToKeep: '{build-artifact-num-to-keep}'
128
129     parameters:
130       - project-parameter:
131           project: '{project}'
132       - gerrit-parameter:
133           branch: '{branch}'
134       - string:
135           name: ARCHIVE_ARTIFACTS
136           default: '{archive-artifacts}'
137           description: Artifacts to archive to the logs server.
138
139     wrappers:
140       - fdio-infra-wrappers-non-activity-timeout:
141           build-timeout: '{build-timeout}'
142
143     triggers:
144       - timed: '0 4 * * 2,6'
145
146       - gerrit-trigger-manually-triggered:
147           comment-trigger-value: 'csit-verify-vpp'
148           name: '{project}'
149           branch: '{branch}'
150
151     builders:
152       - shell: 'echo "BRANCH_ID={branch-id}" > $WORKSPACE/variables.prop'
153       - inject:
154           properties-file: variables.prop
155       - shell:
156           # yamllint disable-line rule:line-length
157           !include-raw-escape: jjb/csit/include-raw-csit-vpp-verify-semiweekly.sh
158           # yamllint enable rule:line-length
159
160     publishers:
161       - robot-report:
162           output-path: 'csit/archive'
163
164       - fdio-infra-shiplogs:
165           maven-version: 'mvn33-new'
166
167 - job-template:
168     name: 'csit-vpp-functional-{stream}-{os}-virl'
169
170     project-type: freestyle
171     node: '{os}-basebuild-4c-4g'
172     concurrent: true
173     archive-artifacts: >
174       **/csit/report.html
175       **/csit/log.html
176       **/csit/output.xml
177     latest-only: false
178
179     build-discarder:
180       daysToKeep: '{build-days-to-keep}'
181       numToKeep: '{build-num-to-keep}'
182       artifactDaysToKeep: '{build-artifact-days-to-keep}'
183       artifactNumToKeep: '{build-artifact-num-to-keep}'
184
185     parameters:
186       - project-parameter:
187           project: '{project}'
188       - gerrit-parameter:
189           branch: '{branch}'
190       - string:
191           name: ARCHIVE_ARTIFACTS
192           default: '{archive-artifacts}'
193           description: Artifacts to archive to the logs server.
194
195     scm:
196       - gerrit-trigger-scm:
197           credentials-id: 'jenkins-gerrit-credentials'
198           refspec: '$GERRIT_REFSPEC'
199           choosing-strategy: 'gerrit'
200
201     wrappers:
202       - fdio-infra-wrappers:
203           build-timeout: '{build-timeout}'
204
205     triggers:
206       - gerrit-trigger-patch-submitted:
207           name: '{project}'
208           branch: '{branch}'
209
210     builders:
211       - shell:
212           !include-raw-escape: include-raw-csit-vpp-functional-virl.sh
213
214     publishers:
215       - robot-report:
216           output-path: ''
217
218       - fdio-infra-shiplogs:
219           maven-version: 'mvn33-new'
220
221 - job-template:
222     name: 'csit-nsh_sfc-verify-func-{stream}-{os}-virl'
223
224     project-type: freestyle
225     node: '{os}-basebuild-4c-4g'
226     concurrent: true
227     archive-artifacts: 'archive/*.*'
228     latest-only: false
229
230     build-discarder:
231       daysToKeep: '{build-days-to-keep}'
232       numToKeep: '{build-num-to-keep}'
233       artifactDaysToKeep: '{build-artifact-days-to-keep}'
234       artifactNumToKeep: '{build-artifact-num-to-keep}'
235
236     parameters:
237       - project-parameter:
238           project: '{project}'
239       - gerrit-parameter:
240           branch: '{branch}'
241       - os-parameter:
242           os: '{os}'
243       - stream-parameter:
244           stream: '{stream}'
245       - string:
246           name: ARCHIVE_ARTIFACTS
247           default: '{archive-artifacts}'
248           description: Artifacts to archive to the logs server.
249
250     scm:
251       - gerrit-trigger-scm:
252           credentials-id: 'jenkins-gerrit-credentials'
253           refspec: '$GERRIT_REFSPEC'
254           choosing-strategy: 'gerrit'
255
256     wrappers:
257       - fdio-infra-wrappers:
258           build-timeout: '{build-timeout}'
259
260     triggers:
261       - gerrit-trigger-manually-triggered:
262           name: '{project}'
263           branch: '{branch}'
264           comment-trigger-value: 'csit_nsh_sfc_func_{stream}'
265
266     builders:
267       - shell:
268           !include-raw-escape: include-raw-csit-nsh_sfc-functional-virl.sh
269
270     publishers:
271       - robot-report:
272           output-path: 'archive'
273
274       - fdio-infra-shiplogs:
275           maven-version: 'mvn33-new'
276
277 - job-template:
278     name: 'csit-tldk-verify-func-{stream}-{os}-virl'
279
280     project-type: freestyle
281     node: '{os}-basebuild-4c-4g'
282     concurrent: true
283     archive-artifacts: 'archive/*.*'
284     latest-only: false
285
286     build-discarder:
287       daysToKeep: '{build-days-to-keep}'
288       numToKeep: '{build-num-to-keep}'
289       artifactDaysToKeep: '{build-artifact-days-to-keep}'
290       artifactNumToKeep: '{build-artifact-num-to-keep}'
291
292     parameters:
293       - project-parameter:
294           project: '{project}'
295       - gerrit-parameter:
296           branch: '{branch}'
297       - os-parameter:
298           os: '{os}'
299       - string:
300           name: ARCHIVE_ARTIFACTS
301           default: '{archive-artifacts}'
302           description: Artifacts to archive to the logs server.
303
304     scm:
305       - gerrit-trigger-scm:
306           credentials-id: 'jenkins-gerrit-credentials'
307           refspec: '$GERRIT_REFSPEC'
308           choosing-strategy: 'gerrit'
309
310     wrappers:
311       - fdio-infra-wrappers:
312           build-timeout: '{build-timeout}'
313
314     triggers:
315       - gerrit-trigger-manually-triggered:
316           name: '{project}'
317           branch: '{branch}'
318           comment-trigger-value: 'csit_verify_tldk_func'
319
320     builders:
321       - shell:
322           !include-raw-escape: include-raw-csit-tldk-functional-virl.sh
323
324     publishers:
325       - robot-report:
326           output-path: 'archive'
327
328       - fdio-infra-shiplogs:
329           maven-version: 'mvn33-new'
330
331 - job-template:
332     name: 'csit-dmm-functional-{stream}-ubuntu1604-virl'
333
334     project-type: freestyle
335     node: 'ubuntu1604-basebuild-4c-4g'
336     concurrent: true
337     archive-artifacts: 'archive/*.*'
338     latest-only: false
339
340     build-discarder:
341       daysToKeep: '{build-days-to-keep}'
342       numToKeep: '{build-num-to-keep}'
343       artifactDaysToKeep: '{build-artifact-days-to-keep}'
344       artifactNumToKeep: '{build-artifact-num-to-keep}'
345
346     parameters:
347       - project-parameter:
348           project: '{project}'
349       - gerrit-parameter:
350           branch: '{branch}'
351       - string:
352           name: ARCHIVE_ARTIFACTS
353           default: '{archive-artifacts}'
354           description: Artifacts to archive to the logs server.
355
356     scm:
357       - gerrit-trigger-scm:
358           credentials-id: 'jenkins-gerrit-credentials'
359           refspec: '$GERRIT_REFSPEC'
360           choosing-strategy: 'gerrit'
361
362     wrappers:
363       - fdio-infra-wrappers:
364           build-timeout: '{build-timeout}'
365
366     triggers:
367       - gerrit-trigger-manually-triggered:
368           name: '{project}'
369           branch: '{branch}'
370           comment-trigger-value: 'csit_verify_dmm_func'
371
372     builders:
373       - shell:
374           !include-raw-escape: include-raw-csit-dmm-functional-virl.sh
375
376     publishers:
377       - robot-report:
378           output-path: ''
379
380       - fdio-infra-shiplogs:
381           maven-version: 'mvn33-new'