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