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'
51 - functest-kubernetes-jobs: &functest-kubernetes-jobs
52 name: 'functest-kubernetes-jobs'
53 current-parameters: true
56 name: functest-kubernetes-slave
63 name: functest-kubernetes-build_tag
69 name: functest-kubernetes-DEPLOY_SCENARIO
73 default: k8-nosdn-nofeature-noha
76 name: functest-kubernetes-E2E_TEST_OPTS
80 default: container-runtime:containerd
82 - functest-kubernetes-run-containers: &functest-kubernetes-run-containers
83 name: 'functest-kubernetes-run-containers'
84 <<: *functest-kubernetes-containers
86 privileged: '{privileged}'
92 name: functest-kubernetes-pull-containers
96 if [ "{repo}" = "_" ]; then
97 image={container}:{tag}
98 elif [ "{port}" = "None" ]; then
99 image={repo}/{container}:{tag}
101 image={repo}:{port}/{container}:{tag}
106 name: functest-kubernetes-run-containers
111 if [ "{volumes}" != "None" ]; then
112 for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); \
113 do volumes="-v $i $volumes"; done
116 if [ "{env}" != "None" ]; then
117 for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); \
118 do env="-e $i $env"; done
120 [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
121 if [ "{repo}" = "_" ]; then
122 image={container}:{tag}
123 elif [ "{port}" = "None" ]; then
124 image={repo}/{container}:{tag}
126 image={repo}:{port}/{container}:{tag}
129 --privileged={privileged} \
130 --network={network} \
133 -e S3_ENDPOINT_URL=https://storage.googleapis.com \
134 -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
135 -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
136 -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
137 -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
138 -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
139 -e NODE_NAME=$slave \
140 -e BUILD_TAG=$BUILD_TAG \
141 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
142 $image run_tests -t {test} -p -r
145 name: functest-kubernetes-remove-images
149 if [ "{repo}" = "_" ]; then
150 image={container}:{tag}
151 elif [ "{port}" = "None" ]; then
152 image={repo}/{container}:{tag}
154 image={repo}:{port}/{container}:{tag}
156 docker rmi $image || true
159 name: 'functest-kubernetes-{repo}-{container}-{tag}-pull'
161 - functest-kubernetes-slave:
164 - functest-kubernetes-pull-containers:
165 <<: *functest-kubernetes-containers
168 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-pull'
169 <<: *functest-kubernetes-params
170 container: 'functest-kubernetes-healthcheck'
172 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
175 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-pull'
176 <<: *functest-kubernetes-params
177 container: 'functest-kubernetes-smoke'
179 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
182 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-pull'
183 <<: *functest-kubernetes-params
184 container: 'functest-kubernetes-security'
186 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
189 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-pull'
190 <<: *functest-kubernetes-params
191 container: 'functest-kubernetes-benchmarking'
193 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
196 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-pull'
197 <<: *functest-kubernetes-params
198 container: 'functest-kubernetes-cnf'
200 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
203 name: 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
205 - functest-kubernetes-slave:
208 - functest-kubernetes-remove-images:
209 <<: *functest-kubernetes-containers
212 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-rmi'
213 <<: *functest-kubernetes-params
214 container: 'functest-kubernetes-healthcheck'
216 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
219 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-rmi'
220 <<: *functest-kubernetes-params
221 container: 'functest-kubernetes-smoke'
223 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
226 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-rmi'
227 <<: *functest-kubernetes-params
228 container: 'functest-kubernetes-security'
230 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
233 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-rmi'
234 <<: *functest-kubernetes-params
235 container: 'functest-kubernetes-benchmarking'
237 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
240 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-rmi'
241 <<: *functest-kubernetes-params
242 container: 'functest-kubernetes-cnf'
244 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
247 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-{test}-run'
249 - functest-kubernetes-slave:
251 - functest-kubernetes-build_tag:
253 - functest-kubernetes-DEPLOY_SCENARIO:
254 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
255 - functest-kubernetes-E2E_TEST_OPTS:
256 E2E_TEST_OPTS: container-runtime:containerd
258 - functest-kubernetes-run-containers:
259 <<: *functest-kubernetes-run-containers
262 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck'
263 <<: *functest-kubernetes-params
265 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
267 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
268 - E2E_TEST_OPTS=$E2E_TEST_OPTS
269 container: 'functest-kubernetes-healthcheck'
276 - 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-{test}-run'
279 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-{test}-run'
281 - functest-kubernetes-slave:
283 - functest-kubernetes-build_tag:
285 - functest-kubernetes-DEPLOY_SCENARIO:
286 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
287 - functest-kubernetes-E2E_TEST_OPTS:
288 E2E_TEST_OPTS: container-runtime:containerd
290 - functest-kubernetes-run-containers:
291 <<: *functest-kubernetes-run-containers
294 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke'
295 <<: *functest-kubernetes-params
297 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
299 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
300 - E2E_TEST_OPTS=$E2E_TEST_OPTS
301 container: 'functest-kubernetes-smoke'
306 - k8s_conformance_serial
308 - sig_api_machinery_serial
312 - sig_cluster_lifecycle
313 - sig_instrumentation
316 - sig_scheduling_serial
331 - 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-{test}-run'
334 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-{test}-run'
336 - functest-kubernetes-slave:
338 - functest-kubernetes-build_tag:
340 - functest-kubernetes-DEPLOY_SCENARIO:
341 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
342 - functest-kubernetes-E2E_TEST_OPTS:
343 E2E_TEST_OPTS: container-runtime:containerd
345 - functest-kubernetes-run-containers:
346 <<: *functest-kubernetes-run-containers
349 name: 'functest-kubernetes-opnfv-functest-kubernetes-security'
350 <<: *functest-kubernetes-params
352 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
354 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
355 - E2E_TEST_OPTS=$E2E_TEST_OPTS
356 container: 'functest-kubernetes-security'
364 - 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-{test}-run'
367 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-{test}-run'
369 - functest-kubernetes-slave:
371 - functest-kubernetes-build_tag:
373 - functest-kubernetes-DEPLOY_SCENARIO:
374 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
375 - functest-kubernetes-E2E_TEST_OPTS:
376 E2E_TEST_OPTS: container-runtime:containerd
378 - functest-kubernetes-run-containers:
379 <<: *functest-kubernetes-run-containers
382 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking'
383 <<: *functest-kubernetes-params
385 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
387 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
388 - E2E_TEST_OPTS=$E2E_TEST_OPTS
389 container: 'functest-kubernetes-benchmarking'
391 - xrally_kubernetes_full
396 - 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-{test}-run'
399 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-{test}-run'
401 - functest-kubernetes-slave:
403 - functest-kubernetes-build_tag:
405 - functest-kubernetes-DEPLOY_SCENARIO:
406 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
407 - functest-kubernetes-E2E_TEST_OPTS:
408 E2E_TEST_OPTS: container-runtime:containerd
410 - functest-kubernetes-run-containers:
411 <<: *functest-kubernetes-run-containers
414 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf'
415 <<: *functest-kubernetes-params
417 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
419 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
420 - E2E_TEST_OPTS=$E2E_TEST_OPTS
421 container: 'functest-kubernetes-cnf'
429 - 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-{test}-run'
432 name: functest-kubernetes-zip
437 if [ "{volumes}" != "None" ]; then
438 for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); \
439 do volumes="-v $i $volumes"; done
442 if [ "{env}" != "None" ]; then
443 for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); \
444 do env="-e $i $env"; done
446 [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
447 if [ "{repo}" = "_" ]; then
448 image={container}:{tag}
449 elif [ "{port}" = "None" ]; then
450 image={repo}/{container}:{tag}
452 image={repo}:{port}/{container}:{tag}
457 -e S3_ENDPOINT_URL=https://storage.googleapis.com \
458 -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes \
459 -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes \
460 -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
461 -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
462 -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
463 -e BUILD_TAG=$BUILD_TAG \
464 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
468 name: 'functest-kubernetes-{tag}-zip'
470 - functest-kubernetes-slave:
472 - functest-kubernetes-build_tag:
474 - functest-kubernetes-DEPLOY_SCENARIO:
475 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
476 - functest-kubernetes-E2E_TEST_OPTS:
477 E2E_TEST_OPTS: container-runtime:containerd
479 - functest-kubernetes-zip:
480 <<: *functest-kubernetes-containers
485 name: 'functest-kubernetes-{tag}-zip'
486 <<: *functest-kubernetes-params
488 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
490 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
491 - E2E_TEST_OPTS=$E2E_TEST_OPTS
492 container: 'functest-kubernetes-healthcheck'
494 - 'functest-kubernetes-{tag}-zip'
497 name: 'functest-kubernetes-{tag}-daily'
498 project-type: multijob
502 - functest-kubernetes-slave:
504 - functest-kubernetes-build_tag:
506 - functest-kubernetes-DEPLOY_SCENARIO:
507 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
508 - functest-kubernetes-E2E_TEST_OPTS:
509 E2E_TEST_OPTS: container-runtime:containerd
510 # PyYAML and yamllint differ here
511 # see https://github.com/yaml/pyyaml/issues/234
512 # yamllint disable rule:indentation
516 - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
517 # yamllint enable rule:indentation
520 name: remove former images
522 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
523 <<: *functest-kubernetes-jobs
524 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
525 <<: *functest-kubernetes-jobs
526 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
527 <<: *functest-kubernetes-jobs
528 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
529 <<: *functest-kubernetes-jobs
530 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
531 <<: *functest-kubernetes-jobs
533 name: pull containers
535 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-pull'
536 <<: *functest-kubernetes-jobs
537 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-pull'
538 <<: *functest-kubernetes-jobs
539 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-pull'
540 <<: *functest-kubernetes-jobs
541 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-pull'
542 <<: *functest-kubernetes-jobs
543 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-pull'
544 <<: *functest-kubernetes-jobs
546 name: opnfv/functest-kubernetes-healthcheck:{tag}
548 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
549 <<: *functest-kubernetes-jobs
550 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
551 <<: *functest-kubernetes-jobs
553 name: opnfv/functest-kubernetes-smoke:{tag}
554 execution-type: SEQUENTIALLY
556 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
557 <<: *functest-kubernetes-jobs
558 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_io-run'
559 <<: *functest-kubernetes-jobs
560 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
561 <<: *functest-kubernetes-jobs
562 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance_serial-run'
563 <<: *functest-kubernetes-jobs
564 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery-run'
565 <<: *functest-kubernetes-jobs
566 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery_serial-run'
567 <<: *functest-kubernetes-jobs
568 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps-run'
569 <<: *functest-kubernetes-jobs
570 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps_serial-run'
571 <<: *functest-kubernetes-jobs
572 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_auth-run'
573 <<: *functest-kubernetes-jobs
574 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cluster_lifecycle-run'
575 <<: *functest-kubernetes-jobs
576 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_instrumentation-run'
577 <<: *functest-kubernetes-jobs
578 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network-run'
579 <<: *functest-kubernetes-jobs
580 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_node-run'
581 <<: *functest-kubernetes-jobs
582 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_scheduling_serial-run'
583 <<: *functest-kubernetes-jobs
584 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage-run'
585 <<: *functest-kubernetes-jobs
586 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage_serial-run'
587 <<: *functest-kubernetes-jobs
589 name: opnfv/functest-kubernetes-security:{tag}
591 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
592 <<: *functest-kubernetes-jobs
593 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_master-run'
594 <<: *functest-kubernetes-jobs
595 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_node-run'
596 <<: *functest-kubernetes-jobs
598 name: opnfv/functest-kubernetes-benchmarking:{tag}
600 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
601 <<: *functest-kubernetes-jobs
602 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-netperf-run'
603 <<: *functest-kubernetes-jobs
605 name: opnfv/functest-kubernetes-cnf:{tag}
607 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
608 <<: *functest-kubernetes-jobs
609 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-helm_vims-run'
610 <<: *functest-kubernetes-jobs
611 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_testsuite-run'
612 <<: *functest-kubernetes-jobs
614 name: dump all campaign data
616 - name: 'functest-kubernetes-{tag}-zip'
617 <<: *functest-kubernetes-jobs
623 recipients: cedric.ollivier@orange.com
626 name: 'functest-kubernetes-daily'
627 <<: *functest-kubernetes-params
629 - 'functest-kubernetes-{tag}-daily'
632 name: functest-kubernetes
641 regex: ^functest-kubernetes-[a-z0-9.]+-daily$
643 - functest-kubernetes-build-containers: &functest-kubernetes-build-containers
644 name: 'functest-kubernetes-build-containers'
645 <<: *functest-kubernetes-containers
648 build_args: '{build_args}'
652 name: functest-kubernetes-build-containers
656 if [ "{repo}" = "_" ]; then
657 image={container}:{tag}
658 elif [ "{port}" = "None" ]; then
659 image={repo}/{container}:{tag}
661 image={repo}:{port}/{container}:{tag}
664 if [ "{build_args}" != "None" ]; then
665 for i in $(echo {build_args} | tr -d '[]' |sed "s/, / /g" ); \
666 do build_args="--build-arg $i $build_args"; done
668 if [ "{ref_arg}" != "None" ]; then
669 build_args="$build_args --build-arg {ref_arg}={ref}"
672 if [ "{from}" != "None" ]; then
673 sed -i {from} Dockerfile
675 docker build $build_args \
676 --pull=false --no-cache --force-rm=true \
680 name: functest-kubernetes-scm
683 url: 'https://gerrit.opnfv.org/gerrit/functest-kubernetes'
684 refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/*'
688 - functest-kubernetes-dep: &functest-kubernetes-dep
689 name: 'functest-kubernetes-containers'
693 dependency: '{dependency}'
696 name: functest-kubernetes-pull-dep-images
700 if [ "_" = "_" ]; then
701 image=alpine:{dependency}
702 elif [ "None" = "None" ]; then
703 image=_/alpine:{dependency}
705 image=_:/alpine:{dependency}
707 docker pull $image || true
710 name: functest-kubernetes-remove-dep-images
714 if [ "_" = "_" ]; then
715 image=alpine:{dependency}
716 elif [ "" = "None" ]; then
717 image=_/alpine:{dependency}
719 image=_:/alpine:{dependency}
721 docker rmi $image || true
724 name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
726 - functest-kubernetes-slave:
729 - functest-kubernetes-pull-dep-images:
730 <<: *functest-kubernetes-dep
733 name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
734 <<: *functest-kubernetes-params
736 - 'functest-kubernetes-{repo}-{tag}-dep-pull'
739 name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
741 - functest-kubernetes-slave:
744 - functest-kubernetes-remove-dep-images:
745 <<: *functest-kubernetes-dep
748 name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
749 <<: *functest-kubernetes-params
751 - 'functest-kubernetes-{repo}-{tag}-dep-rmi'
754 name: functest-kubernetes-tox
758 apt-get -o DPkg::Lock::Timeout=300 update && \
759 DEBIAN_FRONTEND=noninteractive apt-get \
760 -o DPkg::Lock::Timeout=300 dist-upgrade -y
761 DEBIAN_FRONTEND=noninteractive \
762 apt-get -o DPkg::Lock::Timeout=300 install software-properties-common gpg -y
763 add-apt-repository -y ppa:deadsnakes/ppa
764 apt-get -o DPkg::Lock::Timeout=300 update && \
765 DEBIAN_FRONTEND=noninteractive apt-get \
766 -o DPkg::Lock::Timeout=300 install \
767 python3.9 python3.9-dev python3.9-distutils \
768 python3.8 python3.8-dev python3.8-distutils \
769 python3.7 python3.7-dev python3.6 python3.6-dev \
770 python python-dev python3-pip enchant -y
771 pip3 install tox tox-pip-version
776 name: 'functest-kubernetes-{tag}-tox'
778 - functest-kubernetes-scm:
781 - functest-kubernetes-patchset-created:
784 - functest-kubernetes-slave:
787 - functest-kubernetes-tox:
790 name: functest-kubernetes-tox
791 <<: *functest-kubernetes-params
793 - 'functest-kubernetes-{tag}-tox'
796 name: 'functest-kubernetes-{repo}-{container}-{tag}-gate'
798 - functest-kubernetes-slave:
801 - functest-kubernetes-scm:
804 - functest-kubernetes-build-containers:
805 <<: *functest-kubernetes-build-containers
807 build_args: '{build_args}'
810 name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate
811 <<: *functest-kubernetes-params
812 container: functest-kubernetes-core
816 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
819 name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate
820 <<: *functest-kubernetes-params
821 container: functest-kubernetes-healthcheck
823 path: docker/healthcheck
825 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
828 name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate
829 <<: *functest-kubernetes-params
830 container: functest-kubernetes-cnf
834 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
837 name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate
838 <<: *functest-kubernetes-params
839 container: functest-kubernetes-security
841 path: docker/security
843 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
846 name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate
847 <<: *functest-kubernetes-params
848 container: functest-kubernetes-smoke
852 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
855 name: functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate
856 <<: *functest-kubernetes-params
857 container: functest-kubernetes-benchmarking
859 path: docker/benchmarking
861 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
864 name: functest-kubernetes-patchset-created
868 - patchset-created-event
869 - comment-added-contains-event:
870 comment-contains-value: 'recheck'
871 - comment-added-contains-event:
872 comment-contains-value: 'reverify'
874 - project-compare-type: 'ANT'
875 project-pattern: 'functest-kubernetes'
877 - branch-compare-type: 'ANT'
878 branch-pattern: '**/{branch}'
881 name: 'functest-kubernetes-{tag}-review'
882 project-type: multijob
884 - functest-kubernetes-patchset-created:
887 - functest-kubernetes-slave:
889 - functest-kubernetes-build_tag:
891 - functest-kubernetes-DEPLOY_SCENARIO:
892 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
893 - functest-kubernetes-E2E_TEST_OPTS:
894 E2E_TEST_OPTS: container-runtime:containerd
895 # PyYAML and yamllint differ here
896 # see https://github.com/yaml/pyyaml/issues/234
897 # yamllint disable rule:indentation
901 - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
902 # yamllint enable rule:indentation
905 name: remove former images
907 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
908 <<: *functest-kubernetes-jobs
909 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
910 <<: *functest-kubernetes-jobs
911 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
912 <<: *functest-kubernetes-jobs
913 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
914 <<: *functest-kubernetes-jobs
915 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
916 <<: *functest-kubernetes-jobs
918 name: remove dependency
920 - name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
921 <<: *functest-kubernetes-jobs
923 name: pull dependency
925 - name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
926 <<: *functest-kubernetes-jobs
928 name: build opnfv/functest-kubernetes-core
930 - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate'
931 <<: *functest-kubernetes-jobs
933 name: build containers
935 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate'
936 <<: *functest-kubernetes-jobs
937 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate'
938 <<: *functest-kubernetes-jobs
939 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate'
940 <<: *functest-kubernetes-jobs
942 name: build opnfv/functest-kubernetes-smoke
944 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate'
945 <<: *functest-kubernetes-jobs
947 name: build opnfv/functest-kubernetes-benchmarking
949 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate'
950 <<: *functest-kubernetes-jobs
952 name: opnfv/functest-kubernetes-healthcheck:{tag}
954 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
955 <<: *functest-kubernetes-jobs
956 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
957 <<: *functest-kubernetes-jobs
959 name: opnfv/functest-kubernetes-smoke:{tag}
960 execution-type: SEQUENTIALLY
962 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
963 <<: *functest-kubernetes-jobs
964 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_io-run'
965 <<: *functest-kubernetes-jobs
966 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
967 <<: *functest-kubernetes-jobs
968 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance_serial-run'
969 <<: *functest-kubernetes-jobs
970 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery-run'
971 <<: *functest-kubernetes-jobs
972 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery_serial-run'
973 <<: *functest-kubernetes-jobs
974 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps-run'
975 <<: *functest-kubernetes-jobs
976 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps_serial-run'
977 <<: *functest-kubernetes-jobs
978 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_auth-run'
979 <<: *functest-kubernetes-jobs
980 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cluster_lifecycle-run'
981 <<: *functest-kubernetes-jobs
982 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_instrumentation-run'
983 <<: *functest-kubernetes-jobs
984 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network-run'
985 <<: *functest-kubernetes-jobs
986 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_node-run'
987 <<: *functest-kubernetes-jobs
988 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_scheduling_serial-run'
989 <<: *functest-kubernetes-jobs
990 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage-run'
991 <<: *functest-kubernetes-jobs
992 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage_serial-run'
993 <<: *functest-kubernetes-jobs
995 name: opnfv/functest-kubernetes-security:{tag}
997 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
998 <<: *functest-kubernetes-jobs
999 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_master-run'
1000 <<: *functest-kubernetes-jobs
1001 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_node-run'
1002 <<: *functest-kubernetes-jobs
1004 name: opnfv/functest-kubernetes-benchmarking:{tag}
1006 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
1007 <<: *functest-kubernetes-jobs
1008 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-netperf-run'
1009 <<: *functest-kubernetes-jobs
1011 name: opnfv/functest-kubernetes-cnf:{tag}
1013 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
1014 <<: *functest-kubernetes-jobs
1015 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-helm_vims-run'
1016 <<: *functest-kubernetes-jobs
1017 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_testsuite-run'
1018 <<: *functest-kubernetes-jobs
1024 recipients: cedric.ollivier@orange.com
1027 name: 'functest-kubernetes-review'
1028 <<: *functest-kubernetes-params
1030 - 'functest-kubernetes-{tag}-review'
1033 name: functest-kubernetes-review
1042 regex: ^functest-kubernetes-[a-z0-9.]+-review$
1045 name: functest-kubernetes-tox
1054 regex: ^functest-kubernetes-[a-z0-9.]+-tox$
1057 name: functest-kubernetes-push-containers
1061 if [ "{repo}" = "_" ]; then
1062 image={container}:{tag}
1063 elif [ "{port}" = "None" ]; then
1064 image={repo}/{container}:{tag}
1066 image={repo}:{port}/{container}:{tag}
1071 name: functest-kubernetes-commit
1074 cron: "*/30 * * * *"
1077 name: 'functest-kubernetes-{repo}-{container}-{tag}-build'
1079 - functest-kubernetes-slave:
1082 - functest-kubernetes-scm:
1085 - functest-kubernetes-build-containers:
1086 <<: *functest-kubernetes-build-containers
1088 build_args: '{build_args}'
1089 - functest-kubernetes-push-containers:
1090 <<: *functest-kubernetes-build-containers
1094 name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build
1095 <<: *functest-kubernetes-params
1096 container: functest-kubernetes-core
1100 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1103 name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build
1104 <<: *functest-kubernetes-params
1105 container: functest-kubernetes-healthcheck
1107 path: docker/healthcheck
1109 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1112 name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build
1113 <<: *functest-kubernetes-params
1114 container: functest-kubernetes-cnf
1118 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1121 name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build
1122 <<: *functest-kubernetes-params
1123 container: functest-kubernetes-security
1125 path: docker/security
1127 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1130 name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build
1131 <<: *functest-kubernetes-params
1132 container: functest-kubernetes-smoke
1136 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1139 name: functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build
1140 <<: *functest-kubernetes-params
1141 container: functest-kubernetes-benchmarking
1143 path: docker/benchmarking
1145 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1148 name: 'functest-kubernetes-{tag}-docker'
1149 project-type: multijob
1151 - functest-kubernetes-commit
1153 - functest-kubernetes-scm:
1156 - functest-kubernetes-slave:
1158 # PyYAML and yamllint differ here
1159 # see https://github.com/yaml/pyyaml/issues/234
1160 # yamllint disable rule:indentation
1164 - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
1165 # yamllint enable rule:indentation
1168 name: remove dependency
1170 - name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
1171 <<: *functest-kubernetes-jobs
1173 name: pull dependency
1175 - name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
1176 <<: *functest-kubernetes-jobs
1178 name: build opnfv/functest-kubernetes-core
1180 - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build'
1181 <<: *functest-kubernetes-jobs
1183 name: build containers
1185 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build'
1186 <<: *functest-kubernetes-jobs
1187 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build'
1188 <<: *functest-kubernetes-jobs
1189 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build'
1190 <<: *functest-kubernetes-jobs
1192 name: build opnfv/functest-kubernetes-smoke
1194 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build'
1195 <<: *functest-kubernetes-jobs
1197 name: build opnfv/functest-kubernetes-benchmarking
1199 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build'
1200 <<: *functest-kubernetes-jobs
1206 recipients: cedric.ollivier@orange.com
1209 name: functest-kubernetes-trivy
1212 apt-get -o DPkg::Lock::Timeout=300 update && \
1213 DEBIAN_FRONTEND=noninteractive apt-get \
1214 -o DPkg::Lock::Timeout=300 install curl -y
1216 curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sh -s -- -b .
1217 if [ "{repo}" = "_" ]; then
1218 image={container}:{tag}
1219 elif [ "{port}" = "None" ]; then
1220 image={repo}/{container}:{tag}
1222 image={repo}:{port}/{container}:{tag}
1224 ./trivy --exit-code 1 $image
1227 name: 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1231 - functest-kubernetes-slave:
1234 - functest-kubernetes-trivy:
1235 <<: *functest-kubernetes-containers
1241 recipients: cedric.ollivier@orange.com
1244 name: 'functest-kubernetes-opnfv-functest-kubernetes-core-trivy'
1245 <<: *functest-kubernetes-params
1246 container: 'functest-kubernetes-core'
1248 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1251 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-trivy'
1252 <<: *functest-kubernetes-params
1253 container: 'functest-kubernetes-healthcheck'
1255 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1258 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-trivy'
1259 <<: *functest-kubernetes-params
1260 container: 'functest-kubernetes-cnf'
1262 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1265 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-trivy'
1266 <<: *functest-kubernetes-params
1267 container: 'functest-kubernetes-security'
1269 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1272 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-trivy'
1273 <<: *functest-kubernetes-params
1274 container: 'functest-kubernetes-smoke'
1276 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1279 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-trivy'
1280 <<: *functest-kubernetes-params
1281 container: 'functest-kubernetes-benchmarking'
1283 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1286 name: functest-kubernetes-docker-scan
1289 apt-get -o DPkg::Lock::Timeout=300 update && \
1290 DEBIAN_FRONTEND=noninteractive apt-get -o DPkg::Lock::Timeout=300 install \
1293 mkdir -p ~/.docker/cli-plugins && \
1294 curl https://github.com/docker/scan-cli-plugin/releases/latest/download/docker-scan_linux_amd64 \
1295 -L -s -S -o ~/.docker/cli-plugins/docker-scan &&\
1296 chmod +x ~/.docker/cli-plugins/docker-scan
1297 if [ "{repo}" = "_" ]; then
1298 image={container}:{tag}
1299 elif [ "{port}" = "None" ]; then
1300 image={repo}/{container}:{tag}
1302 image={repo}:{port}/{container}:{tag}
1307 name: 'functest-kubernetes-{repo}-{container}-{tag}-docker-scan'
1311 - functest-kubernetes-slave:
1314 - functest-kubernetes-docker-scan:
1315 <<: *functest-kubernetes-containers
1321 recipients: cedric.ollivier@orange.com
1324 name: 'functest-kubernetes-opnfv-functest-kubernetes-core-docker-scan'
1325 <<: *functest-kubernetes-params
1326 container: 'functest-kubernetes-core'
1328 - 'functest-kubernetes-{repo}-{container}-{tag}-docker-scan'
1331 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-docker-scan'
1332 <<: *functest-kubernetes-params
1333 container: 'functest-kubernetes-healthcheck'
1335 - 'functest-kubernetes-{repo}-{container}-{tag}-docker-scan'
1338 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-docker-scan'
1339 <<: *functest-kubernetes-params
1340 container: 'functest-kubernetes-cnf'
1342 - 'functest-kubernetes-{repo}-{container}-{tag}-docker-scan'
1345 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-docker-scan'
1346 <<: *functest-kubernetes-params
1347 container: 'functest-kubernetes-security'
1349 - 'functest-kubernetes-{repo}-{container}-{tag}-docker-scan'
1352 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-docker-scan'
1353 <<: *functest-kubernetes-params
1354 container: 'functest-kubernetes-smoke'
1356 - 'functest-kubernetes-{repo}-{container}-{tag}-docker-scan'
1359 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-docker-scan'
1360 <<: *functest-kubernetes-params
1361 container: 'functest-kubernetes-benchmarking'
1363 - 'functest-kubernetes-{repo}-{container}-{tag}-docker-scan'
1366 name: 'functest-kubernetes'
1367 <<: *functest-kubernetes-params
1369 - 'functest-kubernetes-{tag}-docker'
1372 name: functest-kubernetes-docker
1381 regex: ^functest-kubernetes-[a-z0-9.]+-docker$
1384 name: functest-kubernetes-trivy
1393 regex: (?!functest-kubernetes-pi)(?!functest-kubernetes-ng)^functest-kubernetes-[a-z-0-9.]+-trivy$
1396 name: functest-kubernetes-docker-scan
1405 regex: ^functest-kubernetes-[a-z0-9.]+-docker-scan$