2 - functest-kubernetes-containers: &functest-kubernetes-containers
3 name: 'functest-kubernetes-containers'
6 container: '{container}'
9 - functest-kubernetes-params: &functest-kubernetes-params
10 name: 'functest-kubernetes-params'
45 - functest-kubernetes-jobs: &functest-kubernetes-jobs
46 name: 'functest-kubernetes-jobs'
47 current-parameters: true
50 name: functest-kubernetes-slave
57 name: functest-kubernetes-build_tag
63 name: functest-kubernetes-DEPLOY_SCENARIO
67 default: k8-nosdn-nofeature-noha
70 name: functest-kubernetes-E2E_TEST_OPTS
74 default: container-runtime:containerd
76 - functest-kubernetes-run-containers: &functest-kubernetes-run-containers
77 name: 'functest-kubernetes-run-containers'
78 <<: *functest-kubernetes-containers
80 privileged: '{privileged}'
86 name: functest-kubernetes-pull-containers
90 if [ "{repo}" = "_" ]; then
91 image={container}:{tag}
92 elif [ "{port}" = "None" ]; then
93 image={repo}/{container}:{tag}
95 image={repo}:{port}/{container}:{tag}
100 name: functest-kubernetes-run-containers
105 if [ "{volumes}" != "None" ]; then
106 for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); do volumes="-v $i $volumes"; done
109 if [ "{env}" != "None" ]; then
110 for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); do env="-e $i $env"; done
112 [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
113 if [ "{repo}" = "_" ]; then
114 image={container}:{tag}
115 elif [ "{port}" = "None" ]; then
116 image={repo}/{container}:{tag}
118 image={repo}:{port}/{container}:{tag}
121 --privileged={privileged} \
122 --network={network} \
125 -e S3_ENDPOINT_URL=https://storage.googleapis.com \
126 -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
127 -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
128 -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
129 -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
130 -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
131 -e NODE_NAME=$slave \
132 -e BUILD_TAG=$BUILD_TAG \
133 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
134 $image run_tests -t {test} -p -r
137 name: functest-kubernetes-remove-images
141 if [ "{repo}" = "_" ]; then
142 image={container}:{tag}
143 elif [ "{port}" = "None" ]; then
144 image={repo}/{container}:{tag}
146 image={repo}:{port}/{container}:{tag}
148 docker rmi $image || true
151 name: 'functest-kubernetes-{repo}-{container}-{tag}-pull'
153 - functest-kubernetes-slave:
156 - functest-kubernetes-pull-containers:
157 <<: *functest-kubernetes-containers
160 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-pull'
161 <<: *functest-kubernetes-params
162 container: 'functest-kubernetes-healthcheck'
164 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
167 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-pull'
168 <<: *functest-kubernetes-params
169 container: 'functest-kubernetes-smoke'
171 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
174 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-pull'
175 <<: *functest-kubernetes-params
176 container: 'functest-kubernetes-security'
178 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
181 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-pull'
182 <<: *functest-kubernetes-params
183 container: 'functest-kubernetes-benchmarking'
185 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
188 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-pull'
189 <<: *functest-kubernetes-params
190 container: 'functest-kubernetes-cnf'
192 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
195 name: 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
197 - functest-kubernetes-slave:
200 - functest-kubernetes-remove-images:
201 <<: *functest-kubernetes-containers
204 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-rmi'
205 <<: *functest-kubernetes-params
206 container: 'functest-kubernetes-healthcheck'
208 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
211 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-rmi'
212 <<: *functest-kubernetes-params
213 container: 'functest-kubernetes-smoke'
215 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
218 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-rmi'
219 <<: *functest-kubernetes-params
220 container: 'functest-kubernetes-security'
222 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
225 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-rmi'
226 <<: *functest-kubernetes-params
227 container: 'functest-kubernetes-benchmarking'
229 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
232 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-rmi'
233 <<: *functest-kubernetes-params
234 container: 'functest-kubernetes-cnf'
236 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
239 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-{test}-run'
241 - functest-kubernetes-slave:
243 - functest-kubernetes-build_tag:
245 - functest-kubernetes-DEPLOY_SCENARIO:
246 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
247 - functest-kubernetes-E2E_TEST_OPTS:
248 E2E_TEST_OPTS: container-runtime:containerd
250 - functest-kubernetes-run-containers:
251 <<: *functest-kubernetes-run-containers
254 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck'
255 <<: *functest-kubernetes-params
257 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
259 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
260 - E2E_TEST_OPTS=$E2E_TEST_OPTS
261 container: 'functest-kubernetes-healthcheck'
268 - 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-{test}-run'
271 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-{test}-run'
273 - functest-kubernetes-slave:
275 - functest-kubernetes-build_tag:
277 - functest-kubernetes-DEPLOY_SCENARIO:
278 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
279 - functest-kubernetes-E2E_TEST_OPTS:
280 E2E_TEST_OPTS: container-runtime:containerd
282 - functest-kubernetes-run-containers:
283 <<: *functest-kubernetes-run-containers
286 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke'
287 <<: *functest-kubernetes-params
289 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
291 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
292 - E2E_TEST_OPTS=$E2E_TEST_OPTS
293 container: 'functest-kubernetes-smoke'
298 - k8s_conformance_serial
300 - sig_api_machinery_serial
306 - sig_cluster_lifecycle
307 - sig_instrumentation
311 - sig_scheduling_serial
324 - 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-{test}-run'
327 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-{test}-run'
329 - functest-kubernetes-slave:
331 - functest-kubernetes-build_tag:
333 - functest-kubernetes-DEPLOY_SCENARIO:
334 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
335 - functest-kubernetes-E2E_TEST_OPTS:
336 E2E_TEST_OPTS: container-runtime:containerd
338 - functest-kubernetes-run-containers:
339 <<: *functest-kubernetes-run-containers
342 name: 'functest-kubernetes-opnfv-functest-kubernetes-security'
343 <<: *functest-kubernetes-params
345 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
347 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
348 - E2E_TEST_OPTS=$E2E_TEST_OPTS
349 container: 'functest-kubernetes-security'
357 - 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-{test}-run'
360 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-{test}-run'
362 - functest-kubernetes-slave:
364 - functest-kubernetes-build_tag:
366 - functest-kubernetes-DEPLOY_SCENARIO:
367 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
368 - functest-kubernetes-E2E_TEST_OPTS:
369 E2E_TEST_OPTS: container-runtime:containerd
371 - functest-kubernetes-run-containers:
372 <<: *functest-kubernetes-run-containers
375 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking'
376 <<: *functest-kubernetes-params
378 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
380 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
381 - E2E_TEST_OPTS=$E2E_TEST_OPTS
382 container: 'functest-kubernetes-benchmarking'
384 - xrally_kubernetes_full
389 - 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-{test}-run'
392 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-{test}-run'
394 - functest-kubernetes-slave:
396 - functest-kubernetes-build_tag:
398 - functest-kubernetes-DEPLOY_SCENARIO:
399 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
400 - functest-kubernetes-E2E_TEST_OPTS:
401 E2E_TEST_OPTS: container-runtime:containerd
403 - functest-kubernetes-run-containers:
404 <<: *functest-kubernetes-run-containers
407 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf'
408 <<: *functest-kubernetes-params
410 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
412 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
413 - E2E_TEST_OPTS=$E2E_TEST_OPTS
414 container: 'functest-kubernetes-cnf'
422 - 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-{test}-run'
425 name: functest-kubernetes-zip
430 if [ "{volumes}" != "None" ]; then
431 for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); do volumes="-v $i $volumes"; done
434 if [ "{env}" != "None" ]; then
435 for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); do env="-e $i $env"; done
437 [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
438 if [ "{repo}" = "_" ]; then
439 image={container}:{tag}
440 elif [ "{port}" = "None" ]; then
441 image={repo}/{container}:{tag}
443 image={repo}:{port}/{container}:{tag}
448 -e S3_ENDPOINT_URL=https://storage.googleapis.com \
449 -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes \
450 -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes \
451 -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
452 -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
453 -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
454 -e BUILD_TAG=$BUILD_TAG \
455 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
459 name: 'functest-kubernetes-{tag}-zip'
461 - functest-kubernetes-slave:
463 - functest-kubernetes-build_tag:
465 - functest-kubernetes-DEPLOY_SCENARIO:
466 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
467 - functest-kubernetes-E2E_TEST_OPTS:
468 E2E_TEST_OPTS: container-runtime:containerd
470 - functest-kubernetes-zip:
471 <<: *functest-kubernetes-containers
476 name: 'functest-kubernetes-{tag}-zip'
477 <<: *functest-kubernetes-params
479 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
481 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
482 - E2E_TEST_OPTS=$E2E_TEST_OPTS
483 container: 'functest-kubernetes-healthcheck'
485 - 'functest-kubernetes-{tag}-zip'
488 name: 'functest-kubernetes-{tag}-daily'
489 project-type: multijob
493 - functest-kubernetes-slave:
495 - functest-kubernetes-build_tag:
497 - functest-kubernetes-DEPLOY_SCENARIO:
498 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
499 - functest-kubernetes-E2E_TEST_OPTS:
500 E2E_TEST_OPTS: container-runtime:containerd
501 # PyYAML and yamllint differ here
502 # see https://github.com/yaml/pyyaml/issues/234
503 # yamllint disable rule:indentation
507 - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
508 # yamllint enable rule:indentation
511 name: remove former images
513 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
514 <<: *functest-kubernetes-jobs
515 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
516 <<: *functest-kubernetes-jobs
517 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
518 <<: *functest-kubernetes-jobs
519 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
520 <<: *functest-kubernetes-jobs
521 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
522 <<: *functest-kubernetes-jobs
524 name: pull containers
526 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-pull'
527 <<: *functest-kubernetes-jobs
528 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-pull'
529 <<: *functest-kubernetes-jobs
530 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-pull'
531 <<: *functest-kubernetes-jobs
532 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-pull'
533 <<: *functest-kubernetes-jobs
534 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-pull'
535 <<: *functest-kubernetes-jobs
537 name: opnfv/functest-kubernetes-healthcheck:{tag}
539 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
540 <<: *functest-kubernetes-jobs
541 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
542 <<: *functest-kubernetes-jobs
544 name: opnfv/functest-kubernetes-smoke:{tag}
545 execution-type: SEQUENTIALLY
547 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
548 <<: *functest-kubernetes-jobs
549 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_io-run'
550 <<: *functest-kubernetes-jobs
551 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
552 <<: *functest-kubernetes-jobs
553 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance_serial-run'
554 <<: *functest-kubernetes-jobs
555 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery-run'
556 <<: *functest-kubernetes-jobs
557 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery_serial-run'
558 <<: *functest-kubernetes-jobs
559 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps-run'
560 <<: *functest-kubernetes-jobs
561 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps_serial-run'
562 <<: *functest-kubernetes-jobs
563 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_auth-run'
564 <<: *functest-kubernetes-jobs
565 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cli-run'
566 <<: *functest-kubernetes-jobs
567 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cli_serial-run'
568 <<: *functest-kubernetes-jobs
569 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cluster_lifecycle-run'
570 <<: *functest-kubernetes-jobs
571 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_instrumentation-run'
572 <<: *functest-kubernetes-jobs
573 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network-run'
574 <<: *functest-kubernetes-jobs
575 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network_serial-run'
576 <<: *functest-kubernetes-jobs
577 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_node-run'
578 <<: *functest-kubernetes-jobs
579 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_scheduling_serial-run'
580 <<: *functest-kubernetes-jobs
581 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage-run'
582 <<: *functest-kubernetes-jobs
583 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage_serial-run'
584 <<: *functest-kubernetes-jobs
586 name: opnfv/functest-kubernetes-security:{tag}
588 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
589 <<: *functest-kubernetes-jobs
590 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_master-run'
591 <<: *functest-kubernetes-jobs
592 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_node-run'
593 <<: *functest-kubernetes-jobs
595 name: opnfv/functest-kubernetes-benchmarking:{tag}
597 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
598 <<: *functest-kubernetes-jobs
599 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-netperf-run'
600 <<: *functest-kubernetes-jobs
602 name: opnfv/functest-kubernetes-cnf:{tag}
604 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
605 <<: *functest-kubernetes-jobs
606 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-helm_vims-run'
607 <<: *functest-kubernetes-jobs
608 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_testsuite-run'
609 <<: *functest-kubernetes-jobs
611 name: dump all campaign data
613 - name: 'functest-kubernetes-{tag}-zip'
614 <<: *functest-kubernetes-jobs
617 name: 'functest-kubernetes-daily'
618 <<: *functest-kubernetes-params
620 - 'functest-kubernetes-{tag}-daily'
623 name: functest-kubernetes
632 regex: ^functest-kubernetes-[a-z0-9.]+-daily$
634 - functest-kubernetes-build-containers: &functest-kubernetes-build-containers
635 name: 'functest-kubernetes-build-containers'
636 <<: *functest-kubernetes-containers
639 buildargs: '{buildargs}'
643 name: functest-kubernetes-build-containers
647 if [ "{repo}" = "_" ]; then
648 image={container}:{tag}
649 elif [ "{port}" = "None" ]; then
650 image={repo}/{container}:{tag}
652 image={repo}:{port}/{container}:{tag}
655 if [ "{buildargs}" != "None" ]; then
656 build_args="{buildargs}"
658 if [ "{ref_arg}" != "None" ]; then
659 build_args="$build_args --build-arg {ref_arg}={ref}"
662 if [ "{from}" != "None" ]; then
663 sed -i {from} Dockerfile
665 docker build $build_args \
666 --pull=false --no-cache --force-rm=true \
670 name: functest-kubernetes-scm
673 url: 'https://gerrit.opnfv.org/gerrit/functest-kubernetes'
674 refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/*'
678 - functest-kubernetes-dep: &functest-kubernetes-dep
679 name: 'functest-kubernetes-containers'
683 dependency: '{dependency}'
686 name: functest-kubernetes-pull-dep-images
690 if [ "_" = "_" ]; then
691 image=alpine:{dependency}
692 elif [ "None" = "None" ]; then
693 image=_/alpine:{dependency}
695 image=_:/alpine:{dependency}
697 docker pull $image || true
700 name: functest-kubernetes-remove-dep-images
704 if [ "_" = "_" ]; then
705 image=alpine:{dependency}
706 elif [ "" = "None" ]; then
707 image=_/alpine:{dependency}
709 image=_:/alpine:{dependency}
711 docker rmi $image || true
714 name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
716 - functest-kubernetes-slave:
719 - functest-kubernetes-pull-dep-images:
720 <<: *functest-kubernetes-dep
723 name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
724 <<: *functest-kubernetes-params
726 - 'functest-kubernetes-{repo}-{tag}-dep-pull'
729 name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
731 - functest-kubernetes-slave:
734 - functest-kubernetes-remove-dep-images:
735 <<: *functest-kubernetes-dep
738 name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
739 <<: *functest-kubernetes-params
741 - 'functest-kubernetes-{repo}-{tag}-dep-rmi'
744 name: functest-kubernetes-tox
748 apt-get update && DEBIAN_FRONTEND=noninteractive \
749 apt-get install software-properties-common gpg -y
750 add-apt-repository -y ppa:deadsnakes/ppa
751 apt-get update && DEBIAN_FRONTEND=noninteractive \
753 python3.9 python3.9-dev python3.9-distutils \
754 python3.8 python3.8-dev python3.8-distutils \
755 python3.7 python3.7-dev python3.6 python3.6-dev \
756 python python-dev python3-pip enchant -y
757 pip3 install tox tox-pip-version
762 name: 'functest-kubernetes-{tag}-tox'
764 - functest-kubernetes-scm:
767 - functest-kubernetes-patchset-created:
770 - functest-kubernetes-slave:
773 - functest-kubernetes-tox:
776 name: functest-kubernetes-tox
777 <<: *functest-kubernetes-params
779 - 'functest-kubernetes-{tag}-tox'
782 name: 'functest-kubernetes-{repo}-{container}-{tag}-gate'
784 - functest-kubernetes-slave:
787 - functest-kubernetes-scm:
790 - functest-kubernetes-build-containers:
791 <<: *functest-kubernetes-build-containers
793 buildargs: '{buildargs}'
796 name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate
797 <<: *functest-kubernetes-params
798 container: functest-kubernetes-core
802 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
805 name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate
806 <<: *functest-kubernetes-params
807 container: functest-kubernetes-healthcheck
809 path: docker/healthcheck
811 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
814 name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate
815 <<: *functest-kubernetes-params
816 container: functest-kubernetes-cnf
820 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
823 name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate
824 <<: *functest-kubernetes-params
825 container: functest-kubernetes-security
827 path: docker/security
829 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
832 name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate
833 <<: *functest-kubernetes-params
834 container: functest-kubernetes-smoke
838 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
841 name: functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate
842 <<: *functest-kubernetes-params
843 container: functest-kubernetes-benchmarking
845 path: docker/benchmarking
847 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
850 name: functest-kubernetes-patchset-created
854 - patchset-created-event
855 - comment-added-contains-event:
856 comment-contains-value: 'recheck'
857 - comment-added-contains-event:
858 comment-contains-value: 'reverify'
860 - project-compare-type: 'ANT'
861 project-pattern: 'functest-kubernetes'
863 - branch-compare-type: 'ANT'
864 branch-pattern: '**/{branch}'
867 name: 'functest-kubernetes-{tag}-review'
868 project-type: multijob
870 - functest-kubernetes-patchset-created:
873 - functest-kubernetes-slave:
875 - functest-kubernetes-build_tag:
877 - functest-kubernetes-DEPLOY_SCENARIO:
878 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
879 - functest-kubernetes-E2E_TEST_OPTS:
880 E2E_TEST_OPTS: container-runtime:containerd
881 # PyYAML and yamllint differ here
882 # see https://github.com/yaml/pyyaml/issues/234
883 # yamllint disable rule:indentation
887 - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
888 # yamllint enable rule:indentation
891 name: remove former images
893 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
894 <<: *functest-kubernetes-jobs
895 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
896 <<: *functest-kubernetes-jobs
897 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
898 <<: *functest-kubernetes-jobs
899 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
900 <<: *functest-kubernetes-jobs
901 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
902 <<: *functest-kubernetes-jobs
904 name: remove dependency
906 - name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
907 <<: *functest-kubernetes-jobs
909 name: pull dependency
911 - name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
912 <<: *functest-kubernetes-jobs
914 name: build opnfv/functest-kubernetes-core
916 - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate'
917 <<: *functest-kubernetes-jobs
919 name: build containers
921 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate'
922 <<: *functest-kubernetes-jobs
923 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate'
924 <<: *functest-kubernetes-jobs
925 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate'
926 <<: *functest-kubernetes-jobs
928 name: build opnfv/functest-kubernetes-smoke
930 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate'
931 <<: *functest-kubernetes-jobs
933 name: build opnfv/functest-kubernetes-benchmarking
935 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate'
936 <<: *functest-kubernetes-jobs
938 name: opnfv/functest-kubernetes-healthcheck:{tag}
940 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
941 <<: *functest-kubernetes-jobs
942 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
943 <<: *functest-kubernetes-jobs
945 name: opnfv/functest-kubernetes-smoke:{tag}
946 execution-type: SEQUENTIALLY
948 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
949 <<: *functest-kubernetes-jobs
950 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_io-run'
951 <<: *functest-kubernetes-jobs
952 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
953 <<: *functest-kubernetes-jobs
954 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance_serial-run'
955 <<: *functest-kubernetes-jobs
956 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery-run'
957 <<: *functest-kubernetes-jobs
958 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery_serial-run'
959 <<: *functest-kubernetes-jobs
960 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps-run'
961 <<: *functest-kubernetes-jobs
962 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps_serial-run'
963 <<: *functest-kubernetes-jobs
964 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_auth-run'
965 <<: *functest-kubernetes-jobs
966 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cli-run'
967 <<: *functest-kubernetes-jobs
968 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cli_serial-run'
969 <<: *functest-kubernetes-jobs
970 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cluster_lifecycle-run'
971 <<: *functest-kubernetes-jobs
972 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_instrumentation-run'
973 <<: *functest-kubernetes-jobs
974 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network-run'
975 <<: *functest-kubernetes-jobs
976 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network_serial-run'
977 <<: *functest-kubernetes-jobs
978 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_node-run'
979 <<: *functest-kubernetes-jobs
980 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_scheduling_serial-run'
981 <<: *functest-kubernetes-jobs
982 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage-run'
983 <<: *functest-kubernetes-jobs
984 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage_serial-run'
985 <<: *functest-kubernetes-jobs
987 name: opnfv/functest-kubernetes-security:{tag}
989 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
990 <<: *functest-kubernetes-jobs
991 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_master-run'
992 <<: *functest-kubernetes-jobs
993 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_node-run'
994 <<: *functest-kubernetes-jobs
996 name: opnfv/functest-kubernetes-benchmarking:{tag}
998 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
999 <<: *functest-kubernetes-jobs
1000 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-netperf-run'
1001 <<: *functest-kubernetes-jobs
1003 name: opnfv/functest-kubernetes-cnf:{tag}
1005 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
1006 <<: *functest-kubernetes-jobs
1007 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-helm_vims-run'
1008 <<: *functest-kubernetes-jobs
1009 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_testsuite-run'
1010 <<: *functest-kubernetes-jobs
1013 name: 'functest-kubernetes-review'
1014 <<: *functest-kubernetes-params
1016 - 'functest-kubernetes-{tag}-review'
1019 name: functest-kubernetes-review
1028 regex: ^functest-kubernetes-[a-z0-9.]+-review$
1031 name: functest-kubernetes-tox
1040 regex: ^functest-kubernetes-[a-z0-9.]+-tox$
1043 name: functest-kubernetes-push-containers
1047 if [ "{repo}" = "_" ]; then
1048 image={container}:{tag}
1049 elif [ "{port}" = "None" ]; then
1050 image={repo}/{container}:{tag}
1052 image={repo}:{port}/{container}:{tag}
1057 name: functest-kubernetes-commit
1060 cron: "*/30 * * * *"
1063 name: 'functest-kubernetes-{repo}-{container}-{tag}-build'
1065 - functest-kubernetes-slave:
1068 - functest-kubernetes-scm:
1071 - functest-kubernetes-build-containers:
1072 <<: *functest-kubernetes-build-containers
1074 buildargs: '{buildargs}'
1075 - functest-kubernetes-push-containers:
1076 <<: *functest-kubernetes-build-containers
1080 name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build
1081 <<: *functest-kubernetes-params
1082 container: functest-kubernetes-core
1086 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1089 name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build
1090 <<: *functest-kubernetes-params
1091 container: functest-kubernetes-healthcheck
1093 path: docker/healthcheck
1095 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1098 name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build
1099 <<: *functest-kubernetes-params
1100 container: functest-kubernetes-cnf
1104 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1107 name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build
1108 <<: *functest-kubernetes-params
1109 container: functest-kubernetes-security
1111 path: docker/security
1113 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1116 name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build
1117 <<: *functest-kubernetes-params
1118 container: functest-kubernetes-smoke
1122 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1125 name: functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build
1126 <<: *functest-kubernetes-params
1127 container: functest-kubernetes-benchmarking
1129 path: docker/benchmarking
1131 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1134 name: 'functest-kubernetes-{tag}-docker'
1135 project-type: multijob
1137 - functest-kubernetes-commit
1139 - functest-kubernetes-scm:
1142 - functest-kubernetes-slave:
1144 # PyYAML and yamllint differ here
1145 # see https://github.com/yaml/pyyaml/issues/234
1146 # yamllint disable rule:indentation
1150 - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
1151 # yamllint enable rule:indentation
1154 name: remove dependency
1156 - name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
1157 <<: *functest-kubernetes-jobs
1159 name: pull dependency
1161 - name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
1162 <<: *functest-kubernetes-jobs
1164 name: build opnfv/functest-kubernetes-core
1166 - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build'
1167 <<: *functest-kubernetes-jobs
1169 name: build containers
1171 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build'
1172 <<: *functest-kubernetes-jobs
1173 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build'
1174 <<: *functest-kubernetes-jobs
1175 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build'
1176 <<: *functest-kubernetes-jobs
1178 name: build opnfv/functest-kubernetes-smoke
1180 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build'
1181 <<: *functest-kubernetes-jobs
1183 name: build opnfv/functest-kubernetes-benchmarking
1185 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build'
1186 <<: *functest-kubernetes-jobs
1189 name: functest-kubernetes-trivy
1192 apt-get update && DEBIAN_FRONTEND=noninteractive \
1193 apt-get install curl -y
1195 curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sh -s -- -b .
1196 if [ "{repo}" = "_" ]; then
1197 image={container}:{tag}
1198 elif [ "{port}" = "None" ]; then
1199 image={repo}/{container}:{tag}
1201 image={repo}:{port}/{container}:{tag}
1203 ./trivy --exit-code 1 $image
1206 name: 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1210 - functest-kubernetes-slave:
1213 - functest-kubernetes-trivy:
1214 <<: *functest-kubernetes-containers
1217 name: 'functest-kubernetes-opnfv-functest-kubernetes-core-trivy'
1218 <<: *functest-kubernetes-params
1219 container: 'functest-kubernetes-core'
1221 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1224 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-trivy'
1225 <<: *functest-kubernetes-params
1226 container: 'functest-kubernetes-healthcheck'
1228 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1231 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-trivy'
1232 <<: *functest-kubernetes-params
1233 container: 'functest-kubernetes-cnf'
1235 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1238 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-trivy'
1239 <<: *functest-kubernetes-params
1240 container: 'functest-kubernetes-security'
1242 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1245 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-trivy'
1246 <<: *functest-kubernetes-params
1247 container: 'functest-kubernetes-smoke'
1249 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1252 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-trivy'
1253 <<: *functest-kubernetes-params
1254 container: 'functest-kubernetes-benchmarking'
1256 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1259 name: 'functest-kubernetes'
1260 <<: *functest-kubernetes-params
1262 - 'functest-kubernetes-{tag}-docker'
1265 name: functest-kubernetes-docker
1274 regex: ^functest-kubernetes-[a-z0-9.]+-docker$
1277 name: functest-kubernetes-trivy
1286 regex: (?!functest-kubernetes-pi)(?!functest-kubernetes-ng)^functest-kubernetes-[a-z-0-9.]+-trivy$