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