2 - functest-pi-containers: &functest-pi-containers
3 name: 'functest-pi-containers'
6 container: '{container}'
9 - functest-pi-params: &functest-pi-params
10 name: 'functest-pi-params'
16 DASHBOARD_URL: http://172.30.12.85
19 DASHBOARD_URL: http://172.30.13.91
22 DASHBOARD_URL: http://172.30.13.94
25 DASHBOARD_URL: http://172.30.12.88
28 DASHBOARD_URL: http://172.30.12.83
31 DASHBOARD_URL: http://172.30.12.85
34 DASHBOARD_URL: http://172.30.13.91
37 DASHBOARD_URL: http://172.30.13.94
40 DASHBOARD_URL: http://172.30.12.88
43 DASHBOARD_URL: http://172.30.12.83
46 DASHBOARD_URL: http://172.30.12.85
49 DASHBOARD_URL: http://172.30.13.91
52 DASHBOARD_URL: http://172.30.13.94
55 DASHBOARD_URL: http://172.30.12.88
58 DASHBOARD_URL: http://172.30.12.83
60 - functest-pi-jobs: &functest-pi-jobs
61 name: 'functest-pi-jobs'
62 current-parameters: true
65 name: functest-pi-slave
72 name: functest-pi-build_tag
78 name: functest-pi-EXTERNAL_NETWORK
81 name: EXTERNAL_NETWORK
85 name: functest-pi-VOLUME_DEVICE_NAME
88 name: VOLUME_DEVICE_NAME
92 name: functest-pi-IMAGE_PROPERTIES
95 name: IMAGE_PROPERTIES
96 default: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
98 - functest-pi-run-containers: &functest-pi-run-containers
99 name: 'functest-pi-run-containers'
100 <<: *functest-pi-containers
102 privileged: '{privileged}'
104 DASHBOARD_URL: '{DASHBOARD_URL}'
107 name: functest-pi-pull-containers
111 if [ "{repo}" = "_" ]; then
112 image={container}:{tag}
113 elif [ "{port}" = "None" ]; then
114 image={repo}/{container}:{tag}
116 image={repo}:{port}/{container}:{tag}
118 sudo docker pull $image
121 name: functest-pi-run-containers
125 [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
126 if [ "{repo}" = "_" ]; then
127 image={container}:{tag}
128 elif [ "{port}" = "None" ]; then
129 image={repo}/{container}:{tag}
131 image={repo}:{port}/{container}:{tag}
133 sudo docker run --rm \
134 --privileged={privileged} \
135 --network={network} \
136 -e S3_ENDPOINT_URL=https://storage.googleapis.com \
137 -e S3_DST_URL=s3://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
138 -e HTTP_DST_URL=http://artifacts.opnfv.org/functest/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
139 -v /home/opnfv/functest/.boto:/root/.boto \
140 -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
141 -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
142 -e NODE_NAME=$slave \
143 -e BUILD_TAG=$BUILD_TAG \
144 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
145 -e EXTERNAL_NETWORK=$EXTERNAL_NETWORK \
146 -e VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME \
147 -e IMAGE_PROPERTIES=$IMAGE_PROPERTIES \
148 -e DASHBOARD_URL={DASHBOARD_URL} \
149 -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
150 -v /home/opnfv/functest/images:/home/opnfv/functest/images \
151 $image run_tests -t {test} -p -r
154 name: functest-pi-remove-images
158 if [ "{repo}" = "_" ]; then
159 image={container}:{tag}
160 elif [ "{port}" = "None" ]; then
161 image={repo}/{container}:{tag}
163 image={repo}:{port}/{container}:{tag}
165 sudo docker rmi $image || true
168 name: 'functest-pi-{repo}-{container}-{tag}-pull'
173 - functest-pi-pull-containers:
174 <<: *functest-pi-containers
177 name: 'functest-pi-ollivier-functest-healthcheck-pull'
178 <<: *functest-pi-params
179 container: 'functest-healthcheck'
181 - 'functest-pi-{repo}-{container}-{tag}-pull'
184 name: 'functest-pi-ollivier-functest-smoke-pull'
185 <<: *functest-pi-params
186 container: 'functest-smoke'
188 - 'functest-pi-{repo}-{container}-{tag}-pull'
191 name: 'functest-pi-ollivier-functest-smoke-cntt-pull'
192 <<: *functest-pi-params
193 container: 'functest-smoke-cntt'
195 - 'functest-pi-{repo}-{container}-{tag}-pull'
198 name: 'functest-pi-ollivier-functest-benchmarking-pull'
199 <<: *functest-pi-params
200 container: 'functest-benchmarking'
202 - 'functest-pi-{repo}-{container}-{tag}-pull'
205 name: 'functest-pi-ollivier-functest-benchmarking-cntt-pull'
206 <<: *functest-pi-params
207 container: 'functest-benchmarking-cntt'
209 - 'functest-pi-{repo}-{container}-{tag}-pull'
212 name: 'functest-pi-ollivier-functest-vnf-pull'
213 <<: *functest-pi-params
214 container: 'functest-vnf'
216 - 'functest-pi-{repo}-{container}-{tag}-pull'
219 name: 'functest-pi-{repo}-{container}-{tag}-rmi'
224 - functest-pi-remove-images:
225 <<: *functest-pi-containers
228 name: 'functest-pi-ollivier-functest-healthcheck-rmi'
229 <<: *functest-pi-params
230 container: 'functest-healthcheck'
232 - 'functest-pi-{repo}-{container}-{tag}-rmi'
235 name: 'functest-pi-ollivier-functest-smoke-rmi'
236 <<: *functest-pi-params
237 container: 'functest-smoke'
239 - 'functest-pi-{repo}-{container}-{tag}-rmi'
242 name: 'functest-pi-ollivier-functest-smoke-cntt-rmi'
243 <<: *functest-pi-params
244 container: 'functest-smoke-cntt'
246 - 'functest-pi-{repo}-{container}-{tag}-rmi'
249 name: 'functest-pi-ollivier-functest-benchmarking-rmi'
250 <<: *functest-pi-params
251 container: 'functest-benchmarking'
253 - 'functest-pi-{repo}-{container}-{tag}-rmi'
256 name: 'functest-pi-ollivier-functest-benchmarking-cntt-rmi'
257 <<: *functest-pi-params
258 container: 'functest-benchmarking-cntt'
260 - 'functest-pi-{repo}-{container}-{tag}-rmi'
263 name: 'functest-pi-ollivier-functest-vnf-rmi'
264 <<: *functest-pi-params
265 container: 'functest-vnf'
267 - 'functest-pi-{repo}-{container}-{tag}-rmi'
270 name: 'functest-pi-{repo}-{container}-{tag}-{test}-run'
274 - functest-pi-build_tag:
276 - functest-pi-EXTERNAL_NETWORK:
277 EXTERNAL_NETWORK: public
278 - functest-pi-VOLUME_DEVICE_NAME:
279 VOLUME_DEVICE_NAME: sdb
280 - functest-pi-IMAGE_PROPERTIES:
281 IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
283 - functest-pi-run-containers:
284 <<: *functest-pi-run-containers
287 name: 'functest-pi-ollivier-functest-healthcheck'
288 <<: *functest-pi-params
289 container: 'functest-healthcheck'
307 - 'functest-pi-{repo}-{container}-{tag}-{test}-run'
310 name: 'functest-pi-ollivier-functest-smoke'
311 <<: *functest-pi-params
312 container: 'functest-smoke'
340 test: refstack_defcore
342 test: networking-bgpvpn
348 test: refstack_defcore
350 test: networking-bgpvpn
356 test: refstack_defcore
358 test: networking-bgpvpn
364 test: refstack_defcore
366 test: networking-bgpvpn
376 test: refstack_defcore
378 test: networking-bgpvpn
390 test: refstack_defcore
392 test: networking-bgpvpn
398 test: refstack_defcore
400 test: networking-bgpvpn
406 test: refstack_defcore
408 test: networking-bgpvpn
414 test: refstack_defcore
416 test: networking-bgpvpn
426 test: refstack_defcore
428 test: networking-bgpvpn
440 test: refstack_defcore
442 test: networking-bgpvpn
448 test: refstack_defcore
450 test: networking-bgpvpn
456 test: refstack_defcore
458 test: networking-bgpvpn
464 test: refstack_defcore
466 test: networking-bgpvpn
476 test: refstack_defcore
478 test: networking-bgpvpn
490 - 'functest-pi-{repo}-{container}-{tag}-{test}-run'
493 name: 'functest-pi-ollivier-functest-smoke-cntt'
494 <<: *functest-pi-params
495 container: 'functest-smoke-cntt'
497 - tempest_neutron_cntt
498 - tempest_cinder_cntt
499 - tempest_keystone_cntt
503 - tempest_scenario_cntt
508 - 'functest-pi-{repo}-{container}-{tag}-{test}-run'
511 name: 'functest-pi-ollivier-functest-benchmarking'
512 <<: *functest-pi-params
513 container: 'functest-benchmarking'
522 - 'functest-pi-{repo}-{container}-{tag}-{test}-run'
525 name: 'functest-pi-ollivier-functest-benchmarking-cntt'
526 <<: *functest-pi-params
527 container: 'functest-benchmarking-cntt'
534 - 'functest-pi-{repo}-{container}-{tag}-{test}-run'
537 name: 'functest-pi-ollivier-functest-vnf'
538 <<: *functest-pi-params
539 container: 'functest-vnf'
549 - 'functest-pi-{repo}-{container}-{tag}-{test}-run'
553 name: functest-pi-zip
557 [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
558 if [ "{repo}" = "_" ]; then
559 image={container}:{tag}
560 elif [ "{port}" = "None" ]; then
561 image={repo}/{container}:{tag}
563 image={repo}:{port}/{container}:{tag}
565 sudo docker run --rm \
566 -e S3_ENDPOINT_URL=https://storage.googleapis.com \
567 -e S3_DST_URL=s3://artifacts.opnfv.org/functest \
568 -e HTTP_DST_URL=http://artifacts.opnfv.org/functest \
569 -v /home/opnfv/functest/.boto:/root/.boto \
570 -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
571 -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
572 -e BUILD_TAG=$BUILD_TAG \
573 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
574 -e EXTERNAL_NETWORK=$EXTERNAL_NETWORK \
575 -e VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME \
576 -e IMAGE_PROPERTIES=$IMAGE_PROPERTIES \
577 -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
578 -v /home/opnfv/functest/images:/home/opnfv/functest/images \
582 name: 'functest-pi-{tag}-zip'
586 - functest-pi-build_tag:
588 - functest-pi-EXTERNAL_NETWORK:
589 EXTERNAL_NETWORK: public
590 - functest-pi-VOLUME_DEVICE_NAME:
591 VOLUME_DEVICE_NAME: sdb
592 - functest-pi-IMAGE_PROPERTIES:
593 IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
596 <<: *functest-pi-containers
599 name: 'functest-pi-{tag}-zip'
600 <<: *functest-pi-params
601 container: 'functest-healthcheck'
603 - 'functest-pi-{tag}-zip'
606 name: 'functest-pi-{tag}-daily'
607 project-type: multijob
613 - functest-pi-build_tag:
615 - functest-pi-EXTERNAL_NETWORK:
616 EXTERNAL_NETWORK: public
617 - functest-pi-VOLUME_DEVICE_NAME:
618 VOLUME_DEVICE_NAME: sdb
619 - functest-pi-IMAGE_PROPERTIES:
620 IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
621 # PyYAML and yamllint differ here
622 # see https://github.com/yaml/pyyaml/issues/234
623 # yamllint disable rule:indentation
627 - ^functest-(pi-)*{tag}-(daily|docker|review)$
628 # yamllint enable rule:indentation
631 name: remove former images
633 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-rmi'
634 <<: *functest-pi-jobs
635 - name: 'functest-pi-ollivier-functest-smoke-{tag}-rmi'
636 <<: *functest-pi-jobs
637 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-rmi'
638 <<: *functest-pi-jobs
639 - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-rmi'
640 <<: *functest-pi-jobs
641 - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-rmi'
642 <<: *functest-pi-jobs
643 - name: 'functest-pi-ollivier-functest-vnf-{tag}-rmi'
644 <<: *functest-pi-jobs
646 name: pull containers
648 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-pull'
649 <<: *functest-pi-jobs
650 - name: 'functest-pi-ollivier-functest-smoke-{tag}-pull'
651 <<: *functest-pi-jobs
652 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-pull'
653 <<: *functest-pi-jobs
654 - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-pull'
655 <<: *functest-pi-jobs
656 - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-pull'
657 <<: *functest-pi-jobs
658 - name: 'functest-pi-ollivier-functest-vnf-{tag}-pull'
659 <<: *functest-pi-jobs
661 name: ollivier/functest-healthcheck:{tag}
663 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-connection_check-run'
664 <<: *functest-pi-jobs
665 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tenantnetwork1-run'
666 <<: *functest-pi-jobs
667 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tenantnetwork2-run'
668 <<: *functest-pi-jobs
669 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vmready1-run'
670 <<: *functest-pi-jobs
671 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vmready2-run'
672 <<: *functest-pi-jobs
673 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-singlevm1-run'
674 <<: *functest-pi-jobs
675 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-singlevm2-run'
676 <<: *functest-pi-jobs
677 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vping_ssh-run'
678 <<: *functest-pi-jobs
679 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vping_userdata-run'
680 <<: *functest-pi-jobs
681 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-cinder_test-run'
682 <<: *functest-pi-jobs
683 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-odl-run'
684 <<: *functest-pi-jobs
685 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tempest_smoke-run'
686 <<: *functest-pi-jobs
687 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tempest_horizon-run'
688 <<: *functest-pi-jobs
690 name: ollivier/functest-smoke:{tag}
692 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_neutron-run'
693 <<: *functest-pi-jobs
694 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_cinder-run'
695 <<: *functest-pi-jobs
696 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_keystone-run'
697 <<: *functest-pi-jobs
698 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_heat-run'
699 <<: *functest-pi-jobs
700 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_telemetry-run'
701 <<: *functest-pi-jobs
702 - name: 'functest-pi-ollivier-functest-smoke-{tag}-rally_sanity-run'
703 <<: *functest-pi-jobs
704 - name: 'functest-pi-ollivier-functest-smoke-{tag}-refstack_defcore-run'
705 <<: *functest-pi-jobs
706 - name: 'functest-pi-ollivier-functest-smoke-{tag}-refstack_compute-run'
707 <<: *functest-pi-jobs
708 - name: 'functest-pi-ollivier-functest-smoke-{tag}-refstack_object-run'
709 <<: *functest-pi-jobs
710 - name: 'functest-pi-ollivier-functest-smoke-{tag}-refstack_platform-run'
711 <<: *functest-pi-jobs
712 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_full-run'
713 <<: *functest-pi-jobs
714 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_scenario-run'
715 <<: *functest-pi-jobs
716 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_slow-run'
717 <<: *functest-pi-jobs
718 - name: 'functest-pi-ollivier-functest-smoke-{tag}-patrole-run'
719 <<: *functest-pi-jobs
720 - name: 'functest-pi-ollivier-functest-smoke-{tag}-patrole_admin-run'
721 <<: *functest-pi-jobs
722 - name: 'functest-pi-ollivier-functest-smoke-{tag}-patrole_member-run'
723 <<: *functest-pi-jobs
724 - name: 'functest-pi-ollivier-functest-smoke-{tag}-patrole_reader-run'
725 <<: *functest-pi-jobs
726 - name: 'functest-pi-ollivier-functest-smoke-{tag}-networking-bgpvpn-run'
727 <<: *functest-pi-jobs
728 - name: 'functest-pi-ollivier-functest-smoke-{tag}-networking-sfc-run'
729 <<: *functest-pi-jobs
730 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_barbican-run'
731 <<: *functest-pi-jobs
732 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_octavia-run'
733 <<: *functest-pi-jobs
734 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_cyborg-run'
735 <<: *functest-pi-jobs
737 name: ollivier/functest-smoke-cntt:{tag}
739 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_neutron_cntt-run'
740 <<: *functest-pi-jobs
741 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_cinder_cntt-run'
742 <<: *functest-pi-jobs
743 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_keystone_cntt-run'
744 <<: *functest-pi-jobs
745 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_heat_cntt-run'
746 <<: *functest-pi-jobs
747 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-rally_sanity_cntt-run'
748 <<: *functest-pi-jobs
749 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_full_cntt-run'
750 <<: *functest-pi-jobs
751 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_scenario_cntt-run'
752 <<: *functest-pi-jobs
753 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_slow_cntt-run'
754 <<: *functest-pi-jobs
756 name: ollivier/functest-benchmarking:{tag}
758 - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-rally_full-run'
759 <<: *functest-pi-jobs
760 - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-rally_jobs-run'
761 <<: *functest-pi-jobs
762 - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-vmtp-run'
763 <<: *functest-pi-jobs
764 - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-shaker-run'
765 <<: *functest-pi-jobs
767 name: ollivier/functest-benchmarking-cntt:{tag}
769 - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-rally_full_cntt-run'
770 <<: *functest-pi-jobs
771 - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-rally_jobs_cntt-run'
772 <<: *functest-pi-jobs
774 name: ollivier/functest-vnf:{tag}
776 - name: 'functest-pi-ollivier-functest-vnf-{tag}-cloudify-run'
777 <<: *functest-pi-jobs
778 - name: 'functest-pi-ollivier-functest-vnf-{tag}-cloudify_ims-run'
779 <<: *functest-pi-jobs
780 - name: 'functest-pi-ollivier-functest-vnf-{tag}-heat_ims-run'
781 <<: *functest-pi-jobs
782 - name: 'functest-pi-ollivier-functest-vnf-{tag}-vyos_vrouter-run'
783 <<: *functest-pi-jobs
784 - name: 'functest-pi-ollivier-functest-vnf-{tag}-juju_epc-run'
785 <<: *functest-pi-jobs
787 name: dump all campaign data
789 - name: 'functest-pi-{tag}-zip'
790 <<: *functest-pi-jobs
793 name: 'functest-pi-daily'
794 <<: *functest-pi-params
796 - 'functest-pi-{tag}-daily'
808 regex: ^functest-pi-[a-z-0-9.]+-daily$