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'
552 name: functest-pi-zip
556 [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/results || true
557 if [ "{repo}" = "_" ]; then
558 image={container}:{tag}
559 elif [ "{port}" = "None" ]; then
560 image={repo}/{container}:{tag}
562 image={repo}:{port}/{container}:{tag}
564 sudo docker run --rm \
565 -e S3_ENDPOINT_URL=https://storage.googleapis.com \
566 -e S3_DST_URL=s3://artifacts.opnfv.org/functest \
567 -e HTTP_DST_URL=http://artifacts.opnfv.org/functest \
568 -v /home/opnfv/functest/.boto:/root/.boto \
569 -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
570 -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
571 -e BUILD_TAG=$BUILD_TAG \
572 -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
573 -e EXTERNAL_NETWORK=$EXTERNAL_NETWORK \
574 -e VOLUME_DEVICE_NAME=$VOLUME_DEVICE_NAME \
575 -e IMAGE_PROPERTIES=$IMAGE_PROPERTIES \
576 -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
577 -v /home/opnfv/functest/images:/home/opnfv/functest/images \
581 name: 'functest-pi-{tag}-zip'
585 - functest-pi-build_tag:
587 - functest-pi-EXTERNAL_NETWORK:
588 EXTERNAL_NETWORK: public
589 - functest-pi-VOLUME_DEVICE_NAME:
590 VOLUME_DEVICE_NAME: sdb
591 - functest-pi-IMAGE_PROPERTIES:
592 IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
595 <<: *functest-pi-containers
598 name: 'functest-pi-{tag}-zip'
599 <<: *functest-pi-params
600 container: 'functest-healthcheck'
602 - 'functest-pi-{tag}-zip'
605 name: 'functest-pi-{tag}-daily'
606 project-type: multijob
612 - functest-pi-build_tag:
614 - functest-pi-EXTERNAL_NETWORK:
615 EXTERNAL_NETWORK: public
616 - functest-pi-VOLUME_DEVICE_NAME:
617 VOLUME_DEVICE_NAME: sdb
618 - functest-pi-IMAGE_PROPERTIES:
619 IMAGE_PROPERTIES: hw_scsi_model:virtio-scsi,hw_disk_bus:scsi
620 # PyYAML and yamllint differ here
621 # see https://github.com/yaml/pyyaml/issues/234
622 # yamllint disable rule:indentation
626 - ^functest-(pi-)*{tag}-(daily|docker|review)$
627 # yamllint enable rule:indentation
630 name: remove former images
632 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-rmi'
633 <<: *functest-pi-jobs
634 - name: 'functest-pi-ollivier-functest-smoke-{tag}-rmi'
635 <<: *functest-pi-jobs
636 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-rmi'
637 <<: *functest-pi-jobs
638 - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-rmi'
639 <<: *functest-pi-jobs
640 - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-rmi'
641 <<: *functest-pi-jobs
642 - name: 'functest-pi-ollivier-functest-vnf-{tag}-rmi'
643 <<: *functest-pi-jobs
645 name: pull containers
647 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-pull'
648 <<: *functest-pi-jobs
649 - name: 'functest-pi-ollivier-functest-smoke-{tag}-pull'
650 <<: *functest-pi-jobs
651 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-pull'
652 <<: *functest-pi-jobs
653 - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-pull'
654 <<: *functest-pi-jobs
655 - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-pull'
656 <<: *functest-pi-jobs
657 - name: 'functest-pi-ollivier-functest-vnf-{tag}-pull'
658 <<: *functest-pi-jobs
660 name: ollivier/functest-healthcheck:{tag}
662 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-connection_check-run'
663 <<: *functest-pi-jobs
664 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tenantnetwork1-run'
665 <<: *functest-pi-jobs
666 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tenantnetwork2-run'
667 <<: *functest-pi-jobs
668 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vmready1-run'
669 <<: *functest-pi-jobs
670 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vmready2-run'
671 <<: *functest-pi-jobs
672 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-singlevm1-run'
673 <<: *functest-pi-jobs
674 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-singlevm2-run'
675 <<: *functest-pi-jobs
676 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vping_ssh-run'
677 <<: *functest-pi-jobs
678 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-vping_userdata-run'
679 <<: *functest-pi-jobs
680 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-cinder_test-run'
681 <<: *functest-pi-jobs
682 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-odl-run'
683 <<: *functest-pi-jobs
684 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tempest_smoke-run'
685 <<: *functest-pi-jobs
686 - name: 'functest-pi-ollivier-functest-healthcheck-{tag}-tempest_horizon-run'
687 <<: *functest-pi-jobs
689 name: ollivier/functest-smoke:{tag}
691 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_neutron-run'
692 <<: *functest-pi-jobs
693 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_cinder-run'
694 <<: *functest-pi-jobs
695 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_keystone-run'
696 <<: *functest-pi-jobs
697 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_heat-run'
698 <<: *functest-pi-jobs
699 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_telemetry-run'
700 <<: *functest-pi-jobs
701 - name: 'functest-pi-ollivier-functest-smoke-{tag}-rally_sanity-run'
702 <<: *functest-pi-jobs
703 - name: 'functest-pi-ollivier-functest-smoke-{tag}-refstack_defcore-run'
704 <<: *functest-pi-jobs
705 - name: 'functest-pi-ollivier-functest-smoke-{tag}-refstack_compute-run'
706 <<: *functest-pi-jobs
707 - name: 'functest-pi-ollivier-functest-smoke-{tag}-refstack_object-run'
708 <<: *functest-pi-jobs
709 - name: 'functest-pi-ollivier-functest-smoke-{tag}-refstack_platform-run'
710 <<: *functest-pi-jobs
711 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_full-run'
712 <<: *functest-pi-jobs
713 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_scenario-run'
714 <<: *functest-pi-jobs
715 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_slow-run'
716 <<: *functest-pi-jobs
717 - name: 'functest-pi-ollivier-functest-smoke-{tag}-patrole-run'
718 <<: *functest-pi-jobs
719 - name: 'functest-pi-ollivier-functest-smoke-{tag}-patrole_admin-run'
720 <<: *functest-pi-jobs
721 - name: 'functest-pi-ollivier-functest-smoke-{tag}-patrole_member-run'
722 <<: *functest-pi-jobs
723 - name: 'functest-pi-ollivier-functest-smoke-{tag}-patrole_reader-run'
724 <<: *functest-pi-jobs
725 - name: 'functest-pi-ollivier-functest-smoke-{tag}-networking-bgpvpn-run'
726 <<: *functest-pi-jobs
727 - name: 'functest-pi-ollivier-functest-smoke-{tag}-networking-sfc-run'
728 <<: *functest-pi-jobs
729 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_barbican-run'
730 <<: *functest-pi-jobs
731 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_octavia-run'
732 <<: *functest-pi-jobs
733 - name: 'functest-pi-ollivier-functest-smoke-{tag}-tempest_cyborg-run'
734 <<: *functest-pi-jobs
736 name: ollivier/functest-smoke-cntt:{tag}
738 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_neutron_cntt-run'
739 <<: *functest-pi-jobs
740 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_cinder_cntt-run'
741 <<: *functest-pi-jobs
742 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_keystone_cntt-run'
743 <<: *functest-pi-jobs
744 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_heat_cntt-run'
745 <<: *functest-pi-jobs
746 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-rally_sanity_cntt-run'
747 <<: *functest-pi-jobs
748 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_full_cntt-run'
749 <<: *functest-pi-jobs
750 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_scenario_cntt-run'
751 <<: *functest-pi-jobs
752 - name: 'functest-pi-ollivier-functest-smoke-cntt-{tag}-tempest_slow_cntt-run'
753 <<: *functest-pi-jobs
755 name: ollivier/functest-benchmarking:{tag}
757 - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-rally_full-run'
758 <<: *functest-pi-jobs
759 - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-rally_jobs-run'
760 <<: *functest-pi-jobs
761 - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-vmtp-run'
762 <<: *functest-pi-jobs
763 - name: 'functest-pi-ollivier-functest-benchmarking-{tag}-shaker-run'
764 <<: *functest-pi-jobs
766 name: ollivier/functest-benchmarking-cntt:{tag}
768 - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-rally_full_cntt-run'
769 <<: *functest-pi-jobs
770 - name: 'functest-pi-ollivier-functest-benchmarking-cntt-{tag}-rally_jobs_cntt-run'
771 <<: *functest-pi-jobs
773 name: ollivier/functest-vnf:{tag}
775 - name: 'functest-pi-ollivier-functest-vnf-{tag}-cloudify-run'
776 <<: *functest-pi-jobs
777 - name: 'functest-pi-ollivier-functest-vnf-{tag}-cloudify_ims-run'
778 <<: *functest-pi-jobs
779 - name: 'functest-pi-ollivier-functest-vnf-{tag}-heat_ims-run'
780 <<: *functest-pi-jobs
781 - name: 'functest-pi-ollivier-functest-vnf-{tag}-vyos_vrouter-run'
782 <<: *functest-pi-jobs
783 - name: 'functest-pi-ollivier-functest-vnf-{tag}-juju_epc-run'
784 <<: *functest-pi-jobs
786 name: dump all campaign data
788 - name: 'functest-pi-{tag}-zip'
789 <<: *functest-pi-jobs
792 name: 'functest-pi-daily'
793 <<: *functest-pi-params
795 - 'functest-pi-{tag}-daily'
807 regex: ^functest-pi-[a-z-0-9.]+-daily$