2 - functest-jobs: &functest-jobs
4 current-parameters: true
6 - functest-params: &functest-params
7 name: 'functest-params'
14 dashboard_url: http://172.30.13.94
18 dashboard_url: http://172.30.13.89
22 dashboard_url: http://172.30.13.89
26 dashboard_url: http://172.30.13.91
42 - functest-containers: &functest-containers
43 name: 'functest-containers'
46 container: '{container}'
49 - functest-run-containers: &functest-run-containers
50 name: 'functest-build-containers'
51 <<: *functest-containers
53 dashboard_url: '{dashboard_url}'
55 - functest-build-containers: &functest-build-containers
56 name: 'functest-build-containers'
57 <<: *functest-containers
62 name: functest-pull-containers
66 if [ "{repo}" = "_" ]; then
67 image={container}:{tag}
68 elif [ "{port}" = "None" ]; then
69 image={repo}/{container}:{tag}
71 image={repo}:{port}/{container}:{tag}
73 sudo docker pull $image
76 name: functest-build-containers
80 if [ "{repo}" = "_" ]; then
81 image={container}:{tag}
82 elif [ "{port}" = "None" ]; then
83 image={repo}/{container}:{tag}
85 image={repo}:{port}/{container}:{tag}
87 if [ "{ref_arg}" = "None" ]; then
90 build_arg="--build-arg {ref_arg}={ref}"
93 sudo docker build $build_arg \
94 --pull=false --no-cache --force-rm=true \
98 name: functest-run-containers
102 [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/* || true
103 if [ "{repo}" = "_" ]; then
104 image={container}:{tag}
105 elif [ "{port}" = "None" ]; then
106 image={repo}/{container}:{tag}
108 image={repo}:{port}/{container}:{tag}
110 if [ "{tag}" = "latest" ]; then
112 elif [ "{tag}" = "jerma" ]; then
114 elif [ "{tag}" = "iruya" ]; then
119 sudo docker run --rm \
120 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
122 -e EXTERNAL_NETWORK=public \
123 -e DASHBOARD_URL={dashboard_url} \
124 -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
125 -v /home/opnfv/functest/images:/home/opnfv/functest/images \
126 -v /home/opnfv/functest/tempest_blacklist.yaml:/usr/lib/python$py/\
127 site-packages/functest/opnfv_tests/openstack/tempest/custom_tests/\
129 -v /home/opnfv/functest/blacklist.yaml:/usr/lib/python$py/\
130 site-packages/functest/opnfv_tests/openstack/rally/blacklist.yaml \
131 $image run_tests -t {test}
133 gsutil -m cp -r $WORKSPACE/ \
134 gs://artifacts.opnfv.org/functest/$JOB_NAME-$BUILD_ID > /dev/null 2>&1
135 find $WORKSPACE -type f \
137 "http://artifacts.opnfv.org/functest/$JOB_NAME-$BUILD_ID/%P\n"
141 name: functest-remove-images
145 if [ "{repo}" = "_" ]; then
146 image={container}:{tag}
147 elif [ "{port}" = "None" ]; then
148 image={repo}/{container}:{tag}
150 image={repo}:{port}/{container}:{tag}
152 sudo docker rmi $image || true
158 url: https://gerrit.opnfv.org/gerrit/functest
159 refspec: '+refs/changes/*:refs/changes/*'
164 name: 'functest-{repo}-{container}-{tag}-pull'
169 - functest-pull-containers:
170 <<: *functest-containers
173 name: 'functest-opnfv-functest-healthcheck-pull'
175 container: 'functest-healthcheck'
177 - 'functest-{repo}-{container}-{tag}-pull'
180 name: 'functest-opnfv-functest-smoke-pull'
182 container: 'functest-smoke'
184 - 'functest-{repo}-{container}-{tag}-pull'
187 name: 'functest-opnfv-functest-benchmarking-pull'
189 container: 'functest-benchmarking'
191 - 'functest-{repo}-{container}-{tag}-pull'
194 name: 'functest-opnfv-functest-vnf-pull'
196 container: 'functest-vnf'
198 - 'functest-{repo}-{container}-{tag}-pull'
201 name: 'functest-{repo}-{container}-{tag}-rmi'
206 - functest-remove-images:
207 <<: *functest-containers
210 name: 'functest-opnfv-functest-healthcheck-rmi'
212 container: 'functest-healthcheck'
214 - 'functest-{repo}-{container}-{tag}-rmi'
217 name: 'functest-opnfv-functest-smoke-rmi'
219 container: 'functest-smoke'
221 - 'functest-{repo}-{container}-{tag}-rmi'
224 name: 'functest-opnfv-functest-benchmarking-rmi'
226 container: 'functest-benchmarking'
228 - 'functest-{repo}-{container}-{tag}-rmi'
231 name: 'functest-opnfv-functest-vnf-rmi'
233 container: 'functest-vnf'
235 - 'functest-{repo}-{container}-{tag}-rmi'
238 name: 'functest-{repo}-{container}-{tag}-{test}-run'
243 - functest-run-containers:
244 <<: *functest-run-containers
247 name: 'functest-opnfv-functest-healthcheck'
249 container: 'functest-healthcheck'
266 test: tempest_horizon
268 - 'functest-{repo}-{container}-{tag}-{test}-run'
271 name: 'functest-opnfv-functest-smoke'
273 container: 'functest-smoke'
275 - neutron-tempest-plugin-api
294 test: refstack_defcore
296 test: refstack_defcore
298 test: refstack_defcore
302 test: refstack_compute
304 test: refstack_object
306 test: refstack_platform
312 test: tempest_keystone
316 - 'functest-{repo}-{container}-{tag}-{test}-run'
319 name: 'functest-opnfv-functest-benchmarking'
321 container: 'functest-benchmarking'
328 - 'functest-{repo}-{container}-{tag}-{test}-run'
331 name: 'functest-opnfv-functest-vnf'
333 container: 'functest-vnf'
341 - 'functest-{repo}-{container}-{tag}-{test}-run'
344 name: 'functest-{tag}-daily'
345 project-type: multijob
353 use-build-blocker: true
354 blocking-level: 'NODE'
356 - '^functest-{tag}-(daily|check|gate)$'
359 name: remove former images
361 - name: 'functest-opnfv-functest-healthcheck-{tag}-rmi'
363 - name: 'functest-opnfv-functest-smoke-{tag}-rmi'
365 - name: 'functest-opnfv-functest-benchmarking-{tag}-rmi'
367 - name: 'functest-opnfv-functest-vnf-{tag}-rmi'
370 name: pull containers
372 - name: 'functest-opnfv-functest-healthcheck-{tag}-pull'
374 - name: 'functest-opnfv-functest-smoke-{tag}-pull'
376 - name: 'functest-opnfv-functest-benchmarking-{tag}-pull'
378 - name: 'functest-opnfv-functest-vnf-{tag}-pull'
381 name: opnfv/functest-healthcheck:{tag}
383 - name: 'functest-opnfv-functest-healthcheck-{tag}-connection_check-run'
385 - name: 'functest-opnfv-functest-healthcheck-{tag}-tenantnetwork1-run'
387 - name: 'functest-opnfv-functest-healthcheck-{tag}-tenantnetwork2-run'
389 - name: 'functest-opnfv-functest-healthcheck-{tag}-vmready1-run'
391 - name: 'functest-opnfv-functest-healthcheck-{tag}-vmready2-run'
393 - name: 'functest-opnfv-functest-healthcheck-{tag}-singlevm1-run'
395 - name: 'functest-opnfv-functest-healthcheck-{tag}-singlevm2-run'
397 - name: 'functest-opnfv-functest-healthcheck-{tag}-vping_ssh-run'
399 - name: 'functest-opnfv-functest-healthcheck-{tag}-vping_userdata-run'
401 - name: 'functest-opnfv-functest-healthcheck-{tag}-cinder_test-run'
403 - name: 'functest-opnfv-functest-healthcheck-{tag}-odl-run'
405 - name: 'functest-opnfv-functest-healthcheck-{tag}-tempest_smoke-run'
407 - name: 'functest-opnfv-functest-healthcheck-{tag}-tempest_horizon-run'
410 name: opnfv/functest-smoke:{tag}
412 - name: 'functest-opnfv-functest-smoke-{tag}-neutron-tempest-plugin-api-run'
414 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_keystone-run'
416 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_cinder-run'
418 - name: 'functest-opnfv-functest-smoke-{tag}-rally_sanity-run'
420 - name: 'functest-opnfv-functest-smoke-{tag}-refstack_defcore-run'
422 - name: 'functest-opnfv-functest-smoke-{tag}-refstack_compute-run'
424 - name: 'functest-opnfv-functest-smoke-{tag}-refstack_object-run'
426 - name: 'functest-opnfv-functest-smoke-{tag}-refstack_platform-run'
428 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_full-run'
430 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_scenario-run'
432 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_slow-run'
434 - name: 'functest-opnfv-functest-smoke-{tag}-patrole-run'
436 - name: 'functest-opnfv-functest-smoke-{tag}-neutron_trunk-run'
438 - name: 'functest-opnfv-functest-smoke-{tag}-networking-bgpvpn-run'
440 - name: 'functest-opnfv-functest-smoke-{tag}-networking-sfc-run'
442 - name: 'functest-opnfv-functest-smoke-{tag}-barbican-run'
444 - name: 'functest-opnfv-functest-smoke-{tag}-octavia-run'
447 name: opnfv/functest-benchmarking:{tag}
449 - name: 'functest-opnfv-functest-benchmarking-{tag}-rally_full-run'
451 - name: 'functest-opnfv-functest-benchmarking-{tag}-rally_jobs-run'
453 - name: 'functest-opnfv-functest-benchmarking-{tag}-vmtp-run'
455 - name: 'functest-opnfv-functest-benchmarking-{tag}-shaker-run'
458 name: opnfv/functest-vnf:{tag}
459 execution-type: SEQUENTIALLY
461 - name: 'functest-opnfv-functest-vnf-{tag}-cloudify-run'
463 - name: 'functest-opnfv-functest-vnf-{tag}-cloudify_ims-run'
465 - name: 'functest-opnfv-functest-vnf-{tag}-heat_ims-run'
467 - name: 'functest-opnfv-functest-vnf-{tag}-vyos_vrouter-run'
469 - name: 'functest-opnfv-functest-vnf-{tag}-juju_epc-run'
473 name: 'functest-{repo}-{container}-{tag}-gate'
481 - functest-build-containers:
482 <<: *functest-build-containers
486 name: 'functest-{repo}-{container}-{tag}-check'
496 - functest-build-containers:
497 <<: *functest-build-containers
501 name: 'functest-_-alpine-3.10-rmi'
508 - 'functest-{repo}-{container}-{tag}-rmi'
511 name: 'functest-_-alpine-3.10-pull'
518 - 'functest-{repo}-{container}-{tag}-pull'
521 name: functest-opnfv-functest-core-{tag}-build
523 container: functest-core
527 - 'functest-{repo}-{container}-{tag}-gate'
528 - 'functest-{repo}-{container}-{tag}-check'
531 name: functest-opnfv-functest-tempest-{tag}-build
533 container: functest-tempest
537 - 'functest-{repo}-{container}-{tag}-gate'
538 - 'functest-{repo}-{container}-{tag}-check'
544 name: functest-opnfv-functest-healthcheck-{tag}-build
546 container: functest-healthcheck
548 path: docker/healthcheck
550 - 'functest-{repo}-{container}-{tag}-gate'
551 - 'functest-{repo}-{container}-{tag}-check'
554 name: functest-opnfv-functest-smoke-{tag}-build
556 container: functest-smoke
560 - 'functest-{repo}-{container}-{tag}-gate'
561 - 'functest-{repo}-{container}-{tag}-check'
564 name: functest-opnfv-functest-benchmarking-{tag}-build
566 container: functest-benchmarking
568 path: docker/benchmarking
570 - 'functest-{repo}-{container}-{tag}-gate'
571 - 'functest-{repo}-{container}-{tag}-check'
574 name: functest-opnfv-functest-vnf-{tag}-build
576 container: functest-vnf
580 - 'functest-{repo}-{container}-{tag}-gate'
581 - 'functest-{repo}-{container}-{tag}-check'
584 name: 'functest-{tag}-check'
585 project-type: multijob
593 use-build-blocker: true
594 blocking-level: 'NODE'
596 - '^functest-{tag}-(daily|check|gate)$'
599 name: remove former images
601 - name: 'functest-opnfv-functest-healthcheck-{tag}-rmi'
603 - name: 'functest-opnfv-functest-smoke-{tag}-rmi'
605 - name: 'functest-opnfv-functest-benchmarking-{tag}-rmi'
607 - name: 'functest-opnfv-functest-vnf-{tag}-rmi'
610 name: remove dependencies
612 - name: 'functest-_-alpine-3.10-rmi'
615 name: pull dependencies
617 - name: 'functest-_-alpine-3.10-pull'
620 name: build opnfv/functest-core
622 - name: 'functest-opnfv-functest-core-{tag}-check'
625 name: build opnfv/functest-tempest
627 - name: 'functest-opnfv-functest-tempest-{tag}-check'
630 name: build containers
632 - name: 'functest-opnfv-functest-healthcheck-{tag}-check'
634 - name: 'functest-opnfv-functest-smoke-{tag}-check'
636 - name: 'functest-opnfv-functest-benchmarking-{tag}-check'
638 - name: 'functest-opnfv-functest-vnf-{tag}-check'
641 name: opnfv/functest-healthcheck:{tag}
643 - name: 'functest-opnfv-functest-healthcheck-{tag}-connection_check-run'
645 - name: 'functest-opnfv-functest-healthcheck-{tag}-tenantnetwork1-run'
647 - name: 'functest-opnfv-functest-healthcheck-{tag}-tenantnetwork2-run'
649 - name: 'functest-opnfv-functest-healthcheck-{tag}-vmready1-run'
651 - name: 'functest-opnfv-functest-healthcheck-{tag}-vmready2-run'
653 - name: 'functest-opnfv-functest-healthcheck-{tag}-singlevm1-run'
655 - name: 'functest-opnfv-functest-healthcheck-{tag}-singlevm2-run'
657 - name: 'functest-opnfv-functest-healthcheck-{tag}-vping_ssh-run'
659 - name: 'functest-opnfv-functest-healthcheck-{tag}-vping_userdata-run'
661 - name: 'functest-opnfv-functest-healthcheck-{tag}-cinder_test-run'
663 - name: 'functest-opnfv-functest-healthcheck-{tag}-odl-run'
665 - name: 'functest-opnfv-functest-healthcheck-{tag}-tempest_smoke-run'
667 - name: 'functest-opnfv-functest-healthcheck-{tag}-tempest_horizon-run'
670 name: opnfv/functest-smoke:{tag}
672 - name: 'functest-opnfv-functest-smoke-{tag}-neutron-tempest-plugin-api-run'
674 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_keystone-run'
676 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_cinder-run'
678 - name: 'functest-opnfv-functest-smoke-{tag}-rally_sanity-run'
680 - name: 'functest-opnfv-functest-smoke-{tag}-refstack_defcore-run'
682 - name: 'functest-opnfv-functest-smoke-{tag}-refstack_compute-run'
684 - name: 'functest-opnfv-functest-smoke-{tag}-refstack_object-run'
686 - name: 'functest-opnfv-functest-smoke-{tag}-refstack_platform-run'
688 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_full-run'
690 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_scenario-run'
692 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_slow-run'
694 - name: 'functest-opnfv-functest-smoke-{tag}-patrole-run'
696 - name: 'functest-opnfv-functest-smoke-{tag}-neutron_trunk-run'
698 - name: 'functest-opnfv-functest-smoke-{tag}-networking-bgpvpn-run'
700 - name: 'functest-opnfv-functest-smoke-{tag}-networking-sfc-run'
702 - name: 'functest-opnfv-functest-smoke-{tag}-barbican-run'
704 - name: 'functest-opnfv-functest-smoke-{tag}-octavia-run'
707 name: opnfv/functest-benchmarking:{tag}
709 - name: 'functest-opnfv-functest-benchmarking-{tag}-rally_full-run'
711 - name: 'functest-opnfv-functest-benchmarking-{tag}-rally_jobs-run'
713 - name: 'functest-opnfv-functest-benchmarking-{tag}-vmtp-run'
715 - name: 'functest-opnfv-functest-benchmarking-{tag}-shaker-run'
718 name: opnfv/functest-vnf:{tag}
719 execution-type: SEQUENTIALLY
721 - name: 'functest-opnfv-functest-vnf-{tag}-cloudify-run'
723 - name: 'functest-opnfv-functest-vnf-{tag}-cloudify_ims-run'
725 - name: 'functest-opnfv-functest-vnf-{tag}-heat_ims-run'
727 - name: 'functest-opnfv-functest-vnf-{tag}-vyos_vrouter-run'
729 - name: 'functest-opnfv-functest-vnf-{tag}-juju_epc-run'
733 name: functest-patchset-created
736 server-name: 'gerrit.opnfv.org'
738 - patchset-created-event
739 - comment-added-contains-event:
740 comment-contains-value: 'recheck'
741 - comment-added-contains-event:
742 comment-contains-value: 'reverify'
744 - project-compare-type: 'ANT'
745 project-pattern: 'functest'
747 - branch-compare-type: 'ANT'
748 branch-pattern: '**/{branch}'
756 name: 'functest-{tag}-gate'
757 project-type: multijob
759 - functest-patchset-created:
766 use-build-blocker: true
767 blocking-level: 'NODE'
769 - '^functest-{tag}-(daily|check|gate)$'
772 name: remove former images
774 - name: 'functest-opnfv-functest-healthcheck-{tag}-rmi'
776 - name: 'functest-opnfv-functest-smoke-{tag}-rmi'
778 - name: 'functest-opnfv-functest-benchmarking-{tag}-rmi'
780 - name: 'functest-opnfv-functest-vnf-{tag}-rmi'
783 name: remove dependencies
785 - name: 'functest-_-alpine-3.10-rmi'
788 name: pull dependencies
790 - name: 'functest-_-alpine-3.10-pull'
793 name: build opnfv/functest-core
795 - name: 'functest-opnfv-functest-core-{tag}-gate'
798 name: build opnfv/functest-tempest
800 - name: 'functest-opnfv-functest-tempest-{tag}-gate'
803 name: build containers
805 - name: 'functest-opnfv-functest-healthcheck-{tag}-gate'
807 - name: 'functest-opnfv-functest-smoke-{tag}-gate'
809 - name: 'functest-opnfv-functest-benchmarking-{tag}-gate'
811 - name: 'functest-opnfv-functest-vnf-{tag}-gate'
814 name: opnfv/functest-healthcheck:{tag}
816 - name: 'functest-opnfv-functest-healthcheck-{tag}-connection_check-run'
818 - name: 'functest-opnfv-functest-healthcheck-{tag}-tenantnetwork1-run'
820 - name: 'functest-opnfv-functest-healthcheck-{tag}-tenantnetwork2-run'
822 - name: 'functest-opnfv-functest-healthcheck-{tag}-vmready1-run'
824 - name: 'functest-opnfv-functest-healthcheck-{tag}-vmready2-run'
826 - name: 'functest-opnfv-functest-healthcheck-{tag}-singlevm1-run'
828 - name: 'functest-opnfv-functest-healthcheck-{tag}-singlevm2-run'
830 - name: 'functest-opnfv-functest-healthcheck-{tag}-vping_ssh-run'
832 - name: 'functest-opnfv-functest-healthcheck-{tag}-vping_userdata-run'
834 - name: 'functest-opnfv-functest-healthcheck-{tag}-cinder_test-run'
836 - name: 'functest-opnfv-functest-healthcheck-{tag}-odl-run'
838 - name: 'functest-opnfv-functest-healthcheck-{tag}-tempest_smoke-run'
840 - name: 'functest-opnfv-functest-healthcheck-{tag}-tempest_horizon-run'
843 name: opnfv/functest-smoke:{tag}
845 - name: 'functest-opnfv-functest-smoke-{tag}-neutron-tempest-plugin-api-run'
847 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_keystone-run'
849 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_cinder-run'
851 - name: 'functest-opnfv-functest-smoke-{tag}-rally_sanity-run'
853 - name: 'functest-opnfv-functest-smoke-{tag}-refstack_defcore-run'
855 - name: 'functest-opnfv-functest-smoke-{tag}-refstack_compute-run'
857 - name: 'functest-opnfv-functest-smoke-{tag}-refstack_object-run'
859 - name: 'functest-opnfv-functest-smoke-{tag}-refstack_platform-run'
861 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_full-run'
863 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_scenario-run'
865 - name: 'functest-opnfv-functest-smoke-{tag}-tempest_slow-run'
867 - name: 'functest-opnfv-functest-smoke-{tag}-patrole-run'
869 - name: 'functest-opnfv-functest-smoke-{tag}-neutron_trunk-run'
871 - name: 'functest-opnfv-functest-smoke-{tag}-networking-bgpvpn-run'
873 - name: 'functest-opnfv-functest-smoke-{tag}-networking-sfc-run'
875 - name: 'functest-opnfv-functest-smoke-{tag}-barbican-run'
877 - name: 'functest-opnfv-functest-smoke-{tag}-octavia-run'
880 name: opnfv/functest-benchmarking:{tag}
882 - name: 'functest-opnfv-functest-benchmarking-{tag}-rally_full-run'
884 - name: 'functest-opnfv-functest-benchmarking-{tag}-rally_jobs-run'
886 - name: 'functest-opnfv-functest-benchmarking-{tag}-vmtp-run'
888 - name: 'functest-opnfv-functest-benchmarking-{tag}-shaker-run'
891 name: opnfv/functest-vnf:{tag}
892 execution-type: SEQUENTIALLY
894 - name: 'functest-opnfv-functest-vnf-{tag}-cloudify-run'
896 - name: 'functest-opnfv-functest-vnf-{tag}-cloudify_ims-run'
898 - name: 'functest-opnfv-functest-vnf-{tag}-heat_ims-run'
900 - name: 'functest-opnfv-functest-vnf-{tag}-vyos_vrouter-run'
902 - name: 'functest-opnfv-functest-vnf-{tag}-juju_epc-run'
909 - 'functest-{tag}-daily'
910 - 'functest-{tag}-check'
911 - 'functest-{tag}-gate'
923 regex: ^functest-[a-z]+-(daily|check|gate)$