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 && apt-get install \
741 software-properties-common gpg -y
742 add-apt-repository -y ppa:deadsnakes/ppa
743 apt-get update && apt-get install \
744 python3.9 python3.9-dev python3.9-distutils \
745 python3.8 python3.8-dev python3.8-distutils \
746 python3.7 python3.7-dev python3.6 python3.6-dev \
747 python python-dev python3-pip enchant -y
748 pip3 install tox tox-pip-version
753 name: 'functest-kubernetes-{tag}-tox'
755 - functest-kubernetes-scm:
758 - functest-kubernetes-patchset-created:
761 - functest-kubernetes-slave:
764 - functest-kubernetes-tox:
767 name: functest-kubernetes-tox
768 <<: *functest-kubernetes-params
770 - 'functest-kubernetes-{tag}-tox'
773 name: 'functest-kubernetes-{repo}-{container}-{tag}-gate'
775 - functest-kubernetes-slave:
778 - functest-kubernetes-scm:
781 - functest-kubernetes-build-containers:
782 <<: *functest-kubernetes-build-containers
784 buildargs: '{buildargs}'
787 name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate
788 <<: *functest-kubernetes-params
789 container: functest-kubernetes-core
793 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
796 name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate
797 <<: *functest-kubernetes-params
798 container: functest-kubernetes-healthcheck
800 path: docker/healthcheck
802 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
805 name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate
806 <<: *functest-kubernetes-params
807 container: functest-kubernetes-cnf
811 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
814 name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate
815 <<: *functest-kubernetes-params
816 container: functest-kubernetes-security
818 path: docker/security
820 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
823 name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate
824 <<: *functest-kubernetes-params
825 container: functest-kubernetes-smoke
829 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
832 name: functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate
833 <<: *functest-kubernetes-params
834 container: functest-kubernetes-benchmarking
836 path: docker/benchmarking
838 - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
841 name: functest-kubernetes-patchset-created
845 - patchset-created-event
846 - comment-added-contains-event:
847 comment-contains-value: 'recheck'
848 - comment-added-contains-event:
849 comment-contains-value: 'reverify'
851 - project-compare-type: 'ANT'
852 project-pattern: 'functest-kubernetes'
854 - branch-compare-type: 'ANT'
855 branch-pattern: '**/{branch}'
858 name: 'functest-kubernetes-{tag}-review'
859 project-type: multijob
861 - functest-kubernetes-patchset-created:
864 - functest-kubernetes-slave:
866 - functest-kubernetes-build_tag:
868 - functest-kubernetes-DEPLOY_SCENARIO:
869 DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
870 - functest-kubernetes-E2E_TEST_OPTS:
871 E2E_TEST_OPTS: container-runtime:containerd
872 # PyYAML and yamllint differ here
873 # see https://github.com/yaml/pyyaml/issues/234
874 # yamllint disable rule:indentation
878 - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
879 # yamllint enable rule:indentation
882 name: remove former images
884 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
885 <<: *functest-kubernetes-jobs
886 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
887 <<: *functest-kubernetes-jobs
888 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
889 <<: *functest-kubernetes-jobs
890 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
891 <<: *functest-kubernetes-jobs
892 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
893 <<: *functest-kubernetes-jobs
895 name: remove dependency
897 - name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
898 <<: *functest-kubernetes-jobs
900 name: pull dependency
902 - name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
903 <<: *functest-kubernetes-jobs
905 name: build opnfv/functest-kubernetes-core
907 - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate'
908 <<: *functest-kubernetes-jobs
910 name: build containers
912 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate'
913 <<: *functest-kubernetes-jobs
914 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate'
915 <<: *functest-kubernetes-jobs
916 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate'
917 <<: *functest-kubernetes-jobs
919 name: build opnfv/functest-kubernetes-smoke
921 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate'
922 <<: *functest-kubernetes-jobs
924 name: build opnfv/functest-kubernetes-benchmarking
926 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate'
927 <<: *functest-kubernetes-jobs
929 name: opnfv/functest-kubernetes-healthcheck:{tag}
931 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
932 <<: *functest-kubernetes-jobs
933 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
934 <<: *functest-kubernetes-jobs
936 name: opnfv/functest-kubernetes-smoke:{tag}
937 execution-type: SEQUENTIALLY
939 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
940 <<: *functest-kubernetes-jobs
941 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_io-run'
942 <<: *functest-kubernetes-jobs
943 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
944 <<: *functest-kubernetes-jobs
945 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance_serial-run'
946 <<: *functest-kubernetes-jobs
947 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery-run'
948 <<: *functest-kubernetes-jobs
949 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_api_machinery_serial-run'
950 <<: *functest-kubernetes-jobs
951 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps-run'
952 <<: *functest-kubernetes-jobs
953 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_apps_serial-run'
954 <<: *functest-kubernetes-jobs
955 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_auth-run'
956 <<: *functest-kubernetes-jobs
957 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cli-run'
958 <<: *functest-kubernetes-jobs
959 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cli_serial-run'
960 <<: *functest-kubernetes-jobs
961 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_cluster_lifecycle-run'
962 <<: *functest-kubernetes-jobs
963 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_instrumentation-run'
964 <<: *functest-kubernetes-jobs
965 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network-run'
966 <<: *functest-kubernetes-jobs
967 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_network_serial-run'
968 <<: *functest-kubernetes-jobs
969 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_node-run'
970 <<: *functest-kubernetes-jobs
971 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_scheduling_serial-run'
972 <<: *functest-kubernetes-jobs
973 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage-run'
974 <<: *functest-kubernetes-jobs
975 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-sig_storage_serial-run'
976 <<: *functest-kubernetes-jobs
978 name: opnfv/functest-kubernetes-security:{tag}
980 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
981 <<: *functest-kubernetes-jobs
982 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_master-run'
983 <<: *functest-kubernetes-jobs
984 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench_node-run'
985 <<: *functest-kubernetes-jobs
987 name: opnfv/functest-kubernetes-benchmarking:{tag}
989 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
990 <<: *functest-kubernetes-jobs
991 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-netperf-run'
992 <<: *functest-kubernetes-jobs
994 name: opnfv/functest-kubernetes-cnf:{tag}
996 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
997 <<: *functest-kubernetes-jobs
998 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-helm_vims-run'
999 <<: *functest-kubernetes-jobs
1000 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_testsuite-run'
1001 <<: *functest-kubernetes-jobs
1004 name: 'functest-kubernetes-review'
1005 <<: *functest-kubernetes-params
1007 - 'functest-kubernetes-{tag}-review'
1010 name: functest-kubernetes-review
1019 regex: ^functest-kubernetes-[a-z0-9.]+-review$
1022 name: functest-kubernetes-tox
1031 regex: ^functest-kubernetes-[a-z0-9.]+-tox$
1034 name: functest-kubernetes-push-containers
1038 if [ "{repo}" = "_" ]; then
1039 image={container}:{tag}
1040 elif [ "{port}" = "None" ]; then
1041 image={repo}/{container}:{tag}
1043 image={repo}:{port}/{container}:{tag}
1048 name: functest-kubernetes-commit
1051 cron: "*/30 * * * *"
1054 name: 'functest-kubernetes-{repo}-{container}-{tag}-build'
1056 - functest-kubernetes-slave:
1059 - functest-kubernetes-scm:
1062 - functest-kubernetes-build-containers:
1063 <<: *functest-kubernetes-build-containers
1065 buildargs: '{buildargs}'
1066 - functest-kubernetes-push-containers:
1067 <<: *functest-kubernetes-build-containers
1071 name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build
1072 <<: *functest-kubernetes-params
1073 container: functest-kubernetes-core
1077 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1080 name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build
1081 <<: *functest-kubernetes-params
1082 container: functest-kubernetes-healthcheck
1084 path: docker/healthcheck
1086 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1089 name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build
1090 <<: *functest-kubernetes-params
1091 container: functest-kubernetes-cnf
1095 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1098 name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build
1099 <<: *functest-kubernetes-params
1100 container: functest-kubernetes-security
1102 path: docker/security
1104 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1107 name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build
1108 <<: *functest-kubernetes-params
1109 container: functest-kubernetes-smoke
1113 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1116 name: functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build
1117 <<: *functest-kubernetes-params
1118 container: functest-kubernetes-benchmarking
1120 path: docker/benchmarking
1122 - 'functest-kubernetes-{repo}-{container}-{tag}-build'
1125 name: 'functest-kubernetes-{tag}-docker'
1126 project-type: multijob
1128 - functest-kubernetes-commit
1130 - functest-kubernetes-scm:
1133 - functest-kubernetes-slave:
1135 # PyYAML and yamllint differ here
1136 # see https://github.com/yaml/pyyaml/issues/234
1137 # yamllint disable rule:indentation
1141 - ^functest-kubernetes-(pi-)*{tag}-(daily|docker|review)$
1142 # yamllint enable rule:indentation
1145 name: remove dependency
1147 - name: 'functest-kubernetes-{repo}-{tag}-dep-rmi'
1148 <<: *functest-kubernetes-jobs
1150 name: pull dependency
1152 - name: 'functest-kubernetes-{repo}-{tag}-dep-pull'
1153 <<: *functest-kubernetes-jobs
1155 name: build opnfv/functest-kubernetes-core
1157 - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build'
1158 <<: *functest-kubernetes-jobs
1160 name: build containers
1162 - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build'
1163 <<: *functest-kubernetes-jobs
1164 - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build'
1165 <<: *functest-kubernetes-jobs
1166 - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build'
1167 <<: *functest-kubernetes-jobs
1169 name: build opnfv/functest-kubernetes-smoke
1171 - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build'
1172 <<: *functest-kubernetes-jobs
1174 name: build opnfv/functest-kubernetes-benchmarking
1176 - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build'
1177 <<: *functest-kubernetes-jobs
1180 name: functest-kubernetes-trivy
1183 apt-get update && apt-get install curl -y
1185 curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sh -s -- -b .
1186 if [ "{repo}" = "_" ]; then
1187 image={container}:{tag}
1188 elif [ "{port}" = "None" ]; then
1189 image={repo}/{container}:{tag}
1191 image={repo}:{port}/{container}:{tag}
1193 ./trivy --exit-code 1 $image
1196 name: 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1200 - functest-kubernetes-slave:
1203 - functest-kubernetes-trivy:
1204 <<: *functest-kubernetes-containers
1207 name: 'functest-kubernetes-opnfv-functest-kubernetes-core-trivy'
1208 <<: *functest-kubernetes-params
1209 container: 'functest-kubernetes-core'
1211 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1214 name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-trivy'
1215 <<: *functest-kubernetes-params
1216 container: 'functest-kubernetes-healthcheck'
1218 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1221 name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-trivy'
1222 <<: *functest-kubernetes-params
1223 container: 'functest-kubernetes-cnf'
1225 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1228 name: 'functest-kubernetes-opnfv-functest-kubernetes-security-trivy'
1229 <<: *functest-kubernetes-params
1230 container: 'functest-kubernetes-security'
1232 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1235 name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-trivy'
1236 <<: *functest-kubernetes-params
1237 container: 'functest-kubernetes-smoke'
1239 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1242 name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-trivy'
1243 <<: *functest-kubernetes-params
1244 container: 'functest-kubernetes-benchmarking'
1246 - 'functest-kubernetes-{repo}-{container}-{tag}-trivy'
1249 name: 'functest-kubernetes'
1250 <<: *functest-kubernetes-params
1252 - 'functest-kubernetes-{tag}-docker'
1255 name: functest-kubernetes-docker
1264 regex: ^functest-kubernetes-[a-z0-9.]+-docker$
1267 name: functest-kubernetes-trivy
1276 regex: (?!functest-kubernetes-pi)(?!functest-kubernetes-ng)^functest-kubernetes-[a-z-0-9.]+-trivy$