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}'
94 name: functest-kubernetes-pull-containers
98 if [ "{repo}" = "_" ]; then
99 image={container}:{tag}
100 elif [ "{port}" = "None" ]; then
101 image={repo}/{container}:{tag}
103 image={repo}:{port}/{container}:{tag}
108 name: functest-kubernetes-run-containers
113 if [ "{volumes}" != "None" ]; then
114 for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); \
115 do volumes="-v $i $volumes"; done
118 if [ "{env}" != "None" ]; then
119 for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); \
120 do env="-e $i $env"; done
122 [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
123 if [ "{repo}" = "_" ]; then
124 image={container}:{tag}
125 elif [ "{port}" = "None" ]; then
126 image={repo}/{container}:{tag}
128 image={repo}:{port}/{container}:{tag}
130 mkdir -p $WORKSPACE/results
131 chown {uid}:{gid} $WORKSPACE/results
133 --privileged={privileged} \
134 --network={network} \
137 -e S3_ENDPOINT_URL=https://storage.googleapis.com \
138 -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
139 -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
140 -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
141 -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
142 -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
143 -e NODE_NAME=$slave \
144 -e BUILD_TAG=$BUILD_TAG \
145 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
146 $image run_tests -t {test} -p -r
149 name: functest-kubernetes-remove-images
153 if [ "{repo}" = "_" ]; then
154 image={container}:{tag}
155 elif [ "{port}" = "None" ]; then
156 image={repo}/{container}:{tag}
158 image={repo}:{port}/{container}:{tag}
160 docker rmi $image || true
163 name: 'functest-kubernetes-{repo}-{container}-{tag}-pull'
165 - functest-kubernetes-slave:
168 - functest-kubernetes-pull-containers:
169 <<: *functest-kubernetes-containers
172 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-pull'
173 <<: *functest-kubernetes-params
174 container: 'functest-kubernetes-healthcheck'
176 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
179 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-pull'
180 <<: *functest-kubernetes-params
181 container: 'functest-kubernetes-smoke'
183 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
186 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-pull'
187 <<: *functest-kubernetes-params
188 container: 'functest-kubernetes-security'
190 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
193 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-pull'
194 <<: *functest-kubernetes-params
195 container: 'functest-kubernetes-benchmarking'
197 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
200 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-pull'
201 <<: *functest-kubernetes-params
202 container: 'functest-kubernetes-cnf'
204 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
207 name: 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
209 - functest-kubernetes-slave:
212 - functest-kubernetes-remove-images:
213 <<: *functest-kubernetes-containers
216 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-rmi'
217 <<: *functest-kubernetes-params
218 container: 'functest-kubernetes-healthcheck'
220 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
223 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-rmi'
224 <<: *functest-kubernetes-params
225 container: 'functest-kubernetes-smoke'
227 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
230 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-rmi'
231 <<: *functest-kubernetes-params
232 container: 'functest-kubernetes-security'
234 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
237 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-rmi'
238 <<: *functest-kubernetes-params
239 container: 'functest-kubernetes-benchmarking'
241 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
244 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-rmi'
245 <<: *functest-kubernetes-params
246 container: 'functest-kubernetes-cnf'
248 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
251 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-{test}-run'
253 - functest-kubernetes-slave:
255 - functest-kubernetes-build_tag:
257 - functest-kubernetes-DEPLOY_SCENARIO:
258 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
259 - functest-kubernetes-E2E_TEST_OPTS:
260 E2E_TEST_OPTS: container-runtime:containerd
262 - functest-kubernetes-run-containers:
263 <<: *functest-kubernetes-run-containers
266 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck'
267 <<: *functest-kubernetes-params
269 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
271 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
272 - E2E_TEST_OPTS=$E2E_TEST_OPTS
273 container: 'functest-kubernetes-healthcheck'
282 - 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-{test}-run'
285 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-{test}-run'
287 - functest-kubernetes-slave:
289 - functest-kubernetes-build_tag:
291 - functest-kubernetes-DEPLOY_SCENARIO:
292 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
293 - functest-kubernetes-E2E_TEST_OPTS:
294 E2E_TEST_OPTS: container-runtime:containerd
296 - functest-kubernetes-run-containers:
297 <<: *functest-kubernetes-run-containers
300 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke'
301 <<: *functest-kubernetes-params
303 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
305 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
306 - E2E_TEST_OPTS=$E2E_TEST_OPTS
307 container: 'functest-kubernetes-smoke'
312 - k8s_conformance_serial
314 - sig_api_machinery_serial
318 - sig_cluster_lifecycle
319 - sig_instrumentation
322 - sig_scheduling_serial
339 - 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-{test}-run'
342 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-{test}-run'
344 - functest-kubernetes-slave:
346 - functest-kubernetes-build_tag:
348 - functest-kubernetes-DEPLOY_SCENARIO:
349 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
350 - functest-kubernetes-E2E_TEST_OPTS:
351 E2E_TEST_OPTS: container-runtime:containerd
353 - functest-kubernetes-run-containers:
354 <<: *functest-kubernetes-run-containers
357 name: 'functest-kubernetes-opnfv-functest-kubernetes-security'
358 <<: *functest-kubernetes-params
360 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
362 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
363 - E2E_TEST_OPTS=$E2E_TEST_OPTS
364 container: 'functest-kubernetes-security'
374 - 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-{test}-run'
377 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-{test}-run'
379 - functest-kubernetes-slave:
381 - functest-kubernetes-build_tag:
383 - functest-kubernetes-DEPLOY_SCENARIO:
384 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
385 - functest-kubernetes-E2E_TEST_OPTS:
386 E2E_TEST_OPTS: container-runtime:containerd
388 - functest-kubernetes-run-containers:
389 <<: *functest-kubernetes-run-containers
392 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking'
393 <<: *functest-kubernetes-params
395 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
397 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
398 - E2E_TEST_OPTS=$E2E_TEST_OPTS
399 container: 'functest-kubernetes-benchmarking'
401 - xrally_kubernetes_full
408 - 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-{test}-run'
411 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-{test}-run'
413 - functest-kubernetes-slave:
415 - functest-kubernetes-build_tag:
417 - functest-kubernetes-DEPLOY_SCENARIO:
418 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
419 - functest-kubernetes-E2E_TEST_OPTS:
420 E2E_TEST_OPTS: container-runtime:containerd
422 - functest-kubernetes-run-containers:
423 <<: *functest-kubernetes-run-containers
426 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf'
427 <<: *functest-kubernetes-params
429 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
431 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
432 - E2E_TEST_OPTS=$E2E_TEST_OPTS
433 container: 'functest-kubernetes-cnf'
443 - 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-{test}-run'
446 name: functest-kubernetes-zip
451 if [ "{volumes}" != "None" ]; then
452 for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); \
453 do volumes="-v $i $volumes"; done
456 if [ "{env}" != "None" ]; then
457 for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); \
458 do env="-e $i $env"; done
460 [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
461 if [ "{repo}" = "_" ]; then
462 image={container}:{tag}
463 elif [ "{port}" = "None" ]; then
464 image={repo}/{container}:{tag}
466 image={repo}:{port}/{container}:{tag}
471 -e S3_ENDPOINT_URL=https://storage.googleapis.com \
472 -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes \
473 -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes \
474 -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
475 -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
476 -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
477 -e BUILD_TAG=$BUILD_TAG \
478 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
482 name: 'functest-kubernetes-{tag}-zip'
484 - functest-kubernetes-slave:
486 - functest-kubernetes-build_tag:
488 - functest-kubernetes-DEPLOY_SCENARIO:
489 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
490 - functest-kubernetes-E2E_TEST_OPTS:
491 E2E_TEST_OPTS: container-runtime:containerd
493 - functest-kubernetes-zip:
494 <<: *functest-kubernetes-containers
499 name: 'functest-kubernetes-{tag}-zip'
500 <<: *functest-kubernetes-params
502 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
504 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
505 - E2E_TEST_OPTS=$E2E_TEST_OPTS
506 container: 'functest-kubernetes-healthcheck'
508 - 'functest-kubernetes-{tag}-zip'
511 name: 'functest-kubernetes-{tag}-daily'
512 project-type: multijob
516 - functest-kubernetes-slave:
518 - functest-kubernetes-build_tag:
520 - functest-kubernetes-DEPLOY_SCENARIO:
521 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
522 - functest-kubernetes-E2E_TEST_OPTS:
523 E2E_TEST_OPTS: container-runtime:containerd
524 # PyYAML and yamllint differ here
525 # see https://github.com/yaml/pyyaml/issues/234
526 # yamllint disable rule:indentation
530 - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
531 # yamllint enable rule:indentation
534 name: remove former images
536 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
537 <<: *functest-kubernetes-jobs
538 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
539 <<: *functest-kubernetes-jobs
540 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
541 <<: *functest-kubernetes-jobs
542 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
543 <<: *functest-kubernetes-jobs
544 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
545 <<: *functest-kubernetes-jobs
547 name: pull containers
549 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-pull'
550 <<: *functest-kubernetes-jobs
551 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-pull'
552 <<: *functest-kubernetes-jobs
553 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-pull'
554 <<: *functest-kubernetes-jobs
555 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-pull'
556 <<: *functest-kubernetes-jobs
557 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-pull'
558 <<: *functest-kubernetes-jobs
560 name: opnfv/functest-kubernetes-healthcheck:{tag}
562 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
563 <<: *functest-kubernetes-jobs
564 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
565 <<: *functest-kubernetes-jobs
567 name: opnfv/functest-kubernetes-smoke:{tag}
568 execution-type: SEQUENTIALLY
570 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
571 <<: *functest-kubernetes-jobs
572 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_io-run'
573 <<: *functest-kubernetes-jobs
574 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
575 <<: *functest-kubernetes-jobs
576 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance_serial-run'
577 <<: *functest-kubernetes-jobs
578 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery-run'
579 <<: *functest-kubernetes-jobs
580 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery_serial-run'
581 <<: *functest-kubernetes-jobs
582 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps-run'
583 <<: *functest-kubernetes-jobs
584 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps_serial-run'
585 <<: *functest-kubernetes-jobs
586 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_auth-run'
587 <<: *functest-kubernetes-jobs
588 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cluster_lifecycle-run'
589 <<: *functest-kubernetes-jobs
590 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_instrumentation-run'
591 <<: *functest-kubernetes-jobs
592 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network-run'
593 <<: *functest-kubernetes-jobs
594 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_node-run'
595 <<: *functest-kubernetes-jobs
596 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_scheduling_serial-run'
597 <<: *functest-kubernetes-jobs
598 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage-run'
599 <<: *functest-kubernetes-jobs
600 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage_serial-run'
601 <<: *functest-kubernetes-jobs
603 name: opnfv/functest-kubernetes-security:{tag}
605 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
606 <<: *functest-kubernetes-jobs
607 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_master-run'
608 <<: *functest-kubernetes-jobs
609 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_node-run'
610 <<: *functest-kubernetes-jobs
612 name: opnfv/functest-kubernetes-benchmarking:{tag}
614 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
615 <<: *functest-kubernetes-jobs
616 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-netperf-run'
617 <<: *functest-kubernetes-jobs
619 name: opnfv/functest-kubernetes-cnf:{tag}
621 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
622 <<: *functest-kubernetes-jobs
623 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-helm_vims-run'
624 <<: *functest-kubernetes-jobs
625 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_testsuite-run'
626 <<: *functest-kubernetes-jobs
628 name: dump all campaign data
630 - name: 'functest-kubernetes-{tag}-zip'
631 <<: *functest-kubernetes-jobs
637 recipients: cedric.ollivier@orange.com
640 name: 'functest-kubernetes-daily'
641 <<: *functest-kubernetes-params
643 - 'functest-kubernetes-{tag}-daily'
646 name: functest-kubernetes
655 regex: ^functest-kubernetes-[a-z0-9.]+-daily$
657 - functest-kubernetes-build-containers: &functest-kubernetes-build-containers
658 name: 'functest-kubernetes-build-containers'
659 <<: *functest-kubernetes-containers
662 build_args: '{build_args}'
666 name: functest-kubernetes-build-containers
670 if [ "{repo}" = "_" ]; then
671 image={container}:{tag}
672 elif [ "{port}" = "None" ]; then
673 image={repo}/{container}:{tag}
675 image={repo}:{port}/{container}:{tag}
678 if [ "{build_args}" != "None" ]; then
679 for i in $(echo {build_args} | tr -d '[]' |sed "s/, / /g" ); \
680 do build_args="--build-arg $i $build_args"; done
682 if [ "{ref_arg}" != "None" ]; then
683 build_args="$build_args --build-arg {ref_arg}={ref}"
686 if [ "{from}" != "None" ]; then
687 sed -i {from} Dockerfile
689 docker build $build_args \
690 --pull=false --no-cache --force-rm=true \
694 name: functest-kubernetes-scm
697 url: 'https://gerrit.opnfv.org/gerrit/functest-kubernetes'
698 refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/*'
702 - functest-kubernetes-dep: &functest-kubernetes-dep
703 name: 'functest-kubernetes-containers'
707 dependency: '{dependency}'
710 name: functest-kubernetes-pull-dep-images
714 if [ "_" = "_" ]; then
715 image=alpine:{dependency}
716 elif [ "None" = "None" ]; then
717 image=_/alpine:{dependency}
719 image=_:/alpine:{dependency}
721 docker pull $image || true
724 name: functest-kubernetes-remove-dep-images
728 if [ "_" = "_" ]; then
729 image=alpine:{dependency}
730 elif [ "" = "None" ]; then
731 image=_/alpine:{dependency}
733 image=_:/alpine:{dependency}
735 docker rmi $image || true
738 name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
740 - functest-kubernetes-slave:
743 - functest-kubernetes-pull-dep-images:
744 <<: *functest-kubernetes-dep
747 name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
748 <<: *functest-kubernetes-params
750 - 'functest-kubernetes-{repo}-{tag}-dep-pull'
753 name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
755 - functest-kubernetes-slave:
758 - functest-kubernetes-remove-dep-images:
759 <<: *functest-kubernetes-dep
762 name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
763 <<: *functest-kubernetes-params
765 - 'functest-kubernetes-{repo}-{tag}-dep-rmi'
768 name: functest-kubernetes-tox
772 apt-get -o DPkg::Lock::Timeout=300 update && \
773 DEBIAN_FRONTEND=noninteractive apt-get \
774 -o DPkg::Lock::Timeout=300 dist-upgrade -y
775 DEBIAN_FRONTEND=noninteractive \
776 apt-get -o DPkg::Lock::Timeout=300 install software-properties-common gpg -y
777 add-apt-repository -y ppa:deadsnakes/ppa
778 apt-get -o DPkg::Lock::Timeout=300 update && \
779 DEBIAN_FRONTEND=noninteractive apt-get \
780 -o DPkg::Lock::Timeout=300 install \
781 python3.9 python3.9-dev python3.9-distutils \
782 python3.8 python3.8-dev python3.8-distutils \
783 python3.7 python3.7-dev python3.6 python3.6-dev \
784 python python-dev python3-pip enchant -y
785 pip3 install tox tox-pip-version
790 name: 'functest-kubernetes-{tag}-tox'
792 - functest-kubernetes-scm:
795 - functest-kubernetes-patchset-created:
798 - functest-kubernetes-slave:
801 - functest-kubernetes-tox:
804 name: functest-kubernetes-tox
805 <<: *functest-kubernetes-params
807 - 'functest-kubernetes-{tag}-tox'
810 name: 'functest-kubernetes-{repo}-{container}-{tag}-gate'
812 - functest-kubernetes-slave:
815 - functest-kubernetes-scm:
818 - functest-kubernetes-build-containers:
819 <<: *functest-kubernetes-build-containers
821 build_args: '{build_args}'
824 name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate
825 <<: *functest-kubernetes-params
826 container: functest-kubernetes-core
830 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
833 name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate
834 <<: *functest-kubernetes-params
835 container: functest-kubernetes-healthcheck
837 path: docker/healthcheck
839 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
842 name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate
843 <<: *functest-kubernetes-params
844 container: functest-kubernetes-cnf
848 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
851 name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate
852 <<: *functest-kubernetes-params
853 container: functest-kubernetes-security
855 path: docker/security
857 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
860 name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate
861 <<: *functest-kubernetes-params
862 container: functest-kubernetes-smoke
866 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
869 name: functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate
870 <<: *functest-kubernetes-params
871 container: functest-kubernetes-benchmarking
873 path: docker/benchmarking
875 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
878 name: functest-kubernetes-patchset-created
882 - patchset-created-event
883 - comment-added-contains-event:
884 comment-contains-value: 'recheck'
885 - comment-added-contains-event:
886 comment-contains-value: 'reverify'
888 - project-compare-type: 'ANT'
889 project-pattern: 'functest-kubernetes'
891 - branch-compare-type: 'ANT'
892 branch-pattern: '**/{branch}'
895 name: 'functest-kubernetes-{tag}-review'
896 project-type: multijob
898 - functest-kubernetes-patchset-created:
901 - functest-kubernetes-slave:
903 - functest-kubernetes-build_tag:
905 - functest-kubernetes-DEPLOY_SCENARIO:
906 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
907 - functest-kubernetes-E2E_TEST_OPTS:
908 E2E_TEST_OPTS: container-runtime:containerd
909 # PyYAML and yamllint differ here
910 # see https://github.com/yaml/pyyaml/issues/234
911 # yamllint disable rule:indentation
915 - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
916 # yamllint enable rule:indentation
919 name: remove former images
921 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
922 <<: *functest-kubernetes-jobs
923 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
924 <<: *functest-kubernetes-jobs
925 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
926 <<: *functest-kubernetes-jobs
927 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
928 <<: *functest-kubernetes-jobs
929 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
930 <<: *functest-kubernetes-jobs
932 name: remove dependency
934 - name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
935 <<: *functest-kubernetes-jobs
937 name: pull dependency
939 - name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
940 <<: *functest-kubernetes-jobs
942 name: build opnfv/functest-kubernetes-core
944 - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate'
945 <<: *functest-kubernetes-jobs
947 name: build containers
949 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate'
950 <<: *functest-kubernetes-jobs
951 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate'
952 <<: *functest-kubernetes-jobs
953 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate'
954 <<: *functest-kubernetes-jobs
956 name: build opnfv/functest-kubernetes-smoke
958 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate'
959 <<: *functest-kubernetes-jobs
961 name: build opnfv/functest-kubernetes-benchmarking
963 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate'
964 <<: *functest-kubernetes-jobs
966 name: opnfv/functest-kubernetes-healthcheck:{tag}
968 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
969 <<: *functest-kubernetes-jobs
970 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
971 <<: *functest-kubernetes-jobs
973 name: opnfv/functest-kubernetes-smoke:{tag}
974 execution-type: SEQUENTIALLY
976 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
977 <<: *functest-kubernetes-jobs
978 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_io-run'
979 <<: *functest-kubernetes-jobs
980 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
981 <<: *functest-kubernetes-jobs
982 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance_serial-run'
983 <<: *functest-kubernetes-jobs
984 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery-run'
985 <<: *functest-kubernetes-jobs
986 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery_serial-run'
987 <<: *functest-kubernetes-jobs
988 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps-run'
989 <<: *functest-kubernetes-jobs
990 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps_serial-run'
991 <<: *functest-kubernetes-jobs
992 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_auth-run'
993 <<: *functest-kubernetes-jobs
994 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cluster_lifecycle-run'
995 <<: *functest-kubernetes-jobs
996 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_instrumentation-run'
997 <<: *functest-kubernetes-jobs
998 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network-run'
999 <<: *functest-kubernetes-jobs
1000 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_node-run'
1001 <<: *functest-kubernetes-jobs
1002 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_scheduling_serial-run'
1003 <<: *functest-kubernetes-jobs
1004 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage-run'
1005 <<: *functest-kubernetes-jobs
1006 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage_serial-run'
1007 <<: *functest-kubernetes-jobs
1009 name: opnfv/functest-kubernetes-security:{tag}
1011 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
1012 <<: *functest-kubernetes-jobs
1013 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_master-run'
1014 <<: *functest-kubernetes-jobs
1015 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_node-run'
1016 <<: *functest-kubernetes-jobs
1018 name: opnfv/functest-kubernetes-benchmarking:{tag}
1020 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
1021 <<: *functest-kubernetes-jobs
1022 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-netperf-run'
1023 <<: *functest-kubernetes-jobs
1025 name: opnfv/functest-kubernetes-cnf:{tag}
1027 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
1028 <<: *functest-kubernetes-jobs
1029 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-helm_vims-run'
1030 <<: *functest-kubernetes-jobs
1031 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_testsuite-run'
1032 <<: *functest-kubernetes-jobs
1038 recipients: cedric.ollivier@orange.com
1041 name: 'functest-kubernetes-review'
1042 <<: *functest-kubernetes-params
1044 - 'functest-kubernetes-{tag}-review'
1047 name: functest-kubernetes-review
1056 regex: ^functest-kubernetes-[a-z0-9.]+-review$
1059 name: functest-kubernetes-tox
1068 regex: ^functest-kubernetes-[a-z0-9.]+-tox$
1071 name: functest-kubernetes-push-containers
1075 if [ "{repo}" = "_" ]; then
1076 image={container}:{tag}
1077 elif [ "{port}" = "None" ]; then
1078 image={repo}/{container}:{tag}
1080 image={repo}:{port}/{container}:{tag}
1085 name: functest-kubernetes-commit
1088 cron: "*/30 * * * *"
1091 name: 'functest-kubernetes-{repo}-{container}-{tag}-build'
1093 - functest-kubernetes-slave:
1096 - functest-kubernetes-scm:
1099 - functest-kubernetes-build-containers:
1100 <<: *functest-kubernetes-build-containers
1102 build_args: '{build_args}'
1103 - functest-kubernetes-push-containers:
1104 <<: *functest-kubernetes-build-containers
1108 name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build
1109 <<: *functest-kubernetes-params
1110 container: functest-kubernetes-core
1114 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1117 name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build
1118 <<: *functest-kubernetes-params
1119 container: functest-kubernetes-healthcheck
1121 path: docker/healthcheck
1123 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1126 name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build
1127 <<: *functest-kubernetes-params
1128 container: functest-kubernetes-cnf
1132 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1135 name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build
1136 <<: *functest-kubernetes-params
1137 container: functest-kubernetes-security
1139 path: docker/security
1141 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1144 name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build
1145 <<: *functest-kubernetes-params
1146 container: functest-kubernetes-smoke
1150 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1153 name: functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build
1154 <<: *functest-kubernetes-params
1155 container: functest-kubernetes-benchmarking
1157 path: docker/benchmarking
1159 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1162 name: 'functest-kubernetes-{tag}-docker'
1163 project-type: multijob
1165 - functest-kubernetes-commit
1167 - functest-kubernetes-scm:
1170 - functest-kubernetes-slave:
1172 # PyYAML and yamllint differ here
1173 # see https://github.com/yaml/pyyaml/issues/234
1174 # yamllint disable rule:indentation
1178 - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
1179 # yamllint enable rule:indentation
1182 name: remove dependency
1184 - name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
1185 <<: *functest-kubernetes-jobs
1187 name: pull dependency
1189 - name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
1190 <<: *functest-kubernetes-jobs
1192 name: build opnfv/functest-kubernetes-core
1194 - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build'
1195 <<: *functest-kubernetes-jobs
1197 name: build containers
1199 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build'
1200 <<: *functest-kubernetes-jobs
1201 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build'
1202 <<: *functest-kubernetes-jobs
1203 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build'
1204 <<: *functest-kubernetes-jobs
1206 name: build opnfv/functest-kubernetes-smoke
1208 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build'
1209 <<: *functest-kubernetes-jobs
1211 name: build opnfv/functest-kubernetes-benchmarking
1213 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build'
1214 <<: *functest-kubernetes-jobs
1220 recipients: cedric.ollivier@orange.com
1223 name: functest-kubernetes-trivy
1226 apt-get -o DPkg::Lock::Timeout=300 update && \
1227 DEBIAN_FRONTEND=noninteractive apt-get \
1228 -o DPkg::Lock::Timeout=300 install curl -y
1230 curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sh -s -- -b .
1231 if [ "{repo}" = "_" ]; then
1232 image={container}:{tag}
1233 elif [ "{port}" = "None" ]; then
1234 image={repo}/{container}:{tag}
1236 image={repo}:{port}/{container}:{tag}
1238 ./trivy --exit-code 1 $image
1241 name: 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1245 - functest-kubernetes-slave:
1248 - functest-kubernetes-trivy:
1249 <<: *functest-kubernetes-containers
1255 recipients: cedric.ollivier@orange.com
1258 name: 'functest-kubernetes-opnfv-functest-kubernetes-core-trivy'
1259 <<: *functest-kubernetes-params
1260 container: 'functest-kubernetes-core'
1262 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1265 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-trivy'
1266 <<: *functest-kubernetes-params
1267 container: 'functest-kubernetes-healthcheck'
1269 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1272 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-trivy'
1273 <<: *functest-kubernetes-params
1274 container: 'functest-kubernetes-cnf'
1276 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1279 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-trivy'
1280 <<: *functest-kubernetes-params
1281 container: 'functest-kubernetes-security'
1283 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1286 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-trivy'
1287 <<: *functest-kubernetes-params
1288 container: 'functest-kubernetes-smoke'
1290 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1293 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-trivy'
1294 <<: *functest-kubernetes-params
1295 container: 'functest-kubernetes-benchmarking'
1297 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1300 name: functest-kubernetes-grype
1303 apt-get -o DPkg::Lock::Timeout=300 update && \
1304 DEBIAN_FRONTEND=noninteractive apt-get \
1305 -o DPkg::Lock::Timeout=300 install curl -y
1307 curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b .
1308 if [ "{repo}" = "_" ]; then
1309 image={container}:{tag}
1310 elif [ "{port}" = "None" ]; then
1311 image={repo}/{container}:{tag}
1313 image={repo}:{port}/{container}:{tag}
1318 name: 'functest-kubernetes-{repo}-{container}-{tag}-grype'
1322 - functest-kubernetes-slave:
1325 - functest-kubernetes-grype:
1326 <<: *functest-kubernetes-containers
1332 recipients: cedric.ollivier@orange.com
1335 name: 'functest-kubernetes-opnfv-functest-kubernetes-core-grype'
1336 <<: *functest-kubernetes-params
1337 container: 'functest-kubernetes-core'
1339 - 'functest-kubernetes-{repo}-{container}-{tag}-grype'
1342 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-grype'
1343 <<: *functest-kubernetes-params
1344 container: 'functest-kubernetes-healthcheck'
1346 - 'functest-kubernetes-{repo}-{container}-{tag}-grype'
1349 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-grype'
1350 <<: *functest-kubernetes-params
1351 container: 'functest-kubernetes-cnf'
1353 - 'functest-kubernetes-{repo}-{container}-{tag}-grype'
1356 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-grype'
1357 <<: *functest-kubernetes-params
1358 container: 'functest-kubernetes-security'
1360 - 'functest-kubernetes-{repo}-{container}-{tag}-grype'
1363 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-grype'
1364 <<: *functest-kubernetes-params
1365 container: 'functest-kubernetes-smoke'
1367 - 'functest-kubernetes-{repo}-{container}-{tag}-grype'
1370 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-grype'
1371 <<: *functest-kubernetes-params
1372 container: 'functest-kubernetes-benchmarking'
1374 - 'functest-kubernetes-{repo}-{container}-{tag}-grype'
1377 name: 'functest-kubernetes'
1378 <<: *functest-kubernetes-params
1380 - 'functest-kubernetes-{tag}-docker'
1383 name: functest-kubernetes-docker
1392 regex: ^functest-kubernetes-[a-z0-9.]+-docker$
1395 name: functest-kubernetes-trivy
1404 regex: (?!functest-kubernetes-pi)(?!functest-kubernetes-ng)^functest-kubernetes-[a-z-0-9.]+-trivy$
1407 name: functest-kubernetes-grype
1416 regex: (?!functest-kubernetes-pi)(?!functest-kubernetes-ng)^functest-kubernetes-[a-z-0-9.]+-grype$