8d4e2a79da33d20612b7c3cf330d26744a0e6e19
[releng.git] / jjb / functest / functest-kubernetes.yaml
1 ---
2 - functest-kubernetes-containers: &functest-kubernetes-containers
3     name: 'functest-kubernetes-containers'
4     repo: '{repo}'
5     port: '{port}'
6     container: '{container}'
7     tag: '{tag}'
8
9 - functest-kubernetes-params: &functest-kubernetes-params
10     name: 'functest-kubernetes-params'
11     tag:
12       - latest:
13           from:
14           build_args:
15           branch: master
16           node: lf-virtual1-9
17           dependency: 3.16
18       - v1.26:
19           from:
20           build_args:
21           branch: stable/v1.26
22           node: lf-virtual1-1
23           dependency: 3.16
24       - v1.25:
25           from:
26           build_args:
27           branch: stable/v1.25
28           node: lf-virtual1-8
29           dependency: 3.16
30       - v1.24:
31           from:
32           build_args:
33           branch: stable/v1.24
34           node: lf-virtual1-7
35           dependency: 3.16
36       - v1.23:
37           from:
38           build_args:
39           branch: stable/v1.23
40           node: lf-virtual1-6
41           dependency: 3.14
42       - v1.22:
43           from:
44           build_args:
45           branch: stable/v1.22
46           node: lf-virtual1-5
47           dependency: 3.14
48
49 - functest-kubernetes-opnfv-functest-kubernetes-healthcheck-params: &functest-kubernetes-opnfv-functest-kubernetes-healthcheck-params
50     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-params'
51     repo: 'opnfv'
52     container: 'functest-kubernetes-healthcheck'
53     port:
54     tag:
55       - latest:
56           from:
57           build_args:
58           branch: master
59           node: lf-virtual1-9
60           dependency: 3.16
61       - v1.26:
62           from:
63           build_args:
64           branch: stable/v1.26
65           node: lf-virtual1-1
66           dependency: 3.16
67       - v1.25:
68           from:
69           build_args:
70           branch: stable/v1.25
71           node: lf-virtual1-8
72           dependency: 3.16
73       - v1.24:
74           from:
75           build_args:
76           branch: stable/v1.24
77           node: lf-virtual1-7
78           dependency: 3.16
79       - v1.23:
80           from:
81           build_args:
82           branch: stable/v1.23
83           node: lf-virtual1-6
84           dependency: 3.14
85       - v1.22:
86           from:
87           build_args:
88           branch: stable/v1.22
89           node: lf-virtual1-5
90           dependency: 3.14
91
92 - functest-kubernetes-opnfv-functest-kubernetes-smoke-params: &functest-kubernetes-opnfv-functest-kubernetes-smoke-params
93     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-params'
94     repo: 'opnfv'
95     container: 'functest-kubernetes-smoke'
96     port:
97     tag:
98       - latest:
99           from:
100           build_args:
101           branch: master
102           node: lf-virtual1-9
103           dependency: 3.16
104       - v1.26:
105           from:
106           build_args:
107           branch: stable/v1.26
108           node: lf-virtual1-1
109           dependency: 3.16
110       - v1.25:
111           from:
112           build_args:
113           branch: stable/v1.25
114           node: lf-virtual1-8
115           dependency: 3.16
116       - v1.24:
117           from:
118           build_args:
119           branch: stable/v1.24
120           node: lf-virtual1-7
121           dependency: 3.16
122       - v1.23:
123           from:
124           build_args:
125           branch: stable/v1.23
126           node: lf-virtual1-6
127           dependency: 3.14
128       - v1.22:
129           from:
130           build_args:
131           branch: stable/v1.22
132           node: lf-virtual1-5
133           dependency: 3.14
134
135 - functest-kubernetes-opnfv-functest-kubernetes-security-params: &functest-kubernetes-opnfv-functest-kubernetes-security-params
136     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-params'
137     repo: 'opnfv'
138     container: 'functest-kubernetes-security'
139     port:
140     tag:
141       - latest:
142           from:
143           build_args:
144           branch: master
145           node: lf-virtual1-9
146           dependency: 3.16
147       - v1.26:
148           from:
149           build_args:
150           branch: stable/v1.26
151           node: lf-virtual1-1
152           dependency: 3.16
153       - v1.25:
154           from:
155           build_args:
156           branch: stable/v1.25
157           node: lf-virtual1-8
158           dependency: 3.16
159       - v1.24:
160           from:
161           build_args:
162           branch: stable/v1.24
163           node: lf-virtual1-7
164           dependency: 3.16
165       - v1.23:
166           from:
167           build_args:
168           branch: stable/v1.23
169           node: lf-virtual1-6
170           dependency: 3.14
171       - v1.22:
172           from:
173           build_args:
174           branch: stable/v1.22
175           node: lf-virtual1-5
176           dependency: 3.14
177
178 - functest-kubernetes-opnfv-functest-kubernetes-benchmarking-params: &functest-kubernetes-opnfv-functest-kubernetes-benchmarking-params
179     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-params'
180     repo: 'opnfv'
181     container: 'functest-kubernetes-benchmarking'
182     port:
183     tag:
184       - latest:
185           from:
186           build_args:
187           branch: master
188           node: lf-virtual1-9
189           dependency: 3.16
190       - v1.26:
191           from:
192           build_args:
193           branch: stable/v1.26
194           node: lf-virtual1-1
195           dependency: 3.16
196       - v1.25:
197           from:
198           build_args:
199           branch: stable/v1.25
200           node: lf-virtual1-8
201           dependency: 3.16
202       - v1.24:
203           from:
204           build_args:
205           branch: stable/v1.24
206           node: lf-virtual1-7
207           dependency: 3.16
208       - v1.23:
209           from:
210           build_args:
211           branch: stable/v1.23
212           node: lf-virtual1-6
213           dependency: 3.14
214       - v1.22:
215           from:
216           build_args:
217           branch: stable/v1.22
218           node: lf-virtual1-5
219           dependency: 3.14
220
221 - functest-kubernetes-opnfv-functest-kubernetes-cnf-params: &functest-kubernetes-opnfv-functest-kubernetes-cnf-params
222     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-params'
223     repo: 'opnfv'
224     container: 'functest-kubernetes-cnf'
225     port:
226     tag:
227       - latest:
228           from:
229           build_args:
230           branch: master
231           node: lf-virtual1-9
232           dependency: 3.16
233       - v1.26:
234           from:
235           build_args:
236           branch: stable/v1.26
237           node: lf-virtual1-1
238           dependency: 3.16
239       - v1.25:
240           from:
241           build_args:
242           branch: stable/v1.25
243           node: lf-virtual1-8
244           dependency: 3.16
245       - v1.24:
246           from:
247           build_args:
248           branch: stable/v1.24
249           node: lf-virtual1-7
250           dependency: 3.16
251       - v1.23:
252           from:
253           build_args:
254           branch: stable/v1.23
255           node: lf-virtual1-6
256           dependency: 3.14
257       - v1.22:
258           from:
259           build_args:
260           branch: stable/v1.22
261           node: lf-virtual1-5
262           dependency: 3.14
263
264 - functest-kubernetes-jobs: &functest-kubernetes-jobs
265     name: 'functest-kubernetes-jobs'
266     current-parameters: true
267
268 - parameter:
269     name: functest-kubernetes-node
270     parameters:
271       - label:
272           name: node
273           default: '{node}'
274
275 - parameter:
276     name: functest-kubernetes-build_tag
277     parameters:
278       - random-string:
279           name: build_tag
280
281 - parameter:
282     name: functest-kubernetes-DEPLOY_SCENARIO
283     parameters:
284       - string:
285           name: DEPLOY_SCENARIO
286           default: k8-nosdn-nofeature-noha
287
288 - functest-kubernetes-run-containers: &functest-kubernetes-run-containers
289     name: 'functest-kubernetes-run-containers'
290     <<: *functest-kubernetes-containers
291     privileged: '{privileged}'
292     volumes: '{volumes}'
293     env: '{env}'
294     network: '{network}'
295     uid: '{uid}'
296     gid: '{gid}'
297     published_ports: '{published_ports}'
298
299 - builder:
300     name: functest-kubernetes-pull-containers
301     builders:
302       - shell: |
303           set +x
304           if [ "{repo}" = "_" ]; then
305             image={container}:{tag}
306           elif [ "{port}" = "None" ]; then
307             image={repo}/{container}:{tag}
308           else
309             image={repo}:{port}/{container}:{tag}
310           fi
311           docker pull $image
312
313 - builder:
314     name: functest-kubernetes-run-containers
315     builders:
316       - shell: |
317           set +x
318           volumes=;
319           if [ "{volumes}" != "None" ]; then
320             for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); \
321               do volumes="-v $i $volumes"; done
322           fi
323           env=;
324           if [ "{env}" != "None" ]; then
325             for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); \
326               do env="-e $i $env"; done
327           fi
328           published_ports=;
329           if [ "{published_ports}" != "None" ]; then
330             for i in $(echo {published_ports} | tr -d '[]' |sed "s/, / /g" ); \
331               do published_ports="-p $i $published_ports"; done
332           fi
333           [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
334           if [ "{repo}" = "_" ]; then
335             image={container}:{tag}
336           elif [ "{port}" = "None" ]; then
337             image={repo}/{container}:{tag}
338           else
339             image={repo}:{port}/{container}:{tag}
340           fi
341           mkdir -p $WORKSPACE/results
342           chown {uid}:{gid} $WORKSPACE/results
343           docker run --rm \
344             --privileged={privileged} \
345             --network={network} \
346             $volumes \
347             $env \
348             $published_ports \
349             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
350             -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
351             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
352             -v /home/opnfv/functest-kubernetes/.boto:/etc/boto.cfg \
353             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
354             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
355             -e NODE_NAME=$node \
356             -e BUILD_TAG=$BUILD_TAG \
357             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
358             $image run_tests -t {test} -p -r
359
360 - builder:
361     name: functest-kubernetes-remove-images
362     builders:
363       - shell: |
364           set +x
365           if [ "{repo}" = "_" ]; then
366             image={container}:{tag}
367           elif [ "{port}" = "None" ]; then
368             image={repo}/{container}:{tag}
369           else
370             image={repo}:{port}/{container}:{tag}
371           fi
372           docker rmi $image || true
373
374 - job-template:
375     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-pull'
376     parameters:
377       - functest-kubernetes-node:
378           node: '{node}'
379     builders:
380       - functest-kubernetes-pull-containers:
381           <<: *functest-kubernetes-containers
382
383 - project:
384     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-pull'
385     <<: *functest-kubernetes-opnfv-functest-kubernetes-healthcheck-params
386     jobs:
387       - 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-pull'
388
389 - job-template:
390     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
391     parameters:
392       - functest-kubernetes-node:
393           node: '{node}'
394     builders:
395       - functest-kubernetes-remove-images:
396           <<: *functest-kubernetes-containers
397
398 - project:
399     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-rmi'
400     <<: *functest-kubernetes-opnfv-functest-kubernetes-healthcheck-params
401     jobs:
402       - 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
403
404 - job-template:
405     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-pull'
406     parameters:
407       - functest-kubernetes-node:
408           node: '{node}'
409     builders:
410       - functest-kubernetes-pull-containers:
411           <<: *functest-kubernetes-containers
412
413 - project:
414     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-pull'
415     <<: *functest-kubernetes-opnfv-functest-kubernetes-smoke-params
416     jobs:
417       - 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-pull'
418
419 - job-template:
420     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
421     parameters:
422       - functest-kubernetes-node:
423           node: '{node}'
424     builders:
425       - functest-kubernetes-remove-images:
426           <<: *functest-kubernetes-containers
427
428 - project:
429     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-rmi'
430     <<: *functest-kubernetes-opnfv-functest-kubernetes-smoke-params
431     jobs:
432       - 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
433
434 - job-template:
435     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-pull'
436     parameters:
437       - functest-kubernetes-node:
438           node: '{node}'
439     builders:
440       - functest-kubernetes-pull-containers:
441           <<: *functest-kubernetes-containers
442
443 - project:
444     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-pull'
445     <<: *functest-kubernetes-opnfv-functest-kubernetes-security-params
446     jobs:
447       - 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-pull'
448
449 - job-template:
450     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
451     parameters:
452       - functest-kubernetes-node:
453           node: '{node}'
454     builders:
455       - functest-kubernetes-remove-images:
456           <<: *functest-kubernetes-containers
457
458 - project:
459     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-rmi'
460     <<: *functest-kubernetes-opnfv-functest-kubernetes-security-params
461     jobs:
462       - 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
463
464 - job-template:
465     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-pull'
466     parameters:
467       - functest-kubernetes-node:
468           node: '{node}'
469     builders:
470       - functest-kubernetes-pull-containers:
471           <<: *functest-kubernetes-containers
472
473 - project:
474     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-pull'
475     <<: *functest-kubernetes-opnfv-functest-kubernetes-benchmarking-params
476     jobs:
477       - 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-pull'
478
479 - job-template:
480     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
481     parameters:
482       - functest-kubernetes-node:
483           node: '{node}'
484     builders:
485       - functest-kubernetes-remove-images:
486           <<: *functest-kubernetes-containers
487
488 - project:
489     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-rmi'
490     <<: *functest-kubernetes-opnfv-functest-kubernetes-benchmarking-params
491     jobs:
492       - 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
493
494 - job-template:
495     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-pull'
496     parameters:
497       - functest-kubernetes-node:
498           node: '{node}'
499     builders:
500       - functest-kubernetes-pull-containers:
501           <<: *functest-kubernetes-containers
502
503 - project:
504     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-pull'
505     <<: *functest-kubernetes-opnfv-functest-kubernetes-cnf-params
506     jobs:
507       - 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-pull'
508
509 - job-template:
510     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
511     parameters:
512       - functest-kubernetes-node:
513           node: '{node}'
514     builders:
515       - functest-kubernetes-remove-images:
516           <<: *functest-kubernetes-containers
517
518 - project:
519     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-rmi'
520     <<: *functest-kubernetes-opnfv-functest-kubernetes-cnf-params
521     jobs:
522       - 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
523
524 - job-template:
525     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-{test}-run'
526     parameters:
527       - functest-kubernetes-node:
528           node: '{node}'
529       - functest-kubernetes-build_tag:
530           build_tag: ''
531       - functest-kubernetes-DEPLOY_SCENARIO:
532           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
533     builders:
534       - functest-kubernetes-run-containers:
535           <<: *functest-kubernetes-run-containers
536           test: '{test}'
537
538 - project:
539     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck'
540     <<: *functest-kubernetes-opnfv-functest-kubernetes-healthcheck-params
541     volumes:
542       - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
543       - /home/opnfv/functest-kubernetes/config.{tag}:/home/xtesting/.kube/config
544     env:
545       - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
546     published_ports:
547     container: 'functest-kubernetes-healthcheck'
548     test:
549       - k8s_quick
550       - k8s_smoke
551     privileged: 'false'
552     network: bridge
553     uid: 1000
554     gid: 1000
555     jobs:
556       - 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-{test}-run'
557
558 - job-template:
559     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-{test}-run'
560     parameters:
561       - functest-kubernetes-node:
562           node: '{node}'
563       - functest-kubernetes-build_tag:
564           build_tag: ''
565       - functest-kubernetes-DEPLOY_SCENARIO:
566           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
567     builders:
568       - functest-kubernetes-run-containers:
569           <<: *functest-kubernetes-run-containers
570           test: '{test}'
571
572 - project:
573     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke'
574     <<: *functest-kubernetes-opnfv-functest-kubernetes-smoke-params
575     volumes:
576       - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
577       - /home/opnfv/functest-kubernetes/config.{tag}:/home/xtesting/.kube/config
578     env:
579       - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
580     published_ports:
581     container: 'functest-kubernetes-smoke'
582     test:
583       - xrally_kubernetes
584       - k8s_conformance
585       - k8s_conformance_serial
586       - sig_api_machinery
587       - sig_api_machinery_serial
588       - sig_apps
589       - sig_apps_serial
590       - sig_auth
591       - sig_cluster_lifecycle
592       - sig_instrumentation
593       - sig_network
594       - sig_node
595       - sig_scheduling_serial
596       - sig_storage
597       - sig_storage_serial
598     privileged: 'false'
599     network: bridge
600     uid: 1000
601     gid: 1000
602     jobs:
603       - 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-{test}-run'
604
605 - job-template:
606     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-{test}-run'
607     parameters:
608       - functest-kubernetes-node:
609           node: '{node}'
610       - functest-kubernetes-build_tag:
611           build_tag: ''
612       - functest-kubernetes-DEPLOY_SCENARIO:
613           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
614     builders:
615       - functest-kubernetes-run-containers:
616           <<: *functest-kubernetes-run-containers
617           test: '{test}'
618
619 - project:
620     name: 'functest-kubernetes-opnfv-functest-kubernetes-security'
621     <<: *functest-kubernetes-opnfv-functest-kubernetes-security-params
622     volumes:
623       - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
624       - /home/opnfv/functest-kubernetes/config.{tag}:/home/xtesting/.kube/config
625     env:
626       - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
627     published_ports:
628     container: 'functest-kubernetes-security'
629     test:
630       - kube_hunter
631       - kube_bench_master
632       - kube_bench_node
633     privileged: 'false'
634     network: bridge
635     uid: 1000
636     gid: 1000
637     jobs:
638       - 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-{test}-run'
639
640 - job-template:
641     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-{test}-run'
642     parameters:
643       - functest-kubernetes-node:
644           node: '{node}'
645       - functest-kubernetes-build_tag:
646           build_tag: ''
647       - functest-kubernetes-DEPLOY_SCENARIO:
648           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
649     builders:
650       - functest-kubernetes-run-containers:
651           <<: *functest-kubernetes-run-containers
652           test: '{test}'
653
654 - project:
655     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking'
656     <<: *functest-kubernetes-opnfv-functest-kubernetes-benchmarking-params
657     volumes:
658       - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
659       - /home/opnfv/functest-kubernetes/config.{tag}:/home/xtesting/.kube/config
660     env:
661       - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
662     published_ports:
663     container: 'functest-kubernetes-benchmarking'
664     test:
665       - xrally_kubernetes_full
666       - netperf
667     privileged: 'false'
668     network: bridge
669     uid: 1000
670     gid: 1000
671     jobs:
672       - 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-{test}-run'
673
674 - job-template:
675     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-{test}-run'
676     parameters:
677       - functest-kubernetes-node:
678           node: '{node}'
679       - functest-kubernetes-build_tag:
680           build_tag: ''
681       - functest-kubernetes-DEPLOY_SCENARIO:
682           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
683     builders:
684       - functest-kubernetes-run-containers:
685           <<: *functest-kubernetes-run-containers
686           test: '{test}'
687
688 - project:
689     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf'
690     <<: *functest-kubernetes-opnfv-functest-kubernetes-cnf-params
691     volumes:
692       - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
693       - /home/opnfv/functest-kubernetes/config.{tag}:/home/xtesting/.kube/config
694     env:
695       - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
696     published_ports:
697     container: 'functest-kubernetes-cnf'
698     test:
699       - k8s_vims
700       - helm_vims
701       - cnf_testsuite
702     privileged: 'false'
703     network: bridge
704     uid: 1000
705     gid: 1000
706     jobs:
707       - 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-{test}-run'
708
709 - builder:
710     name: functest-kubernetes-zip
711     builders:
712       - shell: |
713           set +x
714           volumes=;
715           if [ "{volumes}" != "None" ]; then
716             for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); \
717               do volumes="-v $i $volumes"; done
718           fi
719           env=;
720           if [ "{env}" != "None" ]; then
721             for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); \
722               do env="-e $i $env"; done
723           fi
724           published_ports=;
725           if [ "{published_ports}" != "None" ]; then
726             for i in $(echo {published_ports} | tr -d '[]' |sed "s/, / /g" ); \
727               do published_ports="-p $i $published_ports"; done
728           fi
729           [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
730           if [ "{repo}" = "_" ]; then
731             image={container}:{tag}
732           elif [ "{port}" = "None" ]; then
733             image={repo}/{container}:{tag}
734           else
735             image={repo}:{port}/{container}:{tag}
736           fi
737           mkdir -p $WORKSPACE/results
738           chown {uid}:{gid} $WORKSPACE/results
739           docker run --rm \
740             --privileged={privileged} \
741             --network={network} \
742             $volumes \
743             $env \
744             $published_ports \
745             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
746             -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes \
747             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes \
748             -v /home/opnfv/functest-kubernetes/.boto:/etc/boto.cfg \
749             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
750             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
751             -e NODE_NAME=$node \
752             -e BUILD_TAG=$BUILD_TAG \
753             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
754             $image zip_campaign
755
756 - job-template:
757     name: 'functest-kubernetes-{tag}-zip'
758     parameters:
759       - functest-kubernetes-node:
760           node: '{node}'
761       - functest-kubernetes-build_tag:
762           build_tag: ''
763       - functest-kubernetes-DEPLOY_SCENARIO:
764           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
765     builders:
766       - functest-kubernetes-zip:
767           <<: *functest-kubernetes-run-containers
768
769 - project:
770     name: 'functest-kubernetes-{tag}-zip'
771     <<: *functest-kubernetes-opnfv-functest-kubernetes-healthcheck-params
772     volumes:
773       - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
774       - /home/opnfv/functest-kubernetes/config.{tag}:/home/xtesting/.kube/config
775     env:
776       - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
777     published_ports:
778     container: 'functest-kubernetes-healthcheck'
779     privileged: 'false'
780     network: bridge
781     uid: 1000
782     gid: 1000
783     jobs:
784       - 'functest-kubernetes-{tag}-zip'
785
786 - job-template:
787     name: 'functest-kubernetes-{tag}-daily'
788     project-type: multijob
789     triggers:
790       - timed: '@weekly'
791     parameters:
792       - functest-kubernetes-node:
793           node: '{node}'
794       - functest-kubernetes-build_tag:
795           build_tag: ''
796       - functest-kubernetes-DEPLOY_SCENARIO:
797           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
798     # PyYAML and yamllint differ here
799     # see https://github.com/yaml/pyyaml/issues/234
800     # yamllint disable rule:indentation
801     properties:
802       - build-blocker:
803           blocking-jobs:
804           - ^functest-kubernetes-(pi-)*.*-(daily|docker|review)$
805     # yamllint enable rule:indentation
806     builders:
807       - multijob:
808           name: remove former images
809           projects:
810             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
811               <<: *functest-kubernetes-jobs
812             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
813               <<: *functest-kubernetes-jobs
814             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
815               <<: *functest-kubernetes-jobs
816             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
817               <<: *functest-kubernetes-jobs
818             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
819               <<: *functest-kubernetes-jobs
820       - multijob:
821           name: pull containers
822           projects:
823             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-pull'
824               <<: *functest-kubernetes-jobs
825             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-pull'
826               <<: *functest-kubernetes-jobs
827             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-pull'
828               <<: *functest-kubernetes-jobs
829             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-pull'
830               <<: *functest-kubernetes-jobs
831             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-pull'
832               <<: *functest-kubernetes-jobs
833       - multijob:
834           name: opnfv/functest-kubernetes-healthcheck:{tag}
835           projects:
836             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
837               <<: *functest-kubernetes-jobs
838             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
839               <<: *functest-kubernetes-jobs
840       - multijob:
841           name: opnfv/functest-kubernetes-smoke:{tag}
842           execution-type: SEQUENTIALLY
843           projects:
844             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
845               <<: *functest-kubernetes-jobs
846             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
847               <<: *functest-kubernetes-jobs
848             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance_serial-run'
849               <<: *functest-kubernetes-jobs
850             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery-run'
851               <<: *functest-kubernetes-jobs
852             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery_serial-run'
853               <<: *functest-kubernetes-jobs
854             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps-run'
855               <<: *functest-kubernetes-jobs
856             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps_serial-run'
857               <<: *functest-kubernetes-jobs
858             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_auth-run'
859               <<: *functest-kubernetes-jobs
860             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cluster_lifecycle-run'
861               <<: *functest-kubernetes-jobs
862             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_instrumentation-run'
863               <<: *functest-kubernetes-jobs
864             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network-run'
865               <<: *functest-kubernetes-jobs
866             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_node-run'
867               <<: *functest-kubernetes-jobs
868             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_scheduling_serial-run'
869               <<: *functest-kubernetes-jobs
870             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage-run'
871               <<: *functest-kubernetes-jobs
872             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage_serial-run'
873               <<: *functest-kubernetes-jobs
874       - multijob:
875           name: opnfv/functest-kubernetes-security:{tag}
876           projects:
877             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
878               <<: *functest-kubernetes-jobs
879             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_master-run'
880               <<: *functest-kubernetes-jobs
881             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_node-run'
882               <<: *functest-kubernetes-jobs
883       - multijob:
884           name: opnfv/functest-kubernetes-benchmarking:{tag}
885           projects:
886             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
887               <<: *functest-kubernetes-jobs
888             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-netperf-run'
889               <<: *functest-kubernetes-jobs
890       - multijob:
891           name: opnfv/functest-kubernetes-cnf:{tag}
892           projects:
893             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
894               <<: *functest-kubernetes-jobs
895             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-helm_vims-run'
896               <<: *functest-kubernetes-jobs
897             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_testsuite-run'
898               <<: *functest-kubernetes-jobs
899       - multijob:
900           name: dump all campaign data
901           projects:
902             - name: 'functest-kubernetes-{tag}-zip'
903               <<: *functest-kubernetes-jobs
904     publishers:
905       - email-ext:
906           failure: false
907           first-failure: true
908           fixed: true
909           recipients: cedric.ollivier@orange.com
910
911 - project:
912     name: 'functest-kubernetes-daily'
913     <<: *functest-kubernetes-params
914     jobs:
915       - 'functest-kubernetes-{tag}-daily'
916
917 - view:
918     name: functest-kubernetes
919     view-type: list
920     columns:
921       - status
922       - weather
923       - job
924       - last-success
925       - last-failure
926       - last-duration
927     regex: ^functest-kubernetes-[a-z0-9.-]+-daily$
928
929 - functest-kubernetes-build-containers: &functest-kubernetes-build-containers
930     name: 'functest-kubernetes-build-containers'
931     <<: *functest-kubernetes-containers
932     ref_arg: '{ref_arg}'
933     path: '{path}'
934     build_args: '{build_args}'
935     from: '{from}'
936
937 - builder:
938     name: functest-kubernetes-build-containers
939     builders:
940       - shell: |
941           set +x
942           if [ "{repo}" = "_" ]; then
943             image={container}:{tag}
944           elif [ "{port}" = "None" ]; then
945             image={repo}/{container}:{tag}
946           else
947             image={repo}:{port}/{container}:{tag}
948           fi
949           build_args=""
950           if [ "{build_args}" != "None" ]; then
951             for i in $(echo {build_args} | tr -d '[]' |sed "s/, / /g" ); \
952               do build_args="--build-arg $i $build_args"; done
953           fi
954           if [ "{ref_arg}" != "None" ]; then
955             build_args="$build_args --build-arg {ref_arg}={ref}"
956           fi
957           cd {path}
958           if [ "{from}" != "None" ]; then
959               sed -i {from} Dockerfile
960           fi
961           docker build $build_args \
962             --pull=false --no-cache --force-rm=true \
963             -t $image .
964
965 - scm:
966     name: functest-kubernetes-scm
967     scm:
968       - git:
969           url: 'https://gerrit.opnfv.org/gerrit/functest-kubernetes'
970           refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/*'
971           branches:
972             - '{ref}'
973
974 - functest-kubernetes-dep: &functest-kubernetes-dep
975     name: 'functest-kubernetes-containers'
976     repo: '{repo}'
977     container: '{container}'
978     port: '{port}'
979     tag: '{dependency}'
980
981 - job-template:
982     name: 'functest-kubernetes-{tag}-dep-pull'
983     parameters:
984       - functest-kubernetes-node:
985           node: '{node}'
986     builders:
987       - functest-kubernetes-pull-containers:
988           <<: *functest-kubernetes-dep
989
990 - functest-kubernetes-dep-params: &functest-kubernetes-dep-params
991     name: 'functest-kubernetes-dep-params'
992     repo: '_'
993     container: 'alpine'
994     port:
995     tag:
996       - latest:
997           dependency: 3.16
998       - v1.26:
999           dependency: 3.16
1000       - v1.25:
1001           dependency: 3.16
1002       - v1.24:
1003           dependency: 3.16
1004       - v1.23:
1005           dependency: 3.14
1006       - v1.22:
1007           dependency: 3.14
1008
1009 - project:
1010     name: 'functest-kubernetes-{tag}-dep-pull'
1011     <<: *functest-kubernetes-dep-params
1012     jobs:
1013       - 'functest-kubernetes-{tag}-dep-pull'
1014
1015 - job-template:
1016     name: 'functest-kubernetes-{tag}-dep-rmi'
1017     parameters:
1018       - functest-kubernetes-node:
1019           node: '{node}'
1020     builders:
1021       - functest-kubernetes-remove-images:
1022           <<: *functest-kubernetes-dep
1023
1024 - project:
1025     name: 'functest-kubernetes-{tag}-dep-rmi'
1026     <<: *functest-kubernetes-dep-params
1027     jobs:
1028       - 'functest-kubernetes-{tag}-dep-rmi'
1029
1030 - builder:
1031     name: functest-kubernetes-tox
1032     builders:
1033       - shell: |
1034           set +x
1035           apt-get -o DPkg::Lock::Timeout=300 update && \
1036           DEBIAN_FRONTEND=noninteractive apt-get \
1037             -o DPkg::Lock::Timeout=300 dist-upgrade -y
1038           DEBIAN_FRONTEND=noninteractive \
1039           apt-get -o DPkg::Lock::Timeout=300 install software-properties-common gpg -y
1040           add-apt-repository -y ppa:deadsnakes/ppa
1041           apt-get -o DPkg::Lock::Timeout=300 update && \
1042           DEBIAN_FRONTEND=noninteractive apt-get \
1043             -o DPkg::Lock::Timeout=300 install \
1044             libxml2-dev libxslt-dev libffi-dev libjpeg-dev \
1045             python3.10 python3.10-dev python3.10-distutils \
1046             python3.9 python3.9-dev python3.9-distutils \
1047             python3.8 python3.8-dev python3.8-distutils \
1048             python3-pip enchant-2 -y
1049           pip3 install tox tox-pip-version
1050
1051           tox
1052
1053 - job-template:
1054     name: 'functest-kubernetes-{tag}-tox'
1055     scm:
1056       - functest-kubernetes-scm:
1057           ref: $GERRIT_REFSPEC
1058     triggers:
1059       - functest-kubernetes-patchset-created:
1060           branch: '{branch}'
1061     parameters:
1062       - functest-kubernetes-node:
1063           node: '{node}'
1064     builders:
1065       - functest-kubernetes-tox:
1066
1067 - project:
1068     name: functest-kubernetes-tox
1069     <<: *functest-kubernetes-params
1070     jobs:
1071       - 'functest-kubernetes-{tag}-tox'
1072
1073 - job-template:
1074     name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate'
1075     parameters:
1076       - functest-kubernetes-node:
1077           node: '{node}'
1078     scm:
1079       - functest-kubernetes-scm:
1080           ref: $GERRIT_REFSPEC
1081     builders:
1082       - functest-kubernetes-build-containers:
1083           <<: *functest-kubernetes-build-containers
1084           ref: $GERRIT_REFSPEC
1085           build_args: '{build_args}'
1086
1087 - project:
1088     name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate
1089     <<: *functest-kubernetes-params
1090     repo: opnfv
1091     port:
1092     container: functest-kubernetes-core
1093     ref_arg: BRANCH
1094     path: docker/core
1095     jobs:
1096       - 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate'
1097
1098 - job-template:
1099     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate'
1100     parameters:
1101       - functest-kubernetes-node:
1102           node: '{node}'
1103     scm:
1104       - functest-kubernetes-scm:
1105           ref: $GERRIT_REFSPEC
1106     builders:
1107       - functest-kubernetes-build-containers:
1108           <<: *functest-kubernetes-build-containers
1109           ref: $GERRIT_REFSPEC
1110           build_args: '{build_args}'
1111
1112 - project:
1113     name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate
1114     <<: *functest-kubernetes-params
1115     repo: opnfv
1116     port:
1117     container: functest-kubernetes-healthcheck
1118     ref_arg:
1119     path: docker/healthcheck
1120     jobs:
1121       - 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate'
1122
1123 - job-template:
1124     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate'
1125     parameters:
1126       - functest-kubernetes-node:
1127           node: '{node}'
1128     scm:
1129       - functest-kubernetes-scm:
1130           ref: $GERRIT_REFSPEC
1131     builders:
1132       - functest-kubernetes-build-containers:
1133           <<: *functest-kubernetes-build-containers
1134           ref: $GERRIT_REFSPEC
1135           build_args: '{build_args}'
1136
1137 - project:
1138     name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate
1139     <<: *functest-kubernetes-params
1140     repo: opnfv
1141     port:
1142     container: functest-kubernetes-cnf
1143     ref_arg: BRANCH
1144     path: docker/cnf
1145     jobs:
1146       - 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate'
1147
1148 - job-template:
1149     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate'
1150     parameters:
1151       - functest-kubernetes-node:
1152           node: '{node}'
1153     scm:
1154       - functest-kubernetes-scm:
1155           ref: $GERRIT_REFSPEC
1156     builders:
1157       - functest-kubernetes-build-containers:
1158           <<: *functest-kubernetes-build-containers
1159           ref: $GERRIT_REFSPEC
1160           build_args: '{build_args}'
1161
1162 - project:
1163     name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate
1164     <<: *functest-kubernetes-params
1165     repo: opnfv
1166     port:
1167     container: functest-kubernetes-security
1168     ref_arg: BRANCH
1169     path: docker/security
1170     jobs:
1171       - 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate'
1172
1173 - job-template:
1174     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate'
1175     parameters:
1176       - functest-kubernetes-node:
1177           node: '{node}'
1178     scm:
1179       - functest-kubernetes-scm:
1180           ref: $GERRIT_REFSPEC
1181     builders:
1182       - functest-kubernetes-build-containers:
1183           <<: *functest-kubernetes-build-containers
1184           ref: $GERRIT_REFSPEC
1185           build_args: '{build_args}'
1186
1187 - project:
1188     name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate
1189     <<: *functest-kubernetes-params
1190     repo: opnfv
1191     port:
1192     container: functest-kubernetes-smoke
1193     ref_arg:
1194     path: docker/smoke
1195     jobs:
1196       - 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate'
1197
1198 - job-template:
1199     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate'
1200     parameters:
1201       - functest-kubernetes-node:
1202           node: '{node}'
1203     scm:
1204       - functest-kubernetes-scm:
1205           ref: $GERRIT_REFSPEC
1206     builders:
1207       - functest-kubernetes-build-containers:
1208           <<: *functest-kubernetes-build-containers
1209           ref: $GERRIT_REFSPEC
1210           build_args: '{build_args}'
1211
1212 - project:
1213     name: functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate
1214     <<: *functest-kubernetes-params
1215     repo: opnfv
1216     port:
1217     container: functest-kubernetes-benchmarking
1218     ref_arg:
1219     path: docker/benchmarking
1220     jobs:
1221       - 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate'
1222
1223 - trigger:
1224     name: functest-kubernetes-patchset-created
1225     triggers:
1226       - gerrit:
1227           trigger-on:
1228             - patchset-created-event
1229             - comment-added-contains-event:
1230                 comment-contains-value: 'recheck'
1231             - comment-added-contains-event:
1232                 comment-contains-value: 'reverify'
1233           projects:
1234             - project-compare-type: 'ANT'
1235               project-pattern: 'functest-kubernetes'
1236               branches:
1237                 - branch-compare-type: 'ANT'
1238                   branch-pattern: '**/{branch}'
1239
1240 - job-template:
1241     name: 'functest-kubernetes-{tag}-review'
1242     project-type: multijob
1243     triggers:
1244       - functest-kubernetes-patchset-created:
1245           branch: '{branch}'
1246     parameters:
1247       - functest-kubernetes-node:
1248           node: '{node}'
1249       - functest-kubernetes-build_tag:
1250           build_tag: ''
1251       - functest-kubernetes-DEPLOY_SCENARIO:
1252           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
1253     # PyYAML and yamllint differ here
1254     # see https://github.com/yaml/pyyaml/issues/234
1255     # yamllint disable rule:indentation
1256     properties:
1257       - build-blocker:
1258           blocking-jobs:
1259           - ^functest-kubernetes-(pi-)*.*-(daily|docker|review)$
1260     # yamllint enable rule:indentation
1261     builders:
1262       - multijob:
1263           name: remove former images
1264           projects:
1265             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
1266               <<: *functest-kubernetes-jobs
1267             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
1268               <<: *functest-kubernetes-jobs
1269             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
1270               <<: *functest-kubernetes-jobs
1271             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
1272               <<: *functest-kubernetes-jobs
1273             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
1274               <<: *functest-kubernetes-jobs
1275       - multijob:
1276           name: remove dependency
1277           projects:
1278             - name: 'functest-kubernetes-{tag}-dep-rmi'
1279               <<: *functest-kubernetes-jobs
1280       - multijob:
1281           name: pull dependency
1282           projects:
1283             - name: 'functest-kubernetes-{tag}-dep-pull'
1284               <<: *functest-kubernetes-jobs
1285       - multijob:
1286           name: build opnfv/functest-kubernetes-core
1287           projects:
1288             - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate'
1289               <<: *functest-kubernetes-jobs
1290       - multijob:
1291           name: build containers
1292           projects:
1293             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate'
1294               <<: *functest-kubernetes-jobs
1295             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate'
1296               <<: *functest-kubernetes-jobs
1297             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate'
1298               <<: *functest-kubernetes-jobs
1299       - multijob:
1300           name: build opnfv/functest-kubernetes-smoke
1301           projects:
1302             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate'
1303               <<: *functest-kubernetes-jobs
1304       - multijob:
1305           name: build opnfv/functest-kubernetes-benchmarking
1306           projects:
1307             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate'
1308               <<: *functest-kubernetes-jobs
1309       - multijob:
1310           name: opnfv/functest-kubernetes-healthcheck:{tag}
1311           projects:
1312             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
1313               <<: *functest-kubernetes-jobs
1314             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
1315               <<: *functest-kubernetes-jobs
1316       - multijob:
1317           name: opnfv/functest-kubernetes-smoke:{tag}
1318           execution-type: SEQUENTIALLY
1319           projects:
1320             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
1321               <<: *functest-kubernetes-jobs
1322             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
1323               <<: *functest-kubernetes-jobs
1324             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance_serial-run'
1325               <<: *functest-kubernetes-jobs
1326             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery-run'
1327               <<: *functest-kubernetes-jobs
1328             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery_serial-run'
1329               <<: *functest-kubernetes-jobs
1330             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps-run'
1331               <<: *functest-kubernetes-jobs
1332             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps_serial-run'
1333               <<: *functest-kubernetes-jobs
1334             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_auth-run'
1335               <<: *functest-kubernetes-jobs
1336             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cluster_lifecycle-run'
1337               <<: *functest-kubernetes-jobs
1338             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_instrumentation-run'
1339               <<: *functest-kubernetes-jobs
1340             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network-run'
1341               <<: *functest-kubernetes-jobs
1342             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_node-run'
1343               <<: *functest-kubernetes-jobs
1344             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_scheduling_serial-run'
1345               <<: *functest-kubernetes-jobs
1346             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage-run'
1347               <<: *functest-kubernetes-jobs
1348             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage_serial-run'
1349               <<: *functest-kubernetes-jobs
1350       - multijob:
1351           name: opnfv/functest-kubernetes-security:{tag}
1352           projects:
1353             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
1354               <<: *functest-kubernetes-jobs
1355             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_master-run'
1356               <<: *functest-kubernetes-jobs
1357             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_node-run'
1358               <<: *functest-kubernetes-jobs
1359       - multijob:
1360           name: opnfv/functest-kubernetes-benchmarking:{tag}
1361           projects:
1362             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
1363               <<: *functest-kubernetes-jobs
1364             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-netperf-run'
1365               <<: *functest-kubernetes-jobs
1366       - multijob:
1367           name: opnfv/functest-kubernetes-cnf:{tag}
1368           projects:
1369             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
1370               <<: *functest-kubernetes-jobs
1371             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-helm_vims-run'
1372               <<: *functest-kubernetes-jobs
1373             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_testsuite-run'
1374               <<: *functest-kubernetes-jobs
1375     publishers:
1376       - email-ext:
1377           failure: false
1378           first-failure: true
1379           fixed: true
1380           recipients: cedric.ollivier@orange.com
1381
1382 - project:
1383     name: 'functest-kubernetes-review'
1384     <<: *functest-kubernetes-params
1385     jobs:
1386       - 'functest-kubernetes-{tag}-review'
1387
1388 - view:
1389     name: functest-kubernetes-review
1390     view-type: list
1391     columns:
1392       - status
1393       - weather
1394       - job
1395       - last-success
1396       - last-failure
1397       - last-duration
1398     regex: ^functest-kubernetes-[a-z0-9.-]+-review$
1399
1400 - view:
1401     name: functest-kubernetes-tox
1402     view-type: list
1403     columns:
1404       - status
1405       - weather
1406       - job
1407       - last-success
1408       - last-failure
1409       - last-duration
1410     regex: ^functest-kubernetes-[a-z0-9.-]+-tox$
1411
1412 - builder:
1413     name: functest-kubernetes-push-containers
1414     builders:
1415       - shell: |
1416           set +x
1417           if [ "{repo}" = "_" ]; then
1418             image={container}:{tag}
1419           elif [ "{port}" = "None" ]; then
1420             image={repo}/{container}:{tag}
1421           else
1422             image={repo}:{port}/{container}:{tag}
1423           fi
1424           docker push $image
1425
1426 - trigger:
1427     name: functest-kubernetes-commit
1428     triggers:
1429       - pollscm:
1430           cron: "*/30 * * * *"
1431
1432 - job-template:
1433     name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build'
1434     parameters:
1435       - functest-kubernetes-node:
1436           node: '{node}'
1437     scm:
1438       - functest-kubernetes-scm:
1439           ref: '{branch}'
1440     builders:
1441       - functest-kubernetes-build-containers:
1442           <<: *functest-kubernetes-build-containers
1443           ref: '{branch}'
1444           build_args: '{build_args}'
1445       - functest-kubernetes-push-containers:
1446           <<: *functest-kubernetes-build-containers
1447           ref: '{branch}'
1448
1449 - project:
1450     name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build
1451     <<: *functest-kubernetes-params
1452     repo: opnfv
1453     container: functest-kubernetes-core
1454     port:
1455     ref_arg: BRANCH
1456     path: docker/core
1457     jobs:
1458       - 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build'
1459
1460 - job-template:
1461     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build'
1462     parameters:
1463       - functest-kubernetes-node:
1464           node: '{node}'
1465     scm:
1466       - functest-kubernetes-scm:
1467           ref: '{branch}'
1468     builders:
1469       - functest-kubernetes-build-containers:
1470           <<: *functest-kubernetes-build-containers
1471           ref: '{branch}'
1472           build_args: '{build_args}'
1473       - functest-kubernetes-push-containers:
1474           <<: *functest-kubernetes-build-containers
1475           ref: '{branch}'
1476
1477 - project:
1478     name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build
1479     <<: *functest-kubernetes-params
1480     repo: opnfv
1481     container: functest-kubernetes-healthcheck
1482     port:
1483     ref_arg:
1484     path: docker/healthcheck
1485     jobs:
1486       - 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build'
1487
1488 - job-template:
1489     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build'
1490     parameters:
1491       - functest-kubernetes-node:
1492           node: '{node}'
1493     scm:
1494       - functest-kubernetes-scm:
1495           ref: '{branch}'
1496     builders:
1497       - functest-kubernetes-build-containers:
1498           <<: *functest-kubernetes-build-containers
1499           ref: '{branch}'
1500           build_args: '{build_args}'
1501       - functest-kubernetes-push-containers:
1502           <<: *functest-kubernetes-build-containers
1503           ref: '{branch}'
1504
1505 - project:
1506     name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build
1507     <<: *functest-kubernetes-params
1508     repo: opnfv
1509     container: functest-kubernetes-cnf
1510     port:
1511     ref_arg: BRANCH
1512     path: docker/cnf
1513     jobs:
1514       - 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build'
1515
1516 - job-template:
1517     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build'
1518     parameters:
1519       - functest-kubernetes-node:
1520           node: '{node}'
1521     scm:
1522       - functest-kubernetes-scm:
1523           ref: '{branch}'
1524     builders:
1525       - functest-kubernetes-build-containers:
1526           <<: *functest-kubernetes-build-containers
1527           ref: '{branch}'
1528           build_args: '{build_args}'
1529       - functest-kubernetes-push-containers:
1530           <<: *functest-kubernetes-build-containers
1531           ref: '{branch}'
1532
1533 - project:
1534     name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build
1535     <<: *functest-kubernetes-params
1536     repo: opnfv
1537     container: functest-kubernetes-security
1538     port:
1539     ref_arg: BRANCH
1540     path: docker/security
1541     jobs:
1542       - 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build'
1543
1544 - job-template:
1545     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build'
1546     parameters:
1547       - functest-kubernetes-node:
1548           node: '{node}'
1549     scm:
1550       - functest-kubernetes-scm:
1551           ref: '{branch}'
1552     builders:
1553       - functest-kubernetes-build-containers:
1554           <<: *functest-kubernetes-build-containers
1555           ref: '{branch}'
1556           build_args: '{build_args}'
1557       - functest-kubernetes-push-containers:
1558           <<: *functest-kubernetes-build-containers
1559           ref: '{branch}'
1560
1561 - project:
1562     name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build
1563     <<: *functest-kubernetes-params
1564     repo: opnfv
1565     container: functest-kubernetes-smoke
1566     port:
1567     ref_arg:
1568     path: docker/smoke
1569     jobs:
1570       - 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build'
1571
1572 - job-template:
1573     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build'
1574     parameters:
1575       - functest-kubernetes-node:
1576           node: '{node}'
1577     scm:
1578       - functest-kubernetes-scm:
1579           ref: '{branch}'
1580     builders:
1581       - functest-kubernetes-build-containers:
1582           <<: *functest-kubernetes-build-containers
1583           ref: '{branch}'
1584           build_args: '{build_args}'
1585       - functest-kubernetes-push-containers:
1586           <<: *functest-kubernetes-build-containers
1587           ref: '{branch}'
1588
1589 - project:
1590     name: functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build
1591     <<: *functest-kubernetes-params
1592     repo: opnfv
1593     container: functest-kubernetes-benchmarking
1594     port:
1595     ref_arg:
1596     path: docker/benchmarking
1597     jobs:
1598       - 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build'
1599
1600 - job-template:
1601     name: 'functest-kubernetes-{tag}-docker'
1602     project-type: multijob
1603     triggers:
1604       - functest-kubernetes-commit
1605     scm:
1606       - functest-kubernetes-scm:
1607           ref: '{branch}'
1608     parameters:
1609       - functest-kubernetes-node:
1610           node: '{node}'
1611     # PyYAML and yamllint differ here
1612     # see https://github.com/yaml/pyyaml/issues/234
1613     # yamllint disable rule:indentation
1614     properties:
1615       - build-blocker:
1616           blocking-jobs:
1617           - ^functest-kubernetes-(pi-)*.*-(daily|docker|review)$
1618     # yamllint enable rule:indentation
1619     builders:
1620       - multijob:
1621           name: remove dependency
1622           projects:
1623             - name: 'functest-kubernetes-{tag}-dep-rmi'
1624               <<: *functest-kubernetes-jobs
1625       - multijob:
1626           name: pull dependency
1627           projects:
1628             - name: 'functest-kubernetes-{tag}-dep-pull'
1629               <<: *functest-kubernetes-jobs
1630       - multijob:
1631           name: build opnfv/functest-kubernetes-core
1632           projects:
1633             - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build'
1634               <<: *functest-kubernetes-jobs
1635       - multijob:
1636           name: build containers
1637           projects:
1638             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build'
1639               <<: *functest-kubernetes-jobs
1640             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build'
1641               <<: *functest-kubernetes-jobs
1642             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build'
1643               <<: *functest-kubernetes-jobs
1644       - multijob:
1645           name: build opnfv/functest-kubernetes-smoke
1646           projects:
1647             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build'
1648               <<: *functest-kubernetes-jobs
1649       - multijob:
1650           name: build opnfv/functest-kubernetes-benchmarking
1651           projects:
1652             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build'
1653               <<: *functest-kubernetes-jobs
1654     publishers:
1655       - email-ext:
1656           failure: false
1657           first-failure: true
1658           fixed: true
1659           recipients: cedric.ollivier@orange.com
1660
1661 - builder:
1662     name: functest-kubernetes-trivy
1663     builders:
1664       - shell: |
1665           apt-get -o DPkg::Lock::Timeout=300 update && \
1666           DEBIAN_FRONTEND=noninteractive apt-get \
1667             -o DPkg::Lock::Timeout=300 install curl -y
1668
1669           curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sh -s -- -b .
1670           if [ "{repo}" = "_" ]; then
1671             image={container}:{tag}
1672           elif [ "{port}" = "None" ]; then
1673             image={repo}/{container}:{tag}
1674           else
1675             image={repo}:{port}/{container}:{tag}
1676           fi
1677           ./trivy image --exit-code 1 $image
1678
1679 - job-template:
1680     name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-trivy'
1681     triggers:
1682       - timed: '@weekly'
1683     parameters:
1684       - functest-kubernetes-node:
1685           node: '{node}'
1686     builders:
1687       - functest-kubernetes-trivy:
1688           <<: *functest-kubernetes-containers
1689     publishers:
1690       - email-ext:
1691           failure: false
1692           first-failure: true
1693           fixed: true
1694           recipients: cedric.ollivier@orange.com
1695
1696 - project:
1697     name: 'functest-kubernetes-opnfv-functest-kubernetes-core-trivy'
1698     <<: *functest-kubernetes-params
1699     repo: 'opnfv'
1700     container: 'functest-kubernetes-core'
1701     port:
1702     jobs:
1703       - 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-trivy'
1704
1705 - job-template:
1706     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-trivy'
1707     triggers:
1708       - timed: '@weekly'
1709     parameters:
1710       - functest-kubernetes-node:
1711           node: '{node}'
1712     builders:
1713       - functest-kubernetes-trivy:
1714           <<: *functest-kubernetes-containers
1715     publishers:
1716       - email-ext:
1717           failure: false
1718           first-failure: true
1719           fixed: true
1720           recipients: cedric.ollivier@orange.com
1721
1722 - project:
1723     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-trivy'
1724     <<: *functest-kubernetes-params
1725     repo: 'opnfv'
1726     container: 'functest-kubernetes-healthcheck'
1727     port:
1728     jobs:
1729       - 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-trivy'
1730
1731 - job-template:
1732     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-trivy'
1733     triggers:
1734       - timed: '@weekly'
1735     parameters:
1736       - functest-kubernetes-node:
1737           node: '{node}'
1738     builders:
1739       - functest-kubernetes-trivy:
1740           <<: *functest-kubernetes-containers
1741     publishers:
1742       - email-ext:
1743           failure: false
1744           first-failure: true
1745           fixed: true
1746           recipients: cedric.ollivier@orange.com
1747
1748 - project:
1749     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-trivy'
1750     <<: *functest-kubernetes-params
1751     repo: 'opnfv'
1752     container: 'functest-kubernetes-cnf'
1753     port:
1754     jobs:
1755       - 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-trivy'
1756
1757 - job-template:
1758     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-trivy'
1759     triggers:
1760       - timed: '@weekly'
1761     parameters:
1762       - functest-kubernetes-node:
1763           node: '{node}'
1764     builders:
1765       - functest-kubernetes-trivy:
1766           <<: *functest-kubernetes-containers
1767     publishers:
1768       - email-ext:
1769           failure: false
1770           first-failure: true
1771           fixed: true
1772           recipients: cedric.ollivier@orange.com
1773
1774 - project:
1775     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-trivy'
1776     <<: *functest-kubernetes-params
1777     repo: 'opnfv'
1778     container: 'functest-kubernetes-security'
1779     port:
1780     jobs:
1781       - 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-trivy'
1782
1783 - job-template:
1784     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-trivy'
1785     triggers:
1786       - timed: '@weekly'
1787     parameters:
1788       - functest-kubernetes-node:
1789           node: '{node}'
1790     builders:
1791       - functest-kubernetes-trivy:
1792           <<: *functest-kubernetes-containers
1793     publishers:
1794       - email-ext:
1795           failure: false
1796           first-failure: true
1797           fixed: true
1798           recipients: cedric.ollivier@orange.com
1799
1800 - project:
1801     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-trivy'
1802     <<: *functest-kubernetes-params
1803     repo: 'opnfv'
1804     container: 'functest-kubernetes-smoke'
1805     port:
1806     jobs:
1807       - 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-trivy'
1808
1809 - job-template:
1810     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-trivy'
1811     triggers:
1812       - timed: '@weekly'
1813     parameters:
1814       - functest-kubernetes-node:
1815           node: '{node}'
1816     builders:
1817       - functest-kubernetes-trivy:
1818           <<: *functest-kubernetes-containers
1819     publishers:
1820       - email-ext:
1821           failure: false
1822           first-failure: true
1823           fixed: true
1824           recipients: cedric.ollivier@orange.com
1825
1826 - project:
1827     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-trivy'
1828     <<: *functest-kubernetes-params
1829     repo: 'opnfv'
1830     container: 'functest-kubernetes-benchmarking'
1831     port:
1832     jobs:
1833       - 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-trivy'
1834
1835 - builder:
1836     name: functest-kubernetes-grype
1837     builders:
1838       - shell: |
1839           apt-get -o DPkg::Lock::Timeout=300 update && \
1840           DEBIAN_FRONTEND=noninteractive apt-get \
1841             -o DPkg::Lock::Timeout=300 install curl -y
1842
1843           curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b .
1844           if [ "{repo}" = "_" ]; then
1845             image={container}:{tag}
1846           elif [ "{port}" = "None" ]; then
1847             image={repo}/{container}:{tag}
1848           else
1849             image={repo}:{port}/{container}:{tag}
1850           fi
1851           ./grype -q $image
1852
1853 - job-template:
1854     name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-grype'
1855     triggers:
1856       - timed: '@weekly'
1857     parameters:
1858       - functest-kubernetes-node:
1859           node: '{node}'
1860     builders:
1861       - functest-kubernetes-grype:
1862           <<: *functest-kubernetes-containers
1863     publishers:
1864       - email-ext:
1865           failure: false
1866           first-failure: true
1867           fixed: true
1868           recipients: cedric.ollivier@orange.com
1869
1870 - project:
1871     name: 'functest-kubernetes-opnfv-functest-kubernetes-core-grype'
1872     <<: *functest-kubernetes-params
1873     repo: 'opnfv'
1874     container: 'functest-kubernetes-core'
1875     port:
1876     jobs:
1877       - 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-grype'
1878
1879 - job-template:
1880     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-grype'
1881     triggers:
1882       - timed: '@weekly'
1883     parameters:
1884       - functest-kubernetes-node:
1885           node: '{node}'
1886     builders:
1887       - functest-kubernetes-grype:
1888           <<: *functest-kubernetes-containers
1889     publishers:
1890       - email-ext:
1891           failure: false
1892           first-failure: true
1893           fixed: true
1894           recipients: cedric.ollivier@orange.com
1895
1896 - project:
1897     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-grype'
1898     <<: *functest-kubernetes-params
1899     repo: 'opnfv'
1900     container: 'functest-kubernetes-healthcheck'
1901     port:
1902     jobs:
1903       - 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-grype'
1904
1905 - job-template:
1906     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-grype'
1907     triggers:
1908       - timed: '@weekly'
1909     parameters:
1910       - functest-kubernetes-node:
1911           node: '{node}'
1912     builders:
1913       - functest-kubernetes-grype:
1914           <<: *functest-kubernetes-containers
1915     publishers:
1916       - email-ext:
1917           failure: false
1918           first-failure: true
1919           fixed: true
1920           recipients: cedric.ollivier@orange.com
1921
1922 - project:
1923     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-grype'
1924     <<: *functest-kubernetes-params
1925     repo: 'opnfv'
1926     container: 'functest-kubernetes-cnf'
1927     port:
1928     jobs:
1929       - 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-grype'
1930
1931 - job-template:
1932     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-grype'
1933     triggers:
1934       - timed: '@weekly'
1935     parameters:
1936       - functest-kubernetes-node:
1937           node: '{node}'
1938     builders:
1939       - functest-kubernetes-grype:
1940           <<: *functest-kubernetes-containers
1941     publishers:
1942       - email-ext:
1943           failure: false
1944           first-failure: true
1945           fixed: true
1946           recipients: cedric.ollivier@orange.com
1947
1948 - project:
1949     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-grype'
1950     <<: *functest-kubernetes-params
1951     repo: 'opnfv'
1952     container: 'functest-kubernetes-security'
1953     port:
1954     jobs:
1955       - 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-grype'
1956
1957 - job-template:
1958     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-grype'
1959     triggers:
1960       - timed: '@weekly'
1961     parameters:
1962       - functest-kubernetes-node:
1963           node: '{node}'
1964     builders:
1965       - functest-kubernetes-grype:
1966           <<: *functest-kubernetes-containers
1967     publishers:
1968       - email-ext:
1969           failure: false
1970           first-failure: true
1971           fixed: true
1972           recipients: cedric.ollivier@orange.com
1973
1974 - project:
1975     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-grype'
1976     <<: *functest-kubernetes-params
1977     repo: 'opnfv'
1978     container: 'functest-kubernetes-smoke'
1979     port:
1980     jobs:
1981       - 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-grype'
1982
1983 - job-template:
1984     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-grype'
1985     triggers:
1986       - timed: '@weekly'
1987     parameters:
1988       - functest-kubernetes-node:
1989           node: '{node}'
1990     builders:
1991       - functest-kubernetes-grype:
1992           <<: *functest-kubernetes-containers
1993     publishers:
1994       - email-ext:
1995           failure: false
1996           first-failure: true
1997           fixed: true
1998           recipients: cedric.ollivier@orange.com
1999
2000 - project:
2001     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-grype'
2002     <<: *functest-kubernetes-params
2003     repo: 'opnfv'
2004     container: 'functest-kubernetes-benchmarking'
2005     port:
2006     jobs:
2007       - 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-grype'
2008
2009 - builder:
2010     name: functest-kubernetes-sbom
2011     builders:
2012       - shell: |
2013           apt-get -o DPkg::Lock::Timeout=300 update && \
2014           DEBIAN_FRONTEND=noninteractive apt-get \
2015             -o DPkg::Lock::Timeout=300 install curl -y
2016
2017           mkdir -p ~/.docker
2018           curl -sSfL https://raw.githubusercontent.com/docker/sbom-cli-plugin/main/install.sh | sh -s --
2019           if [ "{repo}" = "_" ]; then
2020             image={container}:{tag}
2021           elif [ "{port}" = "None" ]; then
2022             image={repo}/{container}:{tag}
2023           else
2024             image={repo}:{port}/{container}:{tag}
2025           fi
2026           docker sbom $image
2027
2028 - job-template:
2029     name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-sbom'
2030     triggers:
2031       - timed: '@weekly'
2032     parameters:
2033       - functest-kubernetes-node:
2034           node: '{node}'
2035     builders:
2036       - functest-kubernetes-sbom:
2037           <<: *functest-kubernetes-containers
2038     publishers:
2039       - email-ext:
2040           failure: false
2041           first-failure: true
2042           fixed: true
2043           recipients: cedric.ollivier@orange.com
2044
2045 - project:
2046     name: 'functest-kubernetes-opnfv-functest-kubernetes-core-sbom'
2047     <<: *functest-kubernetes-params
2048     repo: 'opnfv'
2049     container: 'functest-kubernetes-core'
2050     port:
2051     jobs:
2052       - 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-sbom'
2053
2054 - job-template:
2055     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-sbom'
2056     triggers:
2057       - timed: '@weekly'
2058     parameters:
2059       - functest-kubernetes-node:
2060           node: '{node}'
2061     builders:
2062       - functest-kubernetes-sbom:
2063           <<: *functest-kubernetes-containers
2064     publishers:
2065       - email-ext:
2066           failure: false
2067           first-failure: true
2068           fixed: true
2069           recipients: cedric.ollivier@orange.com
2070
2071 - project:
2072     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-sbom'
2073     <<: *functest-kubernetes-params
2074     repo: 'opnfv'
2075     container: 'functest-kubernetes-healthcheck'
2076     port:
2077     jobs:
2078       - 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-sbom'
2079
2080 - job-template:
2081     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-sbom'
2082     triggers:
2083       - timed: '@weekly'
2084     parameters:
2085       - functest-kubernetes-node:
2086           node: '{node}'
2087     builders:
2088       - functest-kubernetes-sbom:
2089           <<: *functest-kubernetes-containers
2090     publishers:
2091       - email-ext:
2092           failure: false
2093           first-failure: true
2094           fixed: true
2095           recipients: cedric.ollivier@orange.com
2096
2097 - project:
2098     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-sbom'
2099     <<: *functest-kubernetes-params
2100     repo: 'opnfv'
2101     container: 'functest-kubernetes-cnf'
2102     port:
2103     jobs:
2104       - 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-sbom'
2105
2106 - job-template:
2107     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-sbom'
2108     triggers:
2109       - timed: '@weekly'
2110     parameters:
2111       - functest-kubernetes-node:
2112           node: '{node}'
2113     builders:
2114       - functest-kubernetes-sbom:
2115           <<: *functest-kubernetes-containers
2116     publishers:
2117       - email-ext:
2118           failure: false
2119           first-failure: true
2120           fixed: true
2121           recipients: cedric.ollivier@orange.com
2122
2123 - project:
2124     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-sbom'
2125     <<: *functest-kubernetes-params
2126     repo: 'opnfv'
2127     container: 'functest-kubernetes-security'
2128     port:
2129     jobs:
2130       - 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-sbom'
2131
2132 - job-template:
2133     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sbom'
2134     triggers:
2135       - timed: '@weekly'
2136     parameters:
2137       - functest-kubernetes-node:
2138           node: '{node}'
2139     builders:
2140       - functest-kubernetes-sbom:
2141           <<: *functest-kubernetes-containers
2142     publishers:
2143       - email-ext:
2144           failure: false
2145           first-failure: true
2146           fixed: true
2147           recipients: cedric.ollivier@orange.com
2148
2149 - project:
2150     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-sbom'
2151     <<: *functest-kubernetes-params
2152     repo: 'opnfv'
2153     container: 'functest-kubernetes-smoke'
2154     port:
2155     jobs:
2156       - 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sbom'
2157
2158 - job-template:
2159     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-sbom'
2160     triggers:
2161       - timed: '@weekly'
2162     parameters:
2163       - functest-kubernetes-node:
2164           node: '{node}'
2165     builders:
2166       - functest-kubernetes-sbom:
2167           <<: *functest-kubernetes-containers
2168     publishers:
2169       - email-ext:
2170           failure: false
2171           first-failure: true
2172           fixed: true
2173           recipients: cedric.ollivier@orange.com
2174
2175 - project:
2176     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-sbom'
2177     <<: *functest-kubernetes-params
2178     repo: 'opnfv'
2179     container: 'functest-kubernetes-benchmarking'
2180     port:
2181     jobs:
2182       - 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-sbom'
2183
2184 - project:
2185     name: 'functest-kubernetes'
2186     <<: *functest-kubernetes-params
2187     jobs:
2188       - 'functest-kubernetes-{tag}-docker'
2189
2190 - view:
2191     name: functest-kubernetes-docker
2192     view-type: list
2193     columns:
2194       - status
2195       - weather
2196       - job
2197       - last-success
2198       - last-failure
2199       - last-duration
2200     regex: ^functest-kubernetes-[a-z0-9.-]+-docker$
2201
2202 - view:
2203     name: functest-kubernetes-trivy
2204     view-type: list
2205     columns:
2206       - status
2207       - weather
2208       - job
2209       - last-success
2210       - last-failure
2211       - last-duration
2212     regex: (?!functest-kubernetes-pi)(?!functest-kubernetes-ng)^functest-kubernetes-[a-z-0-9.]+-trivy$
2213
2214 - view:
2215     name: functest-kubernetes-grype
2216     view-type: list
2217     columns:
2218       - status
2219       - weather
2220       - job
2221       - last-success
2222       - last-failure
2223       - last-duration
2224     regex: (?!functest-kubernetes-pi)(?!functest-kubernetes-ng)^functest-kubernetes-[a-z-0-9.]+-grype$
2225
2226 - view:
2227     name: functest-kubernetes-sbom
2228     view-type: list
2229     columns:
2230       - status
2231       - weather
2232       - job
2233       - last-success
2234       - last-failure
2235       - last-duration
2236     regex: (?!functest-kubernetes-pi)(?!functest-kubernetes-ng)^functest-kubernetes-[a-z-0-9.]+-sbom$