csit-func.yaml revision 69502b43
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      - '1904':
40          branch: 'rls1904'
41          branch-id: 'oper-rls1904'
42    stream:
43      - master:
44          branch: 'master'
45      - '1807':
46          branch: 'rls1807'
47      - '1810':
48          branch: 'rls1810'
49      - '1901':
50          branch: 'rls1901'
51      - '1904':
52          branch: 'rls1904'
53
54- job-template:
55    name: 'csit-vpp-verify-{stream_timed}-{os}-weekly'
56    # yamllint disable-line rule:line-length
57    description: 'Purpose of this job is to validate CSIT code of corresponding branch against verified vpp build from corresponding branch.'
58    # yamllint enable rule:line-length
59
60    project-type: freestyle
61    node: '{os}-basebuild-4c-4g'
62    concurrent: false
63    archive-artifacts: >
64      **/csit/report.html
65      **/csit/log.html
66      **/csit/output.xml
67    latest-only: false
68
69    build-discarder:
70      daysToKeep: '{build-days-to-keep}'
71      numToKeep: '{build-num-to-keep}'
72      artifactDaysToKeep: '{build-artifact-days-to-keep}'
73      artifactNumToKeep: '{build-artifact-num-to-keep}'
74
75    parameters:
76      - project-parameter:
77          project: '{project}'
78      - gerrit-parameter:
79          branch: '{branch}'
80      - string:
81          name: ARCHIVE_ARTIFACTS
82          default: '{archive-artifacts}'
83          description: Artifacts to archive to the logs server.
84
85    scm:
86      - git-scm:
87          credentials-id: 'jenkins-gerrit-credentials'
88          branch: '{branch}'
89
90    wrappers:
91      - fdio-infra-wrappers-non-activity-timeout:
92          build-timeout: '{build-timeout}'
93
94    triggers:
95      - timed: '0 4 * * 0'
96
97      - gerrit-trigger-manually-triggered:
98          comment-trigger-value: 'csit-vpp-ref-verify'
99          name: '{project}'
100          branch: '{branch}'
101
102    builders:
103      - shell:
104          !include-raw-escape: jjb/csit/include-raw-csit-vpp-verify-weekly.sh
105
106    publishers:
107      - robot-report:
108          output-path: ''
109
110      - fdio-infra-shiplogs:
111          maven-version: 'mvn33-new'
112
113- job-template:
114    name: 'csit-vpp-verify-{stream_timed}-{os}-semiweekly'
115    # yamllint disable-line rule:line-length
116    description: 'Purpose of this job is to validate latest vpp build from corresponding branch stored in nexus against verified CSIT codebase of corresponding branch.'
117    # yamllint enable rule:line-length
118
119    project-type: freestyle
120    node: '{os}-basebuild-4c-4g'
121    concurrent: false
122    archive-artifacts: 'csit/archive/*.*'
123    latest-only: false
124
125    build-discarder:
126      daysToKeep: '{build-days-to-keep}'
127      numToKeep: '{build-num-to-keep}'
128      artifactDaysToKeep: '{build-artifact-days-to-keep}'
129      artifactNumToKeep: '{build-artifact-num-to-keep}'
130
131    parameters:
132      - project-parameter:
133          project: '{project}'
134      - gerrit-parameter:
135          branch: '{branch}'
136      - string:
137          name: ARCHIVE_ARTIFACTS
138          default: '{archive-artifacts}'
139          description: Artifacts to archive to the logs server.
140
141    wrappers:
142      - fdio-infra-wrappers-non-activity-timeout:
143          build-timeout: '{build-timeout}'
144
145    triggers:
146      - timed: '0 4 * * 2,6'
147
148      - gerrit-trigger-manually-triggered:
149          comment-trigger-value: 'csit-verify-vpp'
150          name: '{project}'
151          branch: '{branch}'
152
153    builders:
154      - shell: 'echo "BRANCH_ID={branch-id}" > $WORKSPACE/variables.prop'
155      - inject:
156          properties-file: variables.prop
157      - shell:
158          # yamllint disable-line rule:line-length
159          !include-raw-escape: jjb/csit/include-raw-csit-vpp-verify-semiweekly.sh
160          # yamllint enable rule:line-length
161
162    publishers:
163      - robot-report:
164          output-path: 'csit/archive'
165
166      - fdio-infra-shiplogs:
167          maven-version: 'mvn33-new'
168
169- job-template:
170    name: 'csit-vpp-functional-{stream}-{os}-virl'
171
172    project-type: freestyle
173    node: '{os}-basebuild-4c-4g'
174    concurrent: true
175    archive-artifacts: >
176      **/csit/report.html
177      **/csit/log.html
178      **/csit/output.xml
179    latest-only: false
180
181    build-discarder:
182      daysToKeep: '{build-days-to-keep}'
183      numToKeep: '{build-num-to-keep}'
184      artifactDaysToKeep: '{build-artifact-days-to-keep}'
185      artifactNumToKeep: '{build-artifact-num-to-keep}'
186
187    parameters:
188      - project-parameter:
189          project: '{project}'
190      - gerrit-parameter:
191          branch: '{branch}'
192      - string:
193          name: ARCHIVE_ARTIFACTS
194          default: '{archive-artifacts}'
195          description: Artifacts to archive to the logs server.
196
197    scm:
198      - gerrit-trigger-scm:
199          credentials-id: 'jenkins-gerrit-credentials'
200          refspec: '$GERRIT_REFSPEC'
201          choosing-strategy: 'gerrit'
202
203    wrappers:
204      - fdio-infra-wrappers:
205          build-timeout: '{build-timeout}'
206
207    triggers:
208      - gerrit-trigger-patch-submitted:
209          name: '{project}'
210          branch: '{branch}'
211
212    builders:
213      - shell:
214          !include-raw-escape: include-raw-csit-vpp-functional-virl.sh
215
216    publishers:
217      - robot-report:
218          output-path: ''
219
220      - fdio-infra-shiplogs:
221          maven-version: 'mvn33-new'
222
223- job-template:
224    name: 'csit-nsh_sfc-verify-func-{stream}-{os}-virl'
225
226    project-type: freestyle
227    node: '{os}-basebuild-4c-4g'
228    concurrent: true
229    archive-artifacts: 'archive/*.*'
230    latest-only: false
231
232    build-discarder:
233      daysToKeep: '{build-days-to-keep}'
234      numToKeep: '{build-num-to-keep}'
235      artifactDaysToKeep: '{build-artifact-days-to-keep}'
236      artifactNumToKeep: '{build-artifact-num-to-keep}'
237
238    parameters:
239      - project-parameter:
240          project: '{project}'
241      - gerrit-parameter:
242          branch: '{branch}'
243      - os-parameter:
244          os: '{os}'
245      - stream-parameter:
246          stream: '{stream}'
247      - string:
248          name: ARCHIVE_ARTIFACTS
249          default: '{archive-artifacts}'
250          description: Artifacts to archive to the logs server.
251
252    scm:
253      - gerrit-trigger-scm:
254          credentials-id: 'jenkins-gerrit-credentials'
255          refspec: '$GERRIT_REFSPEC'
256          choosing-strategy: 'gerrit'
257
258    wrappers:
259      - fdio-infra-wrappers:
260          build-timeout: '{build-timeout}'
261
262    triggers:
263      - gerrit-trigger-manually-triggered:
264          name: '{project}'
265          branch: '{branch}'
266          comment-trigger-value: 'csit_nsh_sfc_func_{stream}'
267
268    builders:
269      - shell:
270          !include-raw-escape: include-raw-csit-nsh_sfc-functional-virl.sh
271
272    publishers:
273      - robot-report:
274          output-path: 'archive'
275
276      - fdio-infra-shiplogs:
277          maven-version: 'mvn33-new'
278
279- job-template:
280    name: 'csit-tldk-verify-func-{stream}-{os}-virl'
281
282    project-type: freestyle
283    node: '{os}-basebuild-4c-4g'
284    concurrent: true
285    archive-artifacts: 'archive/*.*'
286    latest-only: false
287
288    build-discarder:
289      daysToKeep: '{build-days-to-keep}'
290      numToKeep: '{build-num-to-keep}'
291      artifactDaysToKeep: '{build-artifact-days-to-keep}'
292      artifactNumToKeep: '{build-artifact-num-to-keep}'
293
294    parameters:
295      - project-parameter:
296          project: '{project}'
297      - gerrit-parameter:
298          branch: '{branch}'
299      - os-parameter:
300          os: '{os}'
301      - string:
302          name: ARCHIVE_ARTIFACTS
303          default: '{archive-artifacts}'
304          description: Artifacts to archive to the logs server.
305
306    scm:
307      - gerrit-trigger-scm:
308          credentials-id: 'jenkins-gerrit-credentials'
309          refspec: '$GERRIT_REFSPEC'
310          choosing-strategy: 'gerrit'
311
312    wrappers:
313      - fdio-infra-wrappers:
314          build-timeout: '{build-timeout}'
315
316    triggers:
317      - gerrit-trigger-manually-triggered:
318          name: '{project}'
319          branch: '{branch}'
320          comment-trigger-value: 'csit_verify_tldk_func'
321
322    builders:
323      - shell:
324          !include-raw-escape: include-raw-csit-tldk-functional-virl.sh
325
326    publishers:
327      - robot-report:
328          output-path: 'archive'
329
330      - fdio-infra-shiplogs:
331          maven-version: 'mvn33-new'
332
333- job-template:
334    name: 'csit-dmm-functional-{stream}-ubuntu1604-virl'
335
336    project-type: freestyle
337    node: 'ubuntu1604-basebuild-4c-4g'
338    concurrent: true
339    archive-artifacts: 'archive/*.*'
340    latest-only: false
341
342    build-discarder:
343      daysToKeep: '{build-days-to-keep}'
344      numToKeep: '{build-num-to-keep}'
345      artifactDaysToKeep: '{build-artifact-days-to-keep}'
346      artifactNumToKeep: '{build-artifact-num-to-keep}'
347
348    parameters:
349      - project-parameter:
350          project: '{project}'
351      - gerrit-parameter:
352          branch: '{branch}'
353      - string:
354          name: ARCHIVE_ARTIFACTS
355          default: '{archive-artifacts}'
356          description: Artifacts to archive to the logs server.
357
358    scm:
359      - gerrit-trigger-scm:
360          credentials-id: 'jenkins-gerrit-credentials'
361          refspec: '$GERRIT_REFSPEC'
362          choosing-strategy: 'gerrit'
363
364    wrappers:
365      - fdio-infra-wrappers:
366          build-timeout: '{build-timeout}'
367
368    triggers:
369      - gerrit-trigger-manually-triggered:
370          name: '{project}'
371          branch: '{branch}'
372          comment-trigger-value: 'csit_verify_dmm_func'
373
374    builders:
375      - shell:
376          !include-raw-escape: include-raw-csit-dmm-functional-virl.sh
377
378    publishers:
379      - robot-report:
380          output-path: ''
381
382      - fdio-infra-shiplogs:
383          maven-version: 'mvn33-new'
384