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