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'
39 - functest-kubernetes-jobs: &functest-kubernetes-jobs
40 name: 'functest-kubernetes-jobs'
41 current-parameters: true
44 name: functest-kubernetes-slave
51 name: functest-kubernetes-build_tag
57 name: functest-kubernetes-DEPLOY_SCENARIO
61 default: k8-nosdn-nofeature-noha
64 name: functest-kubernetes-E2E_TEST_OPTS
68 default: container-runtime:containerd
70 - functest-kubernetes-run-containers: &functest-kubernetes-run-containers
71 name: 'functest-kubernetes-run-containers'
72 <<: *functest-kubernetes-containers
74 privileged: '{privileged}'
80 name: functest-kubernetes-pull-containers
84 if [ "{repo}" = "_" ]; then
85 image={container}:{tag}
86 elif [ "{port}" = "None" ]; then
87 image={repo}/{container}:{tag}
89 image={repo}:{port}/{container}:{tag}
94 name: functest-kubernetes-run-containers
99 if [ "{volumes}" != "None" ]; then
100 for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); do volumes="-v $i $volumes"; done
103 if [ "{env}" != "None" ]; then
104 for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); do env="-e $i $env"; done
106 [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
107 if [ "{repo}" = "_" ]; then
108 image={container}:{tag}
109 elif [ "{port}" = "None" ]; then
110 image={repo}/{container}:{tag}
112 image={repo}:{port}/{container}:{tag}
115 --privileged={privileged} \
116 --network={network} \
119 -e S3_ENDPOINT_URL=https://storage.googleapis.com \
120 -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
121 -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
122 -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
123 -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
124 -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
125 -e NODE_NAME=$slave \
126 -e BUILD_TAG=$BUILD_TAG \
127 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
128 $image run_tests -t {test} -p -r
131 name: functest-kubernetes-remove-images
135 if [ "{repo}" = "_" ]; then
136 image={container}:{tag}
137 elif [ "{port}" = "None" ]; then
138 image={repo}/{container}:{tag}
140 image={repo}:{port}/{container}:{tag}
142 docker rmi $image || true
145 name: 'functest-kubernetes-{repo}-{container}-{tag}-pull'
147 - functest-kubernetes-slave:
150 - functest-kubernetes-pull-containers:
151 <<: *functest-kubernetes-containers
154 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-pull'
155 <<: *functest-kubernetes-params
156 container: 'functest-kubernetes-healthcheck'
158 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
161 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-pull'
162 <<: *functest-kubernetes-params
163 container: 'functest-kubernetes-smoke'
165 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
168 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-pull'
169 <<: *functest-kubernetes-params
170 container: 'functest-kubernetes-security'
172 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
175 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-pull'
176 <<: *functest-kubernetes-params
177 container: 'functest-kubernetes-benchmarking'
179 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
182 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-pull'
183 <<: *functest-kubernetes-params
184 container: 'functest-kubernetes-cnf'
186 - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
189 name: 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
191 - functest-kubernetes-slave:
194 - functest-kubernetes-remove-images:
195 <<: *functest-kubernetes-containers
198 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-rmi'
199 <<: *functest-kubernetes-params
200 container: 'functest-kubernetes-healthcheck'
202 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
205 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-rmi'
206 <<: *functest-kubernetes-params
207 container: 'functest-kubernetes-smoke'
209 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
212 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-rmi'
213 <<: *functest-kubernetes-params
214 container: 'functest-kubernetes-security'
216 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
219 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-rmi'
220 <<: *functest-kubernetes-params
221 container: 'functest-kubernetes-benchmarking'
223 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
226 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-rmi'
227 <<: *functest-kubernetes-params
228 container: 'functest-kubernetes-cnf'
230 - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
233 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-{test}-run'
235 - functest-kubernetes-slave:
237 - functest-kubernetes-build_tag:
239 - functest-kubernetes-DEPLOY_SCENARIO:
240 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
241 - functest-kubernetes-E2E_TEST_OPTS:
242 E2E_TEST_OPTS: container-runtime:containerd
244 - functest-kubernetes-run-containers:
245 <<: *functest-kubernetes-run-containers
248 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck'
249 <<: *functest-kubernetes-params
251 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
253 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
254 - E2E_TEST_OPTS=$E2E_TEST_OPTS
255 container: 'functest-kubernetes-healthcheck'
262 - 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-{test}-run'
265 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-{test}-run'
267 - functest-kubernetes-slave:
269 - functest-kubernetes-build_tag:
271 - functest-kubernetes-DEPLOY_SCENARIO:
272 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
273 - functest-kubernetes-E2E_TEST_OPTS:
274 E2E_TEST_OPTS: container-runtime:containerd
276 - functest-kubernetes-run-containers:
277 <<: *functest-kubernetes-run-containers
280 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke'
281 <<: *functest-kubernetes-params
283 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
285 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
286 - E2E_TEST_OPTS=$E2E_TEST_OPTS
287 container: 'functest-kubernetes-smoke'
292 - k8s_conformance_serial
294 - sig_api_machinery_serial
300 - sig_cluster_lifecycle
301 - sig_instrumentation
305 - sig_scheduling_serial
316 - 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-{test}-run'
319 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-{test}-run'
321 - functest-kubernetes-slave:
323 - functest-kubernetes-build_tag:
325 - functest-kubernetes-DEPLOY_SCENARIO:
326 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
327 - functest-kubernetes-E2E_TEST_OPTS:
328 E2E_TEST_OPTS: container-runtime:containerd
330 - functest-kubernetes-run-containers:
331 <<: *functest-kubernetes-run-containers
334 name: 'functest-kubernetes-opnfv-functest-kubernetes-security'
335 <<: *functest-kubernetes-params
337 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
339 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
340 - E2E_TEST_OPTS=$E2E_TEST_OPTS
341 container: 'functest-kubernetes-security'
349 - 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-{test}-run'
352 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-{test}-run'
354 - functest-kubernetes-slave:
356 - functest-kubernetes-build_tag:
358 - functest-kubernetes-DEPLOY_SCENARIO:
359 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
360 - functest-kubernetes-E2E_TEST_OPTS:
361 E2E_TEST_OPTS: container-runtime:containerd
363 - functest-kubernetes-run-containers:
364 <<: *functest-kubernetes-run-containers
367 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking'
368 <<: *functest-kubernetes-params
370 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
372 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
373 - E2E_TEST_OPTS=$E2E_TEST_OPTS
374 container: 'functest-kubernetes-benchmarking'
376 - xrally_kubernetes_full
381 - 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-{test}-run'
384 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-{test}-run'
386 - functest-kubernetes-slave:
388 - functest-kubernetes-build_tag:
390 - functest-kubernetes-DEPLOY_SCENARIO:
391 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
392 - functest-kubernetes-E2E_TEST_OPTS:
393 E2E_TEST_OPTS: container-runtime:containerd
395 - functest-kubernetes-run-containers:
396 <<: *functest-kubernetes-run-containers
399 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf'
400 <<: *functest-kubernetes-params
402 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
404 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
405 - E2E_TEST_OPTS=$E2E_TEST_OPTS
406 container: 'functest-kubernetes-cnf'
414 - 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-{test}-run'
417 name: functest-kubernetes-zip
422 if [ "{volumes}" != "None" ]; then
423 for i in $(echo {volumes} | tr -d '[]' |sed "s/, / /g" ); do volumes="-v $i $volumes"; done
426 if [ "{env}" != "None" ]; then
427 for i in $(eval echo {env} | tr -d '[]' |sed "s/, / /g" ); do env="-e $i $env"; done
429 [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/results || true
430 if [ "{repo}" = "_" ]; then
431 image={container}:{tag}
432 elif [ "{port}" = "None" ]; then
433 image={repo}/{container}:{tag}
435 image={repo}:{port}/{container}:{tag}
440 -e S3_ENDPOINT_URL=https://storage.googleapis.com \
441 -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes \
442 -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes \
443 -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
444 -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
445 -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
446 -e BUILD_TAG=$BUILD_TAG \
447 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
451 name: 'functest-kubernetes-{tag}-zip'
453 - functest-kubernetes-slave:
455 - functest-kubernetes-build_tag:
457 - functest-kubernetes-DEPLOY_SCENARIO:
458 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
459 - functest-kubernetes-E2E_TEST_OPTS:
460 E2E_TEST_OPTS: container-runtime:containerd
462 - functest-kubernetes-zip:
463 <<: *functest-kubernetes-containers
468 name: 'functest-kubernetes-{tag}-zip'
469 <<: *functest-kubernetes-params
471 - /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config
473 - DEPLOY_SCENARIO=$DEPLOY_SCENARIO
474 - E2E_TEST_OPTS=$E2E_TEST_OPTS
475 container: 'functest-kubernetes-healthcheck'
477 - 'functest-kubernetes-{tag}-zip'
480 name: 'functest-kubernetes-{tag}-daily'
481 project-type: multijob
485 - functest-kubernetes-slave:
487 - functest-kubernetes-build_tag:
489 - functest-kubernetes-DEPLOY_SCENARIO:
490 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
491 - functest-kubernetes-E2E_TEST_OPTS:
492 E2E_TEST_OPTS: container-runtime:containerd
493 # PyYAML and yamllint differ here
494 # see https://github.com/yaml/pyyaml/issues/234
495 # yamllint disable rule:indentation
499 - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
500 # yamllint enable rule:indentation
503 name: remove former images
505 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
506 <<: *functest-kubernetes-jobs
507 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
508 <<: *functest-kubernetes-jobs
509 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
510 <<: *functest-kubernetes-jobs
511 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
512 <<: *functest-kubernetes-jobs
513 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
514 <<: *functest-kubernetes-jobs
516 name: pull containers
518 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-pull'
519 <<: *functest-kubernetes-jobs
520 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-pull'
521 <<: *functest-kubernetes-jobs
522 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-pull'
523 <<: *functest-kubernetes-jobs
524 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-pull'
525 <<: *functest-kubernetes-jobs
526 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-pull'
527 <<: *functest-kubernetes-jobs
529 name: opnfv/functest-kubernetes-healthcheck:{tag}
531 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
532 <<: *functest-kubernetes-jobs
533 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
534 <<: *functest-kubernetes-jobs
536 name: opnfv/functest-kubernetes-smoke:{tag}
537 execution-type: SEQUENTIALLY
539 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
540 <<: *functest-kubernetes-jobs
541 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_io-run'
542 <<: *functest-kubernetes-jobs
543 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
544 <<: *functest-kubernetes-jobs
545 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance_serial-run'
546 <<: *functest-kubernetes-jobs
547 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery-run'
548 <<: *functest-kubernetes-jobs
549 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery_serial-run'
550 <<: *functest-kubernetes-jobs
551 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps-run'
552 <<: *functest-kubernetes-jobs
553 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps_serial-run'
554 <<: *functest-kubernetes-jobs
555 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_auth-run'
556 <<: *functest-kubernetes-jobs
557 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cli-run'
558 <<: *functest-kubernetes-jobs
559 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cli_serial-run'
560 <<: *functest-kubernetes-jobs
561 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cluster_lifecycle-run'
562 <<: *functest-kubernetes-jobs
563 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_instrumentation-run'
564 <<: *functest-kubernetes-jobs
565 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network-run'
566 <<: *functest-kubernetes-jobs
567 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network_serial-run'
568 <<: *functest-kubernetes-jobs
569 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_node-run'
570 <<: *functest-kubernetes-jobs
571 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_scheduling_serial-run'
572 <<: *functest-kubernetes-jobs
573 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage-run'
574 <<: *functest-kubernetes-jobs
575 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage_serial-run'
576 <<: *functest-kubernetes-jobs
578 name: opnfv/functest-kubernetes-security:{tag}
580 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
581 <<: *functest-kubernetes-jobs
582 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_master-run'
583 <<: *functest-kubernetes-jobs
584 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_node-run'
585 <<: *functest-kubernetes-jobs
587 name: opnfv/functest-kubernetes-benchmarking:{tag}
589 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
590 <<: *functest-kubernetes-jobs
591 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-netperf-run'
592 <<: *functest-kubernetes-jobs
594 name: opnfv/functest-kubernetes-cnf:{tag}
596 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
597 <<: *functest-kubernetes-jobs
598 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-helm_vims-run'
599 <<: *functest-kubernetes-jobs
600 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_testsuite-run'
601 <<: *functest-kubernetes-jobs
603 name: dump all campaign data
605 - name: 'functest-kubernetes-{tag}-zip'
606 <<: *functest-kubernetes-jobs
609 name: 'functest-kubernetes-daily'
610 <<: *functest-kubernetes-params
612 - 'functest-kubernetes-{tag}-daily'
615 name: functest-kubernetes
624 regex: ^functest-kubernetes-[a-z0-9.]+-daily$
626 - functest-kubernetes-build-containers: &functest-kubernetes-build-containers
627 name: 'functest-kubernetes-build-containers'
628 <<: *functest-kubernetes-containers
631 buildargs: '{buildargs}'
635 name: functest-kubernetes-build-containers
639 if [ "{repo}" = "_" ]; then
640 image={container}:{tag}
641 elif [ "{port}" = "None" ]; then
642 image={repo}/{container}:{tag}
644 image={repo}:{port}/{container}:{tag}
647 if [ "{buildargs}" != "None" ]; then
648 build_args="{buildargs}"
650 if [ "{ref_arg}" != "None" ]; then
651 build_args="$build_args --build-arg {ref_arg}={ref}"
654 if [ "{from}" != "None" ]; then
655 sed -i {from} Dockerfile
657 docker build $build_args \
658 --pull=false --no-cache --force-rm=true \
662 name: functest-kubernetes-scm
665 url: 'https://gerrit.opnfv.org/gerrit/functest-kubernetes'
666 refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/*'
670 - functest-kubernetes-dep: &functest-kubernetes-dep
671 name: 'functest-kubernetes-containers'
675 dependency: '{dependency}'
678 name: functest-kubernetes-pull-dep-images
682 if [ "_" = "_" ]; then
683 image=alpine:{dependency}
684 elif [ "None" = "None" ]; then
685 image=_/alpine:{dependency}
687 image=_:/alpine:{dependency}
689 docker pull $image || true
692 name: functest-kubernetes-remove-dep-images
696 if [ "_" = "_" ]; then
697 image=alpine:{dependency}
698 elif [ "" = "None" ]; then
699 image=_/alpine:{dependency}
701 image=_:/alpine:{dependency}
703 docker rmi $image || true
706 name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
708 - functest-kubernetes-slave:
711 - functest-kubernetes-pull-dep-images:
712 <<: *functest-kubernetes-dep
715 name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
716 <<: *functest-kubernetes-params
718 - 'functest-kubernetes-{repo}-{tag}-dep-pull'
721 name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
723 - functest-kubernetes-slave:
726 - functest-kubernetes-remove-dep-images:
727 <<: *functest-kubernetes-dep
730 name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
731 <<: *functest-kubernetes-params
733 - 'functest-kubernetes-{repo}-{tag}-dep-rmi'
736 name: functest-kubernetes-tox
740 apt-get update && DEBIAN_FRONTEND=noninteractive \
741 apt-get install software-properties-common gpg -y
742 add-apt-repository -y ppa:deadsnakes/ppa
743 apt-get update && DEBIAN_FRONTEND=noninteractive \
745 python3.9 python3.9-dev python3.9-distutils \
746 python3.8 python3.8-dev python3.8-distutils \
747 python3.7 python3.7-dev python3.6 python3.6-dev \
748 python python-dev python3-pip enchant -y
749 pip3 install tox tox-pip-version
754 name: 'functest-kubernetes-{tag}-tox'
756 - functest-kubernetes-scm:
759 - functest-kubernetes-patchset-created:
762 - functest-kubernetes-slave:
765 - functest-kubernetes-tox:
768 name: functest-kubernetes-tox
769 <<: *functest-kubernetes-params
771 - 'functest-kubernetes-{tag}-tox'
774 name: 'functest-kubernetes-{repo}-{container}-{tag}-gate'
776 - functest-kubernetes-slave:
779 - functest-kubernetes-scm:
782 - functest-kubernetes-build-containers:
783 <<: *functest-kubernetes-build-containers
785 buildargs: '{buildargs}'
788 name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate
789 <<: *functest-kubernetes-params
790 container: functest-kubernetes-core
794 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
797 name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate
798 <<: *functest-kubernetes-params
799 container: functest-kubernetes-healthcheck
801 path: docker/healthcheck
803 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
806 name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate
807 <<: *functest-kubernetes-params
808 container: functest-kubernetes-cnf
812 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
815 name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate
816 <<: *functest-kubernetes-params
817 container: functest-kubernetes-security
819 path: docker/security
821 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
824 name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate
825 <<: *functest-kubernetes-params
826 container: functest-kubernetes-smoke
830 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
833 name: functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate
834 <<: *functest-kubernetes-params
835 container: functest-kubernetes-benchmarking
837 path: docker/benchmarking
839 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
842 name: functest-kubernetes-patchset-created
846 - patchset-created-event
847 - comment-added-contains-event:
848 comment-contains-value: 'recheck'
849 - comment-added-contains-event:
850 comment-contains-value: 'reverify'
852 - project-compare-type: 'ANT'
853 project-pattern: 'functest-kubernetes'
855 - branch-compare-type: 'ANT'
856 branch-pattern: '**/{branch}'
859 name: 'functest-kubernetes-{tag}-review'
860 project-type: multijob
862 - functest-kubernetes-patchset-created:
865 - functest-kubernetes-slave:
867 - functest-kubernetes-build_tag:
869 - functest-kubernetes-DEPLOY_SCENARIO:
870 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
871 - functest-kubernetes-E2E_TEST_OPTS:
872 E2E_TEST_OPTS: container-runtime:containerd
873 # PyYAML and yamllint differ here
874 # see https://github.com/yaml/pyyaml/issues/234
875 # yamllint disable rule:indentation
879 - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
880 # yamllint enable rule:indentation
883 name: remove former images
885 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
886 <<: *functest-kubernetes-jobs
887 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
888 <<: *functest-kubernetes-jobs
889 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
890 <<: *functest-kubernetes-jobs
891 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
892 <<: *functest-kubernetes-jobs
893 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
894 <<: *functest-kubernetes-jobs
896 name: remove dependency
898 - name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
899 <<: *functest-kubernetes-jobs
901 name: pull dependency
903 - name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
904 <<: *functest-kubernetes-jobs
906 name: build opnfv/functest-kubernetes-core
908 - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate'
909 <<: *functest-kubernetes-jobs
911 name: build containers
913 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate'
914 <<: *functest-kubernetes-jobs
915 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate'
916 <<: *functest-kubernetes-jobs
917 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate'
918 <<: *functest-kubernetes-jobs
920 name: build opnfv/functest-kubernetes-smoke
922 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate'
923 <<: *functest-kubernetes-jobs
925 name: build opnfv/functest-kubernetes-benchmarking
927 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate'
928 <<: *functest-kubernetes-jobs
930 name: opnfv/functest-kubernetes-healthcheck:{tag}
932 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
933 <<: *functest-kubernetes-jobs
934 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
935 <<: *functest-kubernetes-jobs
937 name: opnfv/functest-kubernetes-smoke:{tag}
938 execution-type: SEQUENTIALLY
940 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
941 <<: *functest-kubernetes-jobs
942 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_io-run'
943 <<: *functest-kubernetes-jobs
944 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
945 <<: *functest-kubernetes-jobs
946 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance_serial-run'
947 <<: *functest-kubernetes-jobs
948 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery-run'
949 <<: *functest-kubernetes-jobs
950 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery_serial-run'
951 <<: *functest-kubernetes-jobs
952 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps-run'
953 <<: *functest-kubernetes-jobs
954 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps_serial-run'
955 <<: *functest-kubernetes-jobs
956 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_auth-run'
957 <<: *functest-kubernetes-jobs
958 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cli-run'
959 <<: *functest-kubernetes-jobs
960 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cli_serial-run'
961 <<: *functest-kubernetes-jobs
962 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cluster_lifecycle-run'
963 <<: *functest-kubernetes-jobs
964 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_instrumentation-run'
965 <<: *functest-kubernetes-jobs
966 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network-run'
967 <<: *functest-kubernetes-jobs
968 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network_serial-run'
969 <<: *functest-kubernetes-jobs
970 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_node-run'
971 <<: *functest-kubernetes-jobs
972 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_scheduling_serial-run'
973 <<: *functest-kubernetes-jobs
974 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage-run'
975 <<: *functest-kubernetes-jobs
976 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage_serial-run'
977 <<: *functest-kubernetes-jobs
979 name: opnfv/functest-kubernetes-security:{tag}
981 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
982 <<: *functest-kubernetes-jobs
983 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_master-run'
984 <<: *functest-kubernetes-jobs
985 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_node-run'
986 <<: *functest-kubernetes-jobs
988 name: opnfv/functest-kubernetes-benchmarking:{tag}
990 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
991 <<: *functest-kubernetes-jobs
992 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-netperf-run'
993 <<: *functest-kubernetes-jobs
995 name: opnfv/functest-kubernetes-cnf:{tag}
997 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
998 <<: *functest-kubernetes-jobs
999 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-helm_vims-run'
1000 <<: *functest-kubernetes-jobs
1001 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_testsuite-run'
1002 <<: *functest-kubernetes-jobs
1005 name: 'functest-kubernetes-review'
1006 <<: *functest-kubernetes-params
1008 - 'functest-kubernetes-{tag}-review'
1011 name: functest-kubernetes-review
1020 regex: ^functest-kubernetes-[a-z0-9.]+-review$
1023 name: functest-kubernetes-tox
1032 regex: ^functest-kubernetes-[a-z0-9.]+-tox$
1035 name: functest-kubernetes-push-containers
1039 if [ "{repo}" = "_" ]; then
1040 image={container}:{tag}
1041 elif [ "{port}" = "None" ]; then
1042 image={repo}/{container}:{tag}
1044 image={repo}:{port}/{container}:{tag}
1049 name: functest-kubernetes-commit
1052 cron: "*/30 * * * *"
1055 name: 'functest-kubernetes-{repo}-{container}-{tag}-build'
1057 - functest-kubernetes-slave:
1060 - functest-kubernetes-scm:
1063 - functest-kubernetes-build-containers:
1064 <<: *functest-kubernetes-build-containers
1066 buildargs: '{buildargs}'
1067 - functest-kubernetes-push-containers:
1068 <<: *functest-kubernetes-build-containers
1072 name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build
1073 <<: *functest-kubernetes-params
1074 container: functest-kubernetes-core
1078 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1081 name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build
1082 <<: *functest-kubernetes-params
1083 container: functest-kubernetes-healthcheck
1085 path: docker/healthcheck
1087 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1090 name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build
1091 <<: *functest-kubernetes-params
1092 container: functest-kubernetes-cnf
1096 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1099 name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build
1100 <<: *functest-kubernetes-params
1101 container: functest-kubernetes-security
1103 path: docker/security
1105 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1108 name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build
1109 <<: *functest-kubernetes-params
1110 container: functest-kubernetes-smoke
1114 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1117 name: functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build
1118 <<: *functest-kubernetes-params
1119 container: functest-kubernetes-benchmarking
1121 path: docker/benchmarking
1123 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1126 name: 'functest-kubernetes-{tag}-docker'
1127 project-type: multijob
1129 - functest-kubernetes-commit
1131 - functest-kubernetes-scm:
1134 - functest-kubernetes-slave:
1136 # PyYAML and yamllint differ here
1137 # see https://github.com/yaml/pyyaml/issues/234
1138 # yamllint disable rule:indentation
1142 - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
1143 # yamllint enable rule:indentation
1146 name: remove dependency
1148 - name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
1149 <<: *functest-kubernetes-jobs
1151 name: pull dependency
1153 - name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
1154 <<: *functest-kubernetes-jobs
1156 name: build opnfv/functest-kubernetes-core
1158 - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build'
1159 <<: *functest-kubernetes-jobs
1161 name: build containers
1163 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build'
1164 <<: *functest-kubernetes-jobs
1165 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build'
1166 <<: *functest-kubernetes-jobs
1167 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build'
1168 <<: *functest-kubernetes-jobs
1170 name: build opnfv/functest-kubernetes-smoke
1172 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build'
1173 <<: *functest-kubernetes-jobs
1175 name: build opnfv/functest-kubernetes-benchmarking
1177 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build'
1178 <<: *functest-kubernetes-jobs
1181 name: functest-kubernetes-trivy
1184 apt-get update && DEBIAN_FRONTEND=noninteractive \
1185 apt-get install curl -y
1187 curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sh -s -- -b .
1188 if [ "{repo}" = "_" ]; then
1189 image={container}:{tag}
1190 elif [ "{port}" = "None" ]; then
1191 image={repo}/{container}:{tag}
1193 image={repo}:{port}/{container}:{tag}
1195 ./trivy --exit-code 1 $image
1198 name: 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1202 - functest-kubernetes-slave:
1205 - functest-kubernetes-trivy:
1206 <<: *functest-kubernetes-containers
1209 name: 'functest-kubernetes-opnfv-functest-kubernetes-core-trivy'
1210 <<: *functest-kubernetes-params
1211 container: 'functest-kubernetes-core'
1213 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1216 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-trivy'
1217 <<: *functest-kubernetes-params
1218 container: 'functest-kubernetes-healthcheck'
1220 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1223 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-trivy'
1224 <<: *functest-kubernetes-params
1225 container: 'functest-kubernetes-cnf'
1227 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1230 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-trivy'
1231 <<: *functest-kubernetes-params
1232 container: 'functest-kubernetes-security'
1234 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1237 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-trivy'
1238 <<: *functest-kubernetes-params
1239 container: 'functest-kubernetes-smoke'
1241 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1244 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-trivy'
1245 <<: *functest-kubernetes-params
1246 container: 'functest-kubernetes-benchmarking'
1248 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1251 name: 'functest-kubernetes'
1252 <<: *functest-kubernetes-params
1254 - 'functest-kubernetes-{tag}-docker'
1257 name: functest-kubernetes-docker
1266 regex: ^functest-kubernetes-[a-z0-9.]+-docker$
1269 name: functest-kubernetes-trivy
1278 regex: (?!functest-kubernetes-pi)(?!functest-kubernetes-ng)^functest-kubernetes-[a-z-0-9.]+-trivy$