Clean EOF K8s releases
[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     tag:
12       - latest:
13           node: lf-virtual1-9
14       - v1.28:
15           node: lf-virtual1-1
16       - v1.27:
17           node: lf-virtual1-1
18       - v1.26:
19           node: lf-virtual1-1
20       - arm-latest:
21           node: lf-virtual1-9
22       - arm-v1.28:
23           node: lf-virtual1-1
24       - arm-v1.27:
25           node: lf-virtual1-1
26       - arm-v1.26:
27           node: lf-virtual1-1
28       - arm64-latest:
29           node: lf-virtual1-9
30       - arm64-v1.28:
31           node: lf-virtual1-1
32       - arm64-v1.27:
33           node: lf-virtual1-1
34       - arm64-v1.26:
35           node: lf-virtual1-1
36
37 - functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-params: &functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-params
38     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-params'
39     repo: 'ollivier'
40     container: 'functest-kubernetes-healthcheck'
41     port:
42     tag:
43       - latest:
44           node: lf-virtual1-9
45       - v1.28:
46           node: lf-virtual1-1
47       - v1.27:
48           node: lf-virtual1-1
49       - v1.26:
50           node: lf-virtual1-1
51       - arm-latest:
52           node: lf-virtual1-9
53       - arm-v1.28:
54           node: lf-virtual1-1
55       - arm-v1.27:
56           node: lf-virtual1-1
57       - arm-v1.26:
58           node: lf-virtual1-1
59       - arm64-latest:
60           node: lf-virtual1-9
61       - arm64-v1.28:
62           node: lf-virtual1-1
63       - arm64-v1.27:
64           node: lf-virtual1-1
65       - arm64-v1.26:
66           node: lf-virtual1-1
67
68 - functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-params: &functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-params
69     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-params'
70     repo: 'ollivier'
71     container: 'functest-kubernetes-smoke'
72     port:
73     tag:
74       - latest:
75           node: lf-virtual1-9
76       - v1.28:
77           node: lf-virtual1-1
78       - v1.27:
79           node: lf-virtual1-1
80       - v1.26:
81           node: lf-virtual1-1
82       - arm-latest:
83           node: lf-virtual1-9
84       - arm-v1.28:
85           node: lf-virtual1-1
86       - arm-v1.27:
87           node: lf-virtual1-1
88       - arm-v1.26:
89           node: lf-virtual1-1
90       - arm64-latest:
91           node: lf-virtual1-9
92       - arm64-v1.28:
93           node: lf-virtual1-1
94       - arm64-v1.27:
95           node: lf-virtual1-1
96       - arm64-v1.26:
97           node: lf-virtual1-1
98
99 - functest-kubernetes-pi-ollivier-functest-kubernetes-security-params: &functest-kubernetes-pi-ollivier-functest-kubernetes-security-params
100     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-params'
101     repo: 'ollivier'
102     container: 'functest-kubernetes-security'
103     port:
104     tag:
105       - latest:
106           node: lf-virtual1-9
107       - v1.28:
108           node: lf-virtual1-1
109       - v1.27:
110           node: lf-virtual1-1
111       - v1.26:
112           node: lf-virtual1-1
113       - arm-latest:
114           node: lf-virtual1-9
115       - arm-v1.28:
116           node: lf-virtual1-1
117       - arm-v1.27:
118           node: lf-virtual1-1
119       - arm-v1.26:
120           node: lf-virtual1-1
121       - arm64-latest:
122           node: lf-virtual1-9
123       - arm64-v1.28:
124           node: lf-virtual1-1
125       - arm64-v1.27:
126           node: lf-virtual1-1
127       - arm64-v1.26:
128           node: lf-virtual1-1
129
130 - functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-params: &functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-params
131     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-params'
132     repo: 'ollivier'
133     container: 'functest-kubernetes-benchmarking'
134     port:
135     tag:
136       - latest:
137           node: lf-virtual1-9
138       - v1.28:
139           node: lf-virtual1-1
140       - v1.27:
141           node: lf-virtual1-1
142       - v1.26:
143           node: lf-virtual1-1
144       - arm-latest:
145           node: lf-virtual1-9
146       - arm-v1.28:
147           node: lf-virtual1-1
148       - arm-v1.27:
149           node: lf-virtual1-1
150       - arm-v1.26:
151           node: lf-virtual1-1
152       - arm64-latest:
153           node: lf-virtual1-9
154       - arm64-v1.28:
155           node: lf-virtual1-1
156       - arm64-v1.27:
157           node: lf-virtual1-1
158       - arm64-v1.26:
159           node: lf-virtual1-1
160
161 - functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-params: &functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-params
162     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-params'
163     repo: 'ollivier'
164     container: 'functest-kubernetes-cnf'
165     port:
166     tag:
167       - latest:
168           node: lf-virtual1-9
169       - v1.28:
170           node: lf-virtual1-1
171       - v1.27:
172           node: lf-virtual1-1
173       - v1.26:
174           node: lf-virtual1-1
175       - arm-latest:
176           node: lf-virtual1-9
177       - arm-v1.28:
178           node: lf-virtual1-1
179       - arm-v1.27:
180           node: lf-virtual1-1
181       - arm-v1.26:
182           node: lf-virtual1-1
183       - arm64-latest:
184           node: lf-virtual1-9
185       - arm64-v1.28:
186           node: lf-virtual1-1
187       - arm64-v1.27:
188           node: lf-virtual1-1
189       - arm64-v1.26:
190           node: lf-virtual1-1
191
192 - functest-kubernetes-pi-jobs: &functest-kubernetes-pi-jobs
193     name: 'functest-kubernetes-pi-jobs'
194     current-parameters: true
195
196 - parameter:
197     name: functest-kubernetes-pi-node
198     parameters:
199       - label:
200           name: node
201           default: '{node}'
202
203 - parameter:
204     name: functest-kubernetes-pi-build_tag
205     parameters:
206       - random-string:
207           name: build_tag
208
209 - parameter:
210     name: functest-kubernetes-pi-DEPLOY_SCENARIO
211     parameters:
212       - string:
213           name: DEPLOY_SCENARIO
214           default: k8-nosdn-nofeature-noha
215
216 - functest-kubernetes-pi-run-containers: &functest-kubernetes-pi-run-containers
217     name: 'functest-kubernetes-pi-run-containers'
218     <<: *functest-kubernetes-pi-containers
219     privileged: '{privileged}'
220     volumes: '{volumes}'
221     env: '{env}'
222     network: '{network}'
223     uid: '{uid}'
224     gid: '{gid}'
225     published_ports: '{published_ports}'
226
227 - builder:
228     name: functest-kubernetes-pi-pull-containers
229     builders:
230       - shell: |
231           set +x
232           if [ "{repo}" = "_" ]; then
233             image={container}:{tag}
234           elif [ "{port}" = "None" ]; then
235             image={repo}/{container}:{tag}
236           else
237             image={repo}:{port}/{container}:{tag}
238           fi
239           docker pull $image
240
241 - builder:
242     name: functest-kubernetes-pi-run-containers
243     builders:
244       - shell: |
245           set +x
246           volumes=;
247           if [ "{volumes}" != "None" ]; then
248             for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); \
249               do volumes="-v $i $volumes"; done
250           fi
251           env=;
252           if [ "{env}" != "None" ]; then
253             for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); \
254               do env="-e $i $env"; done
255           fi
256           published_ports=;
257           if [ "{published_ports}" != "None" ]; then
258             for i in $(echo {published_ports} | tr -d '[]' |sed "s/, / /g" ); \
259               do published_ports="-p $i $published_ports"; done
260           fi
261           [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
262           if [ "{repo}" = "_" ]; then
263             image={container}:{tag}
264           elif [ "{port}" = "None" ]; then
265             image={repo}/{container}:{tag}
266           else
267             image={repo}:{port}/{container}:{tag}
268           fi
269           mkdir -p $WORKSPACE/results
270           chown {uid}:{gid} $WORKSPACE/results
271           docker run --rm \
272             --privileged={privileged} \
273             --network={network} \
274             $volumes \
275             $env \
276             $published_ports \
277             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
278             -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
279             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
280             -v /home/opnfv/functest-kubernetes/.boto:/etc/boto.cfg \
281             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
282             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
283             -e NODE_NAME=$node \
284             -e BUILD_TAG=$BUILD_TAG \
285             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
286             $image run_tests -t {test} -p -r
287
288 - builder:
289     name: functest-kubernetes-pi-remove-images
290     builders:
291       - shell: |
292           set +x
293           if [ "{repo}" = "_" ]; then
294             image={container}:{tag}
295           elif [ "{port}" = "None" ]; then
296             image={repo}/{container}:{tag}
297           else
298             image={repo}:{port}/{container}:{tag}
299           fi
300           docker rmi $image || true
301
302 - job-template:
303     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-pull'
304     parameters:
305       - functest-kubernetes-pi-node:
306           node: '{node}'
307     builders:
308       - functest-kubernetes-pi-pull-containers:
309           <<: *functest-kubernetes-pi-containers
310
311 - project:
312     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-pull'
313     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-params
314     jobs:
315       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-pull'
316
317 - job-template:
318     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-rmi'
319     parameters:
320       - functest-kubernetes-pi-node:
321           node: '{node}'
322     builders:
323       - functest-kubernetes-pi-remove-images:
324           <<: *functest-kubernetes-pi-containers
325
326 - project:
327     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-rmi'
328     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-params
329     jobs:
330       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-rmi'
331
332 - job-template:
333     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-pull'
334     parameters:
335       - functest-kubernetes-pi-node:
336           node: '{node}'
337     builders:
338       - functest-kubernetes-pi-pull-containers:
339           <<: *functest-kubernetes-pi-containers
340
341 - project:
342     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-pull'
343     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-params
344     jobs:
345       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-pull'
346
347 - job-template:
348     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-rmi'
349     parameters:
350       - functest-kubernetes-pi-node:
351           node: '{node}'
352     builders:
353       - functest-kubernetes-pi-remove-images:
354           <<: *functest-kubernetes-pi-containers
355
356 - project:
357     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-rmi'
358     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-params
359     jobs:
360       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-rmi'
361
362 - job-template:
363     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-pull'
364     parameters:
365       - functest-kubernetes-pi-node:
366           node: '{node}'
367     builders:
368       - functest-kubernetes-pi-pull-containers:
369           <<: *functest-kubernetes-pi-containers
370
371 - project:
372     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-pull'
373     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-security-params
374     jobs:
375       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-pull'
376
377 - job-template:
378     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-rmi'
379     parameters:
380       - functest-kubernetes-pi-node:
381           node: '{node}'
382     builders:
383       - functest-kubernetes-pi-remove-images:
384           <<: *functest-kubernetes-pi-containers
385
386 - project:
387     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-rmi'
388     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-security-params
389     jobs:
390       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-rmi'
391
392 - job-template:
393     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-pull'
394     parameters:
395       - functest-kubernetes-pi-node:
396           node: '{node}'
397     builders:
398       - functest-kubernetes-pi-pull-containers:
399           <<: *functest-kubernetes-pi-containers
400
401 - project:
402     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-pull'
403     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-params
404     jobs:
405       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-pull'
406
407 - job-template:
408     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-rmi'
409     parameters:
410       - functest-kubernetes-pi-node:
411           node: '{node}'
412     builders:
413       - functest-kubernetes-pi-remove-images:
414           <<: *functest-kubernetes-pi-containers
415
416 - project:
417     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-rmi'
418     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-params
419     jobs:
420       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-rmi'
421
422 - job-template:
423     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-pull'
424     parameters:
425       - functest-kubernetes-pi-node:
426           node: '{node}'
427     builders:
428       - functest-kubernetes-pi-pull-containers:
429           <<: *functest-kubernetes-pi-containers
430
431 - project:
432     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-pull'
433     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-params
434     jobs:
435       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-pull'
436
437 - job-template:
438     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-rmi'
439     parameters:
440       - functest-kubernetes-pi-node:
441           node: '{node}'
442     builders:
443       - functest-kubernetes-pi-remove-images:
444           <<: *functest-kubernetes-pi-containers
445
446 - project:
447     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-rmi'
448     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-params
449     jobs:
450       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-rmi'
451
452 - job-template:
453     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-{test}-run'
454     parameters:
455       - functest-kubernetes-pi-node:
456           node: '{node}'
457       - functest-kubernetes-pi-build_tag:
458           build_tag: ''
459       - functest-kubernetes-pi-DEPLOY_SCENARIO:
460           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
461     builders:
462       - functest-kubernetes-pi-run-containers:
463           <<: *functest-kubernetes-pi-run-containers
464           test: '{test}'
465
466 - project:
467     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck'
468     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-params
469     volumes:
470       - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
471       - /home/opnfv/functest-kubernetes/config.{tag}:/home/xtesting/.kube/config
472     env:
473       - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
474     published_ports:
475     container: 'functest-kubernetes-healthcheck'
476     test:
477       - k8s_quick
478       - k8s_smoke
479     privileged: 'false'
480     network: bridge
481     uid: 1000
482     gid: 1000
483     jobs:
484       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-{test}-run'
485
486 - job-template:
487     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-{test}-run'
488     parameters:
489       - functest-kubernetes-pi-node:
490           node: '{node}'
491       - functest-kubernetes-pi-build_tag:
492           build_tag: ''
493       - functest-kubernetes-pi-DEPLOY_SCENARIO:
494           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
495     builders:
496       - functest-kubernetes-pi-run-containers:
497           <<: *functest-kubernetes-pi-run-containers
498           test: '{test}'
499
500 - project:
501     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke'
502     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-params
503     volumes:
504       - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
505       - /home/opnfv/functest-kubernetes/config.{tag}:/home/xtesting/.kube/config
506     env:
507       - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
508     published_ports:
509     container: 'functest-kubernetes-smoke'
510     test:
511       - xrally_kubernetes
512       - k8s_conformance
513       - k8s_conformance_serial
514       - sig_api_machinery
515       - sig_api_machinery_serial
516       - sig_apps
517       - sig_apps_serial
518       - sig_auth
519       - sig_cluster_lifecycle
520       - sig_instrumentation
521       - sig_network
522       - sig_node
523       - sig_scheduling_serial
524       - sig_storage
525       - sig_storage_serial
526     privileged: 'false'
527     network: bridge
528     uid: 1000
529     gid: 1000
530     jobs:
531       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-{test}-run'
532
533 - job-template:
534     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-{test}-run'
535     parameters:
536       - functest-kubernetes-pi-node:
537           node: '{node}'
538       - functest-kubernetes-pi-build_tag:
539           build_tag: ''
540       - functest-kubernetes-pi-DEPLOY_SCENARIO:
541           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
542     builders:
543       - functest-kubernetes-pi-run-containers:
544           <<: *functest-kubernetes-pi-run-containers
545           test: '{test}'
546
547 - project:
548     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security'
549     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-security-params
550     volumes:
551       - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
552       - /home/opnfv/functest-kubernetes/config.{tag}:/home/xtesting/.kube/config
553     env:
554       - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
555     published_ports:
556     container: 'functest-kubernetes-security'
557     test:
558       - kube_hunter
559       - kube_bench_master
560       - kube_bench_node
561     privileged: 'false'
562     network: bridge
563     uid: 1000
564     gid: 1000
565     jobs:
566       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-{test}-run'
567
568 - job-template:
569     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-{test}-run'
570     parameters:
571       - functest-kubernetes-pi-node:
572           node: '{node}'
573       - functest-kubernetes-pi-build_tag:
574           build_tag: ''
575       - functest-kubernetes-pi-DEPLOY_SCENARIO:
576           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
577     builders:
578       - functest-kubernetes-pi-run-containers:
579           <<: *functest-kubernetes-pi-run-containers
580           test: '{test}'
581
582 - project:
583     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking'
584     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-params
585     volumes:
586       - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
587       - /home/opnfv/functest-kubernetes/config.{tag}:/home/xtesting/.kube/config
588     env:
589       - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
590     published_ports:
591     container: 'functest-kubernetes-benchmarking'
592     test:
593       - xrally_kubernetes_full
594       - netperf
595     privileged: 'false'
596     network: bridge
597     uid: 1000
598     gid: 1000
599     jobs:
600       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-{test}-run'
601
602 - job-template:
603     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-{test}-run'
604     parameters:
605       - functest-kubernetes-pi-node:
606           node: '{node}'
607       - functest-kubernetes-pi-build_tag:
608           build_tag: ''
609       - functest-kubernetes-pi-DEPLOY_SCENARIO:
610           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
611     builders:
612       - functest-kubernetes-pi-run-containers:
613           <<: *functest-kubernetes-pi-run-containers
614           test: '{test}'
615
616 - project:
617     name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf'
618     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-params
619     volumes:
620       - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
621       - /home/opnfv/functest-kubernetes/config.{tag}:/home/xtesting/.kube/config
622     env:
623       - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
624     published_ports:
625     container: 'functest-kubernetes-cnf'
626     test:
627       - k8s_vims
628       - helm_vims
629       - cnf_testsuite
630     privileged: 'false'
631     network: bridge
632     uid: 1000
633     gid: 1000
634     jobs:
635       - 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-{test}-run'
636
637 - builder:
638     name: functest-kubernetes-pi-zip
639     builders:
640       - shell: |
641           set +x
642           volumes=;
643           if [ "{volumes}" != "None" ]; then
644             for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); \
645               do volumes="-v $i $volumes"; done
646           fi
647           env=;
648           if [ "{env}" != "None" ]; then
649             for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); \
650               do env="-e $i $env"; done
651           fi
652           published_ports=;
653           if [ "{published_ports}" != "None" ]; then
654             for i in $(echo {published_ports} | tr -d '[]' |sed "s/, / /g" ); \
655               do published_ports="-p $i $published_ports"; done
656           fi
657           [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
658           if [ "{repo}" = "_" ]; then
659             image={container}:{tag}
660           elif [ "{port}" = "None" ]; then
661             image={repo}/{container}:{tag}
662           else
663             image={repo}:{port}/{container}:{tag}
664           fi
665           mkdir -p $WORKSPACE/results
666           chown {uid}:{gid} $WORKSPACE/results
667           docker run --rm \
668             --privileged={privileged} \
669             --network={network} \
670             $volumes \
671             $env \
672             $published_ports \
673             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
674             -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes \
675             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes \
676             -v /home/opnfv/functest-kubernetes/.boto:/etc/boto.cfg \
677             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
678             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
679             -e NODE_NAME=$node \
680             -e BUILD_TAG=$BUILD_TAG \
681             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
682             $image zip_campaign
683
684 - job-template:
685     name: 'functest-kubernetes-pi-{tag}-zip'
686     parameters:
687       - functest-kubernetes-pi-node:
688           node: '{node}'
689       - functest-kubernetes-pi-build_tag:
690           build_tag: ''
691       - functest-kubernetes-pi-DEPLOY_SCENARIO:
692           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
693     builders:
694       - functest-kubernetes-pi-zip:
695           <<: *functest-kubernetes-pi-run-containers
696
697 - project:
698     name: 'functest-kubernetes-pi-zip'
699     <<: *functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-params
700     volumes:
701       - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
702       - /home/opnfv/functest-kubernetes/config.{tag}:/home/xtesting/.kube/config
703     env:
704       - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
705     published_ports:
706     container: 'functest-kubernetes-healthcheck'
707     privileged: 'false'
708     network: bridge
709     uid: 1000
710     gid: 1000
711     jobs:
712       - 'functest-kubernetes-pi-{tag}-zip'
713
714 - job-template:
715     name: 'functest-kubernetes-pi-{tag}-daily'
716     project-type: multijob
717     triggers:
718       - timed: '@weekly'
719     parameters:
720       - functest-kubernetes-pi-node:
721           node: '{node}'
722       - functest-kubernetes-pi-build_tag:
723           build_tag: ''
724       - functest-kubernetes-pi-DEPLOY_SCENARIO:
725           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
726     # PyYAML and yamllint differ here
727     # see https://github.com/yaml/pyyaml/issues/234
728     # yamllint disable rule:indentation
729     properties:
730       - build-blocker:
731           blocking-jobs:
732           - ^functest-kubernetes-(pi-)*.*-(daily|docker|review)$
733     # yamllint enable rule:indentation
734     builders:
735       - multijob:
736           name: remove former images
737           projects:
738             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-rmi'
739               <<: *functest-kubernetes-pi-jobs
740             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-rmi'
741               <<: *functest-kubernetes-pi-jobs
742             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-rmi'
743               <<: *functest-kubernetes-pi-jobs
744             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-rmi'
745               <<: *functest-kubernetes-pi-jobs
746             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-rmi'
747               <<: *functest-kubernetes-pi-jobs
748       - multijob:
749           name: pull containers
750           projects:
751             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-pull'
752               <<: *functest-kubernetes-pi-jobs
753             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-pull'
754               <<: *functest-kubernetes-pi-jobs
755             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-pull'
756               <<: *functest-kubernetes-pi-jobs
757             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-pull'
758               <<: *functest-kubernetes-pi-jobs
759             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-pull'
760               <<: *functest-kubernetes-pi-jobs
761       - multijob:
762           name: ollivier/functest-kubernetes-healthcheck:{tag}
763           projects:
764             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
765               <<: *functest-kubernetes-pi-jobs
766             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
767               <<: *functest-kubernetes-pi-jobs
768       - multijob:
769           name: ollivier/functest-kubernetes-smoke:{tag}
770           execution-type: SEQUENTIALLY
771           projects:
772             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
773               <<: *functest-kubernetes-pi-jobs
774             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
775               <<: *functest-kubernetes-pi-jobs
776             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-k8s_conformance_serial-run'
777               <<: *functest-kubernetes-pi-jobs
778             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_api_machinery-run'
779               <<: *functest-kubernetes-pi-jobs
780             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_api_machinery_serial-run'
781               <<: *functest-kubernetes-pi-jobs
782             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_apps-run'
783               <<: *functest-kubernetes-pi-jobs
784             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_apps_serial-run'
785               <<: *functest-kubernetes-pi-jobs
786             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_auth-run'
787               <<: *functest-kubernetes-pi-jobs
788             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_cluster_lifecycle-run'
789               <<: *functest-kubernetes-pi-jobs
790             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_instrumentation-run'
791               <<: *functest-kubernetes-pi-jobs
792             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_network-run'
793               <<: *functest-kubernetes-pi-jobs
794             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_node-run'
795               <<: *functest-kubernetes-pi-jobs
796             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_scheduling_serial-run'
797               <<: *functest-kubernetes-pi-jobs
798             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_storage-run'
799               <<: *functest-kubernetes-pi-jobs
800             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-smoke-{tag}-sig_storage_serial-run'
801               <<: *functest-kubernetes-pi-jobs
802       - multijob:
803           name: ollivier/functest-kubernetes-security:{tag}
804           projects:
805             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-kube_hunter-run'
806               <<: *functest-kubernetes-pi-jobs
807             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-kube_bench_master-run'
808               <<: *functest-kubernetes-pi-jobs
809             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-security-{tag}-kube_bench_node-run'
810               <<: *functest-kubernetes-pi-jobs
811       - multijob:
812           name: ollivier/functest-kubernetes-benchmarking:{tag}
813           projects:
814             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
815               <<: *functest-kubernetes-pi-jobs
816             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-benchmarking-{tag}-netperf-run'
817               <<: *functest-kubernetes-pi-jobs
818       - multijob:
819           name: ollivier/functest-kubernetes-cnf:{tag}
820           projects:
821             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-k8s_vims-run'
822               <<: *functest-kubernetes-pi-jobs
823             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-helm_vims-run'
824               <<: *functest-kubernetes-pi-jobs
825             - name: 'functest-kubernetes-pi-ollivier-functest-kubernetes-cnf-{tag}-cnf_testsuite-run'
826               <<: *functest-kubernetes-pi-jobs
827       - multijob:
828           name: dump all campaign data
829           projects:
830             - name: 'functest-kubernetes-pi-{tag}-zip'
831               <<: *functest-kubernetes-pi-jobs
832     publishers:
833       - email-ext:
834           failure: false
835           first-failure: true
836           fixed: true
837           recipients: cedric.ollivier@orange.com
838
839 - project:
840     name: 'functest-kubernetes-pi-daily'
841     <<: *functest-kubernetes-pi-params
842     jobs:
843       - 'functest-kubernetes-pi-{tag}-daily'
844
845 - view:
846     name: functest-kubernetes-pi
847     view-type: list
848     columns:
849       - status
850       - weather
851       - job
852       - last-success
853       - last-failure
854       - last-duration
855     regex: ^functest-kubernetes-pi-[a-z-0-9.]+-daily$