csit-func.yaml revision e38ff1ec
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-manually-triggered:
207          name: '{project}'
208          branch: '{branch}'
209          comment-trigger-value: 'csit-virltest'
210
211    builders:
212      - shell:
213          !include-raw-escape: include-raw-csit-vpp-functional-virl.sh
214
215    publishers:
216      - robot-report:
217          output-path: ''
218
219      - fdio-infra-shiplogs:
220          maven-version: 'mvn33-new'
221
222- job-template:
223    name: 'csit-nsh_sfc-verify-func-{stream}-{os}-virl'
224
225    project-type: freestyle
226    node: '{os}-basebuild-4c-4g'
227    concurrent: true
228    archive-artifacts: 'archive/*.*'
229    latest-only: false
230
231    build-discarder:
232      daysToKeep: '{build-days-to-keep}'
233      numToKeep: '{build-num-to-keep}'
234      artifactDaysToKeep: '{build-artifact-days-to-keep}'
235      artifactNumToKeep: '{build-artifact-num-to-keep}'
236
237    parameters:
238      - project-parameter:
239          project: '{project}'
240      - gerrit-parameter:
241          branch: '{branch}'
242      - os-parameter:
243          os: '{os}'
244      - stream-parameter:
245          stream: '{stream}'
246      - string:
247          name: ARCHIVE_ARTIFACTS
248          default: '{archive-artifacts}'
249          description: Artifacts to archive to the logs server.
250
251    scm:
252      - gerrit-trigger-scm:
253          credentials-id: 'jenkins-gerrit-credentials'
254          refspec: '$GERRIT_REFSPEC'
255          choosing-strategy: 'gerrit'
256
257    wrappers:
258      - fdio-infra-wrappers:
259          build-timeout: '{build-timeout}'
260
261    triggers:
262      - gerrit-trigger-manually-triggered:
263          name: '{project}'
264          branch: '{branch}'
265          comment-trigger-value: 'csit_nsh_sfc_func_{stream}'
266
267    builders:
268      - shell:
269          !include-raw-escape: include-raw-csit-nsh_sfc-functional-virl.sh
270
271    publishers:
272      - robot-report:
273          output-path: 'archive'
274
275      - fdio-infra-shiplogs:
276          maven-version: 'mvn33-new'
277
278- job-template:
279    name: 'csit-tldk-verify-func-{stream}-{os}-virl'
280
281    project-type: freestyle
282    node: '{os}-basebuild-4c-4g'
283    concurrent: true
284    archive-artifacts: 'archive/*.*'
285    latest-only: false
286
287    build-discarder:
288      daysToKeep: '{build-days-to-keep}'
289      numToKeep: '{build-num-to-keep}'
290      artifactDaysToKeep: '{build-artifact-days-to-keep}'
291      artifactNumToKeep: '{build-artifact-num-to-keep}'
292
293    parameters:
294      - project-parameter:
295          project: '{project}'
296      - gerrit-parameter:
297          branch: '{branch}'
298      - os-parameter:
299          os: '{os}'
300      - string:
301          name: ARCHIVE_ARTIFACTS
302          default: '{archive-artifacts}'
303          description: Artifacts to archive to the logs server.
304
305    scm:
306      - gerrit-trigger-scm:
307          credentials-id: 'jenkins-gerrit-credentials'
308          refspec: '$GERRIT_REFSPEC'
309          choosing-strategy: 'gerrit'
310
311    wrappers:
312      - fdio-infra-wrappers:
313          build-timeout: '{build-timeout}'
314
315    triggers:
316      - gerrit-trigger-manually-triggered:
317          name: '{project}'
318          branch: '{branch}'
319          comment-trigger-value: 'csit_verify_tldk_func'
320
321    builders:
322      - shell:
323          !include-raw-escape: include-raw-csit-tldk-functional-virl.sh
324
325    publishers:
326      - robot-report:
327          output-path: 'archive'
328
329      - fdio-infra-shiplogs:
330          maven-version: 'mvn33-new'
331
332- job-template:
333    name: 'csit-dmm-functional-{stream}-ubuntu1604-virl'
334
335    project-type: freestyle
336    node: 'ubuntu1604-basebuild-4c-4g'
337    concurrent: true
338    archive-artifacts: 'archive/*.*'
339    latest-only: false
340
341    build-discarder:
342      daysToKeep: '{build-days-to-keep}'
343      numToKeep: '{build-num-to-keep}'
344      artifactDaysToKeep: '{build-artifact-days-to-keep}'
345      artifactNumToKeep: '{build-artifact-num-to-keep}'
346
347    parameters:
348      - project-parameter:
349          project: '{project}'
350      - gerrit-parameter:
351          branch: '{branch}'
352      - string:
353          name: ARCHIVE_ARTIFACTS
354          default: '{archive-artifacts}'
355          description: Artifacts to archive to the logs server.
356
357    scm:
358      - gerrit-trigger-scm:
359          credentials-id: 'jenkins-gerrit-credentials'
360          refspec: '$GERRIT_REFSPEC'
361          choosing-strategy: 'gerrit'
362
363    wrappers:
364      - fdio-infra-wrappers:
365          build-timeout: '{build-timeout}'
366
367    triggers:
368      - gerrit-trigger-manually-triggered:
369          name: '{project}'
370          branch: '{branch}'
371          comment-trigger-value: 'csit_verify_dmm_func'
372
373    builders:
374      - shell:
375          !include-raw-escape: include-raw-csit-dmm-functional-virl.sh
376
377    publishers:
378      - robot-report:
379          output-path: ''
380
381      - fdio-infra-shiplogs:
382          maven-version: 'mvn33-new'
383