Add -container-runtime containerd in e2e.tests
[releng.git] / jjb / functest / functest-kubernetes-pi.yaml
1 ---
2 - functest-kubernetes-pi-containers: &functest-kubernetes-pi-containers
3     name: 'functest-kubernetes-pi-containers'
4     repo: '{repo}'
5     port: '{port}'
6     container: '{container}'
7     tag: '{tag}'
8
9 - functest-kubernetes-pi-params: &functest-kubernetes-pi-params
10     name: 'functest-kubernetes-pi-params'
11     repo: 'ollivier'
12     port:
13     tag:
14       - latest:
15           slave: lf-virtual1-7
16       - v1.21:
17           slave: lf-virtual1-6
18       - leguer:
19           slave: lf-virtual1-5
20       - kali:
21           slave: lf-virtual1-4
22       - arm-latest:
23           slave: lf-virtual1-7
24       - arm-v1.21:
25           slave: lf-virtual1-6
26       - arm-leguer:
27           slave: lf-virtual1-5
28       - arm-kali:
29           slave: lf-virtual1-4
30       - arm64-latest:
31           slave: lf-virtual1-7
32       - arm64-v1.21:
33           slave: lf-virtual1-6
34       - arm64-leguer:
35           slave: lf-virtual1-5
36       - arm64-kali:
37           slave: lf-virtual1-4
38
39 - functest-kubernetes-pi-jobs: &functest-kubernetes-pi-jobs
40     name: 'functest-kubernetes-pi-jobs'
41     current-parameters: true
42
43 - parameter:
44     name: functest-kubernetes-pi-slave
45     parameters:
46       - label:
47           name: slave
48           default: '{slave}'
49
50 - parameter:
51     name: functest-kubernetes-pi-build_tag
52     parameters:
53       - random-string:
54           name: build_tag
55
56 - parameter:
57     name: functest-kubernetes-pi-DEPLOY_SCENARIO
58     parameters:
59       - string:
60           name: DEPLOY_SCENARIO
61           default: k8-nosdn-nofeature-noha
62
63 - parameter:
64     name: functest-kubernetes-pi-E2E_TEST_OPTS
65     parameters:
66       - string:
67           name: E2E_TEST_OPTS
68           default: container-runtime:containerd
69
70 - functest-kubernetes-pi-run-containers: &functest-kubernetes-pi-run-containers
71     name: 'functest-kubernetes-pi-run-containers'
72     <<: *functest-kubernetes-pi-containers
73     test: '{test}'
74     privileged: '{privileged}'
75     network: '{network}'
76
77 - builder:
78     name: functest-kubernetes-pi-pull-containers
79     builders:
80       - shell: |
81           set +x
82           if [ "{repo}" = "_" ]; then
83             image={container}:{tag}
84           elif [ "{port}" = "None" ]; then
85             image={repo}/{container}:{tag}
86           else
87             image={repo}:{port}/{container}:{tag}
88           fi
89           docker pull $image
90
91 - builder:
92     name: functest-kubernetes-pi-run-containers
93     builders:
94       - shell: |
95           set +x
96           [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
97           if [ "{repo}" = "_" ]; then
98             image={container}:{tag}
99           elif [ "{port}" = "None" ]; then
100             image={repo}/{container}:{tag}
101           else
102             image={repo}:{port}/{container}:{tag}
103           fi
104           docker run --rm \
105             --privileged={privileged} \
106             --network={network} \
107             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
108             -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
109             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
110             -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
111             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
112             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
113             -e NODE_NAME=$slave \
114             -e BUILD_TAG=$BUILD_TAG \
115             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
116             -e DEPLOY_SCENARIO=$DEPLOY_SCENARIO \
117             -e E2E_TEST_OPTS=$E2E_TEST_OPTS \
118             -v /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config \
119             $image run_tests -t {test} -p -r
120
121 - builder:
122     name: functest-kubernetes-pi-remove-images
123     builders:
124       - shell: |
125           set +x
126           if [ "{repo}" = "_" ]; then
127             image={container}:{tag}
128           elif [ "{port}" = "None" ]; then
129             image={repo}/{container}:{tag}
130           else
131             image={repo}:{port}/{container}:{tag}
132           fi
133           docker rmi $image || true
134
135 - job-template:
136     name: 'functest-kubernetes-pi-{repo}-{container}-{tag}-pull'
137     parameters:
138       - functest-kubernetes-pi-slave:
139           slave: '{slave}'
140     builders:
141       - functest-kubernetes-pi-pull-containers:
142           <<: *functest-kubernetes-pi-containers
143
144 - project:
145     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-pull'
146     <<: *functest-kubernetes-pi-params
147     container: 'functest-kubernetes-healthcheck'
148     jobs:
149       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-pull'
150
151 - project:
152     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-pull'
153     <<: *functest-kubernetes-pi-params
154     container: 'functest-kubernetes-smoke'
155     jobs:
156       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-pull'
157
158 - project:
159     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-pull'
160     <<: *functest-kubernetes-pi-params
161     container: 'functest-kubernetes-security'
162     jobs:
163       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-pull'
164
165 - project:
166     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-pull'
167     <<: *functest-kubernetes-pi-params
168     container: 'functest-kubernetes-benchmarking'
169     jobs:
170       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-pull'
171
172 - project:
173     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-pull'
174     <<: *functest-kubernetes-pi-params
175     container: 'functest-kubernetes-cnf'
176     jobs:
177       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-pull'
178
179 - job-template:
180     name: 'functest-kubernetes-pi-{repo}-{container}-{tag}-rmi'
181     parameters:
182       - functest-kubernetes-pi-slave:
183           slave: '{slave}'
184     builders:
185       - functest-kubernetes-pi-remove-images:
186           <<: *functest-kubernetes-pi-containers
187
188 - project:
189     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-rmi'
190     <<: *functest-kubernetes-pi-params
191     container: 'functest-kubernetes-healthcheck'
192     jobs:
193       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-rmi'
194
195 - project:
196     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-rmi'
197     <<: *functest-kubernetes-pi-params
198     container: 'functest-kubernetes-smoke'
199     jobs:
200       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-rmi'
201
202 - project:
203     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-rmi'
204     <<: *functest-kubernetes-pi-params
205     container: 'functest-kubernetes-security'
206     jobs:
207       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-rmi'
208
209 - project:
210     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-rmi'
211     <<: *functest-kubernetes-pi-params
212     container: 'functest-kubernetes-benchmarking'
213     jobs:
214       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-rmi'
215
216 - project:
217     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-rmi'
218     <<: *functest-kubernetes-pi-params
219     container: 'functest-kubernetes-cnf'
220     jobs:
221       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-rmi'
222
223 - job-template:
224     name: 'functest-kubernetes-pi-{repo}-{container}-{tag}-{test}-run'
225     parameters:
226       - functest-kubernetes-pi-slave:
227           slave: '{slave}'
228       - functest-kubernetes-pi-build_tag:
229           build_tag: ''
230       - functest-kubernetes-pi-DEPLOY_SCENARIO:
231           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
232       - functest-kubernetes-pi-E2E_TEST_OPTS:
233           E2E_TEST_OPTS: container-runtime:containerd
234     builders:
235       - functest-kubernetes-pi-run-containers:
236           <<: *functest-kubernetes-pi-run-containers
237
238 - project:
239     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck'
240     <<: *functest-kubernetes-pi-params
241     container: 'functest-kubernetes-healthcheck'
242     test:
243       - k8s_quick
244       - k8s_smoke
245     privileged: 'false'
246     network: bridge
247     jobs:
248       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-{test}-run'
249
250 - project:
251     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke'
252     <<: *functest-kubernetes-pi-params
253     container: 'functest-kubernetes-smoke'
254     test:
255       - xrally_kubernetes
256       - k8s_io
257       - k8s_conformance
258       - k8s_conformance_serial
259       - sig_api_machinery
260       - sig_api_machinery_serial
261       - sig_apps
262       - sig_apps_serial
263       - sig_auth
264       - sig_cli
265       - sig_cli_serial
266       - sig_cluster_lifecycle
267       - sig_instrumentation
268       - sig_network
269       - sig_network_serial
270       - sig_node
271       - sig_scheduling_serial
272       - sig_storage
273       - sig_storage_serial
274     privileged: 'false'
275     network: bridge
276     exclude:
277       - {'tag': 'latest', 'test': 'k8s_io'}
278       - {'tag': 'v1.21', 'test': 'k8s_io'}
279       - {'tag': 'jerma', 'test': 'k8s_io'}
280       - {'tag': 'arm-latest', 'test': 'k8s_io'}
281       - {'tag': 'arm-v1.21', 'test': 'k8s_io'}
282       - {'tag': 'arm64-latest', 'test': 'k8s_io'}
283       - {'tag': 'arm64-v1.21', 'test': 'k8s_io'}
284     jobs:
285       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-{test}-run'
286
287 - project:
288     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security'
289     <<: *functest-kubernetes-pi-params
290     container: 'functest-kubernetes-security'
291     test:
292       - kube_hunter
293       - kube_bench_master
294       - kube_bench_node
295     privileged: 'false'
296     network: bridge
297     jobs:
298       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-{test}-run'
299
300 - project:
301     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking'
302     <<: *functest-kubernetes-pi-params
303     container: 'functest-kubernetes-benchmarking'
304     test:
305       - xrally_kubernetes_full
306       - netperf
307     privileged: 'false'
308     network: bridge
309     jobs:
310       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-{test}-run'
311
312 - project:
313     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf'
314     <<: *functest-kubernetes-pi-params
315     container: 'functest-kubernetes-cnf'
316     test:
317       - k8s_vims
318       - helm_vims
319       - cnf_testsuite
320     privileged: 'false'
321     network: bridge
322     jobs:
323       - 'functest-kubernetes-pi-{repo}-{container}-{tag}-{test}-run'
324
325
326 - builder:
327     name: functest-kubernetes-pi-zip
328     builders:
329       - shell: |
330           set +x
331           [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
332           if [ "{repo}" = "_" ]; then
333             image={container}:{tag}
334           elif [ "{port}" = "None" ]; then
335             image={repo}/{container}:{tag}
336           else
337             image={repo}:{port}/{container}:{tag}
338           fi
339           docker run --rm \
340             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
341             -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes \
342             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes \
343             -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
344             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
345             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
346             -e BUILD_TAG=$BUILD_TAG \
347             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
348             -e DEPLOY_SCENARIO=$DEPLOY_SCENARIO \
349             -e E2E_TEST_OPTS=$E2E_TEST_OPTS \
350             -v /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config \
351             $image zip_campaign
352
353 - job-template:
354     name: 'functest-kubernetes-pi-{tag}-zip'
355     parameters:
356       - functest-kubernetes-pi-slave:
357           slave: '{slave}'
358       - functest-kubernetes-pi-build_tag:
359           build_tag: ''
360       - functest-kubernetes-pi-DEPLOY_SCENARIO:
361           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
362       - functest-kubernetes-pi-E2E_TEST_OPTS:
363           E2E_TEST_OPTS: container-runtime:containerd
364     builders:
365       - functest-kubernetes-pi-zip:
366           <<: *functest-kubernetes-pi-containers
367
368 - project:
369     name: 'functest-kubernetes-pi-{tag}-zip'
370     <<: *functest-kubernetes-pi-params
371     container: 'functest-kubernetes-healthcheck'
372     jobs:
373       - 'functest-kubernetes-pi-{tag}-zip'
374
375 - job-template:
376     name: 'functest-kubernetes-pi-{tag}-daily'
377     project-type: multijob
378     triggers:
379       - timed: '@weekly'
380     parameters:
381       - functest-kubernetes-pi-slave:
382           slave: '{slave}'
383       - functest-kubernetes-pi-build_tag:
384           build_tag: ''
385       - functest-kubernetes-pi-DEPLOY_SCENARIO:
386           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
387       - functest-kubernetes-pi-E2E_TEST_OPTS:
388           E2E_TEST_OPTS: container-runtime:containerd
389     properties:
390       - build-blocker:
391           use-build-blocker: true
392           blocking-level: 'NODE'
393           blocking-jobs:
394             - '^functest-kubernetes-pi-{tag}-(daily|docker|review)$'
395     builders:
396       - multijob:
397           name: remove former images
398           projects:
399             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-rmi'
400               <<: *functest-kubernetes-pi-jobs
401             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-rmi'
402               <<: *functest-kubernetes-pi-jobs
403             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-rmi'
404               <<: *functest-kubernetes-pi-jobs
405             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-rmi'
406               <<: *functest-kubernetes-pi-jobs
407             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-rmi'
408               <<: *functest-kubernetes-pi-jobs
409       - multijob:
410           name: pull containers
411           projects:
412             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-pull'
413               <<: *functest-kubernetes-pi-jobs
414             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-pull'
415               <<: *functest-kubernetes-pi-jobs
416             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-pull'
417               <<: *functest-kubernetes-pi-jobs
418             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-pull'
419               <<: *functest-kubernetes-pi-jobs
420             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-pull'
421               <<: *functest-kubernetes-pi-jobs
422       - multijob:
423           name: ollivier/functest-kubernetes-healthcheck:{tag}
424           projects:
425             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
426               <<: *functest-kubernetes-pi-jobs
427             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
428               <<: *functest-kubernetes-pi-jobs
429       - multijob:
430           name: ollivier/functest-kubernetes-smoke:{tag}
431           execution-type: SEQUENTIALLY
432           projects:
433             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
434               <<: *functest-kubernetes-pi-jobs
435             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-k8s_io-run'
436               <<: *functest-kubernetes-pi-jobs
437             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
438               <<: *functest-kubernetes-pi-jobs
439             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-k8s_conformance_serial-run'
440               <<: *functest-kubernetes-pi-jobs
441             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_api_machinery-run'
442               <<: *functest-kubernetes-pi-jobs
443             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_api_machinery_serial-run'
444               <<: *functest-kubernetes-pi-jobs
445             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_apps-run'
446               <<: *functest-kubernetes-pi-jobs
447             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_apps_serial-run'
448               <<: *functest-kubernetes-pi-jobs
449             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_auth-run'
450               <<: *functest-kubernetes-pi-jobs
451             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_cli-run'
452               <<: *functest-kubernetes-pi-jobs
453             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_cli_serial-run'
454               <<: *functest-kubernetes-pi-jobs
455             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_cluster_lifecycle-run'
456               <<: *functest-kubernetes-pi-jobs
457             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_instrumentation-run'
458               <<: *functest-kubernetes-pi-jobs
459             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_network-run'
460               <<: *functest-kubernetes-pi-jobs
461             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_network_serial-run'
462               <<: *functest-kubernetes-pi-jobs
463             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_node-run'
464               <<: *functest-kubernetes-pi-jobs
465             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_scheduling_serial-run'
466               <<: *functest-kubernetes-pi-jobs
467             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_storage-run'
468               <<: *functest-kubernetes-pi-jobs
469             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_storage_serial-run'
470               <<: *functest-kubernetes-pi-jobs
471       - multijob:
472           name: ollivier/functest-kubernetes-security:{tag}
473           projects:
474             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-kube_hunter-run'
475               <<: *functest-kubernetes-pi-jobs
476             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-kube_bench_master-run'
477               <<: *functest-kubernetes-pi-jobs
478             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-kube_bench_node-run'
479               <<: *functest-kubernetes-pi-jobs
480       - multijob:
481           name: ollivier/functest-kubernetes-benchmarking:{tag}
482           projects:
483             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
484               <<: *functest-kubernetes-pi-jobs
485             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-netperf-run'
486               <<: *functest-kubernetes-pi-jobs
487       - multijob:
488           name: ollivier/functest-kubernetes-cnf:{tag}
489           projects:
490             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-k8s_vims-run'
491               <<: *functest-kubernetes-pi-jobs
492             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-helm_vims-run'
493               <<: *functest-kubernetes-pi-jobs
494             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-cnf_testsuite-run'
495               <<: *functest-kubernetes-pi-jobs
496       - multijob:
497           name: dump all campaign data
498           projects:
499             - name: 'functest-kubernetes-pi-{tag}-zip'
500               <<: *functest-kubernetes-pi-jobs
501
502 - project:
503     name: 'functest-kubernetes-pi-daily'
504     <<: *functest-kubernetes-pi-params
505     jobs:
506       - 'functest-kubernetes-pi-{tag}-daily'
507
508 - view:
509     name: functest-kubernetes-pi
510     view-type: list
511     columns:
512       - status
513       - weather
514       - job
515       - last-success
516       - last-failure
517       - last-duration
518     regex: ^functest-kubernetes-pi-[a-z-0-9.]+-daily$