diff options
-rw-r--r-- | docker/Dockerfile | 8 | ||||
-rw-r--r-- | docs/testing/user/testspecification/ipv6/index.rst | 231 | ||||
-rw-r--r-- | dovetail/conf/cmd_config.yml | 2 | ||||
-rw-r--r-- | dovetail/conf/yardstick_config.yml | 3 | ||||
-rw-r--r-- | dovetail/container.py | 29 |
5 files changed, 153 insertions, 120 deletions
diff --git a/docker/Dockerfile b/docker/Dockerfile index fbe48495..eb85ea49 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -20,7 +20,13 @@ RUN \ && \ apt-get update -RUN wget -qO- https://get.docker.com/ | sed 's/ docker-engine/ docker-engine=1.12.3-0~trusty/' | sh +RUN wget -qO- https://get.docker.com/ \ +| \ + sed 's/-q docker-ce/-q docker-ce=17.03.0~ce-0~ubuntu-trusty/' \ +| \ + sed 's/edge/stable/' \ +| \ + sh ENV HOME /home/opnfv ENV REPOS_DIR ${HOME}/dovetail diff --git a/docs/testing/user/testspecification/ipv6/index.rst b/docs/testing/user/testspecification/ipv6/index.rst index 674c69d8..c3dc844b 100644 --- a/docs/testing/user/testspecification/ipv6/index.rst +++ b/docs/testing/user/testspecification/ipv6/index.rst @@ -1180,9 +1180,9 @@ Use case specification This test case evaluates IPv6 address assignment in ipv6_ra_mode 'dhcpv6_stateless' and ipv6_address_mode 'dhcpv6_stateless'. In this case, guest instance obtains IPv6 address from OpenStack managed radvd -using SLAAC and optional info from dnsmasq using DHCPv6. This test case then -verifies the ping6 available VM can ping all of the v4 addresses and other's -v6 addresses as well as the router's in the same network, the reference is +using SLAAC and optional info from dnsmasq using DHCPv6 stateless. This test case then +verifies the ping6 available VM can ping the other VM's v4 and v6 addresses +as well as the v6 subnet's gateway ip in the same network, the reference is tempest.scenario.test_network_v6.TestGettingAddress.test_dhcp6_stateless_from_os @@ -1208,31 +1208,31 @@ Test execution storing the "id" parameter returned in the response * Test action 6: Connect the IPv6 subnet to the router, using the stored IPv6 subnet id * Test action 7: Boot two VMs on this network, storing the "id" parameters returned in the response -* **Test assertion 1:** The vNICs of all VMs get all v6 addresses actually assigned +* **Test assertion 1:** The vNIC of each VM gets one v4 address and one v6 address actually assigned * **Test assertion 2:** Each VM can ping the other's v4 private address -* **Test assertion 3:** The ping6 available VM can ping all of the other's v6 addresses - as well as the router's +* **Test assertion 3:** The ping6 available VM can ping the other's v6 address + as well as the v6 subnet's gateway ip * Test action 8: Delete the 2 VMs created in test action 7, using the stored ids * Test action 9: List all VMs, verifying the ids are no longer present * **Test assertion 4:** The two "id" parameters are not present in the VM list -* Test action 10: Delete the IPv4 subnet created in test action 2, using the stored ids -* Test action 11: Delete the IPv6 subnet created in test action 5, using the stored ids +* Test action 10: Delete the IPv4 subnet created in test action 2, using the stored id +* Test action 11: Delete the IPv6 subnet created in test action 5, using the stored id * Test action 12: List all subnets, verifying the ids are no longer present * **Test assertion 5:** The "id" parameters of IPv4 and IPv6 are not present in the list -* Test action 13: Delete the network created in test action 1, using the stored ids +* Test action 13: Delete the network created in test action 1, using the stored id * Test action 14: List all networks, verifying the id is no longer present * **Test assertion 6:** The "id" parameter is not present in the network list Pass / fail criteria ''''''''''''''''''''' -This test evaluates the ability to assign IPv6 address in ipv6_ra_mode +This test evaluates the ability to assign IPv6 addresses in ipv6_ra_mode 'dhcpv6_stateless' and ipv6_address_mode 'dhcpv6_stateless', -and verify the ping6 available VM can ping all of the v4 addresses and other's -v6 addresses as well as the router's in the same network. Specifically it verifies that: +and verify the ping6 available VM can ping the other VM's v4 and v6 addresses as well as +the v6 subnet's gateway ip in the same network. Specifically it verifies that: * The IPv6 addresses in mode 'dhcpv6_stateless' assigned successfully -* The VM can ping the IPv4 and IPv6 private addresses +* The VM can ping the other VM's IPv4 and IPv6 private addresses as well as the v6 subnet's gateway ip * All items created using create commands are able to be removed using the returned identifiers Post conditions @@ -1255,9 +1255,9 @@ Use case specification This test case evaluates IPv6 address assignment in ipv6_ra_mode 'dhcpv6_stateless' and ipv6_address_mode 'dhcpv6_stateless'. In this case, guest instance obtains IPv6 address from OpenStack managed radvd -using SLAAC and optional info from dnsmasq using DHCPv6. This test case then -verifies the ping6 available VM can ping all of the v4 addresses in another network -and other's v6 addresses as well as the router's in the same network, the reference is +using SLAAC and optional info from dnsmasq using DHCPv6 stateless. This test case then +verifies the ping6 available VM can ping the other VM's v4 address in one network +and v6 address in another network as well as the v6 subnet's gateway ip, the reference is tempest.scenario.test_network_v6.TestGettingAddress.test_dualnet_dhcp6_stateless_from_os @@ -1278,17 +1278,18 @@ Test execution * Test action 3: If there exists a public router, use it as the router. Otherwise, use the public network to create a router * Test action 4: Connect the IPv4 subnet to the router, using the stored IPv4 subnet id -* Test action 5: Create another network, storing the "id" parameters returned in the response +* Test action 5: Create another network, storing the "id" parameter returned in the response * Test action 6: Create one IPv6 subnet of network created in test action 5 in ipv6_ra_mode 'dhcpv6_stateless' and ipv6_address_mode 'dhcpv6_stateless', storing the "id" parameter returned in the response * Test action 7: Connect the IPv6 subnet to the router, using the stored IPv6 subnet id * Test action 8: Boot two VMs on these two networks, storing the "id" parameters returned in the response -* Test action 9: Turn on 2nd NIC of each VM -* **Test assertion 1:** The vNICs of all VMs get all v6 addresses actually assigned +* Test action 9: Turn on 2nd NIC of each VM for the network created in test action 5 +* **Test assertion 1:** The 1st vNIC of each VM gets one v4 address assigned and + the 2nd vNIC of each VM gets one v6 address actually assigned * **Test assertion 2:** Each VM can ping the other's v4 private address -* **Test assertion 3:** The ping6 available VM can ping all of the other's v6 addresses - as well as the router's +* **Test assertion 3:** The ping6 available VM can ping the other's v6 address + as well as the v6 subnet's gateway ip * Test action 10: Delete the 2 VMs created in test action 8, using the stored ids * Test action 11: List all VMs, verifying the ids are no longer present * **Test assertion 4:** The two "id" parameters are not present in the VM list @@ -1303,13 +1304,14 @@ Test execution Pass / fail criteria '''''''''''''''''''' -This test evaluates the ability to assign IPv6 address in ipv6_ra_mode 'dhcpv6_stateless' -and ipv6_address_mode 'dhcpv6_stateless', -and verify the ping6 available VM can ping all of the v4 addresses and other's -v6 addresses as well as the router's in another network. Specifically it verifies that: +This test evaluates the ability to assign IPv6 addresses in ipv6_ra_mode 'dhcpv6_stateless' +and ipv6_address_mode 'dhcpv6_stateless', and verify the ping6 available VM can ping +the other VM's v4 address in one network and v6 address in another network as well as +the v6 subnet's gateway ip. Specifically it verifies that: * The IPv6 addresses in mode 'dhcpv6_stateless' assigned successfully -* The VM can ping the IPv4 and IPv6 private addresses +* The VM can ping the other VM's IPv4 address in one network and IPv6 address in another + network as well as the v6 subnet's gateway ip * All items created using create commands are able to be removed using the returned identifiers Post conditions @@ -1331,10 +1333,11 @@ Use case specification This test case evaluates IPv6 address assignment in ipv6_ra_mode 'dhcpv6_stateless' and ipv6_address_mode 'dhcpv6_stateless'. -In this case, guest instance obtains IPv6 address from OpenStack managed radvd -using SLAAC and optional info from dnsmasq using DHCPv6. This test case then -verifies the ping6 available VM can ping all of the v4 addresses and other's -v6 addresses as well as the router's in the same network, the reference is +In this case, guest instance obtains IPv6 addresses from OpenStack managed radvd +using SLAAC and optional info from dnsmasq using DHCPv6 stateless. This test case then +verifies the ping6 available VM can ping the other VM's one v4 address and two v6 +addresses with different prefixes as well as the v6 subnets' gateway ips in the +same network, the reference is tempest.scenario.test_network_v6.TestGettingAddress.test_multi_prefix_dhcpv6_stateless @@ -1358,34 +1361,35 @@ Test execution * Test action 5: Create two IPv6 subnets of the network created in test action 1 in ipv6_ra_mode 'dhcpv6_stateless' and ipv6_address_mode 'dhcpv6_stateless', storing the "id" parameters returned in the response -* Test action 6: Connect the two IPv6 subnets to the router, using the stored IPv6 subnet id +* Test action 6: Connect the two IPv6 subnets to the router, using the stored IPv6 subnet ids * Test action 7: Boot two VMs on this network, storing the "id" parameters returned in the response -* **Test assertion 1:** The vNICs of all VMs get all v6 addresses actually assigned +* **Test assertion 1:** The vNIC of each VM gets one v4 address and two v6 addresses with + different prefixes actually assigned * **Test assertion 2:** Each VM can ping the other's v4 private address -* **Test assertion 3:** The ping6 available VM can ping all of the other's v6 addresses - as well as the router's +* **Test assertion 3:** The ping6 available VM can ping the other's v6 addresses + as well as the v6 subnets' gateway ips * Test action 8: Delete the 2 VMs created in test action 7, using the stored ids * Test action 9: List all VMs, verifying the ids are no longer present * **Test assertion 4:** The two "id" parameters are not present in the VM list -* Test action 10: Delete the IPv4 subnet created in test action 2, using the stored ids +* Test action 10: Delete the IPv4 subnet created in test action 2, using the stored id * Test action 11: Delete two IPv6 subnets created in test action 5, using the stored ids * Test action 12: List all subnets, verifying the ids are no longer present * **Test assertion 5:** The "id" parameters of IPv4 and IPv6 are not present in the list -* Test action 13: Delete the network created in test action 1, using the stored ids +* Test action 13: Delete the network created in test action 1, using the stored id * Test action 14: List all networks, verifying the id is no longer present * **Test assertion 6:** The "id" parameter is not present in the network list Pass / fail criteria ''''''''''''''''''''' -This test evaluates the ability to assign IPv6 address in ipv6_ra_mode 'dhcpv6_stateless' +This test evaluates the ability to assign IPv6 addresses in ipv6_ra_mode 'dhcpv6_stateless' and ipv6_address_mode 'dhcpv6_stateless', -and verify the ping6 available VM can ping all of the v4 addresses and other's -v6 addresses with different prefixes as well as the router's in the same network. +and verify the ping6 available VM can ping the other VM's v4 address and two +v6 addresses with different prefixes as well as the v6 subnets' gateway ips in the same network. Specifically it verifies that: * The different prefixes IPv6 addresses in mode 'dhcpv6_stateless' assigned successfully -* The VM can ping the IPv4 and IPv6 private addresses +* The VM can ping the other VM's IPv4 and IPv6 private addresses as well as the v6 subnets' gateway ips * All items created using create commands are able to be removed using the returned identifiers Post conditions @@ -1407,10 +1411,11 @@ Use case specification This test case evaluates IPv6 address assignment in ipv6_ra_mode 'dhcpv6_stateless' and ipv6_address_mode 'dhcpv6_stateless'. -In this case, guest instance obtains IPv6 address from OpenStack managed radvd -using SLAAC and optional info from dnsmasq using DHCPv6. This test case then -verifies the ping6 available VM can ping all of the v4 addresses in another network -and other's v6 addresses as well as the router's in the same network, the reference is +In this case, guest instance obtains IPv6 addresses from OpenStack managed radvd +using SLAAC and optional info from dnsmasq using DHCPv6 stateless. This test case then +verifies the ping6 available VM can ping the other VM's v4 address in one network +and two v6 addresses with different prefixes in another network as well as the +v6 subnets' gateway ips, the reference is tempest.scenario.test_network_v6.TestGettingAddress.test_dualnet_multi_prefix_dhcpv6_stateless @@ -1431,21 +1436,22 @@ Test execution * Test action 3: If there exists a public router, use it as the router. Otherwise, use the public network to create a router * Test action 4: Connect the IPv4 subnet to the router, using the stored IPv4 subnet id -* Test action 5: Create another network, storing the "id" parameters returned in the response +* Test action 5: Create another network, storing the "id" parameter returned in the response * Test action 6: Create two IPv6 subnets of network created in test action 5 in ipv6_ra_mode 'dhcpv6_stateless' and ipv6_address_mode 'dhcpv6_stateless', storing the "id" parameters returned in the response * Test action 7: Connect the two IPv6 subnets to the router, using the stored IPv6 subnet ids * Test action 8: Boot two VMs on these two networks, storing the "id" parameters returned in the response -* Test action 9: Turn on 2nd NIC of each VM -* **Test assertion 1:** The vNICs of all VMs get all v6 addresses actually assigned +* Test action 9: Turn on 2nd NIC of each VM for the network created in test action 5 +* **Test assertion 1:** The vNIC of each VM gets one v4 address and two v6 addresses + with different prefixes actually assigned * **Test assertion 2:** Each VM can ping the other's v4 private address -* **Test assertion 3:** The ping6 available VM can ping all of the other's v6 addresses - as well as the router's +* **Test assertion 3:** The ping6 available VM can ping the other's v6 addresses + as well as the v6 subnets' gateway ips * Test action 10: Delete the 2 VMs created in test action 8, using the stored ids * Test action 11: List all VMs, verifying the ids are no longer present * **Test assertion 4:** The two "id" parameters are not present in the VM list -* Test action 12: Delete the IPv4 subnet created in test action 2, using the stored ids +* Test action 12: Delete the IPv4 subnet created in test action 2, using the stored id * Test action 13: Delete two IPv6 subnets created in test action 6, using the stored ids * Test action 14: List all subnets, verifying the ids are no longer present * **Test assertion 5:** The "id" parameters of IPv4 and IPv6 are not present in the list @@ -1456,14 +1462,14 @@ Test execution Pass / fail criteria ''''''''''''''''''''' -This test evaluates the ability to assign IPv6 address in ipv6_ra_mode 'dhcpv6_stateless' +This test evaluates the ability to assign IPv6 addresses in ipv6_ra_mode 'dhcpv6_stateless' and ipv6_address_mode 'dhcpv6_stateless', -and verify the ping6 available VM can ping all of the v4 addresses and other's -v6 addresses with different prefixes as well as the router's in another network. -Specifically it verifies that: +and verify the ping6 available VM can ping the other VM's v4 address in one network and two +v6 addresses with different prefixes in another network as well as the v6 subnets' +gateway ips. Specifically it verifies that: * The IPv6 addresses in mode 'dhcpv6_stateless' assigned successfully -* The VM can ping the IPv4 and IPv6 private addresses +* The VM can ping the other VM's IPv4 and IPv6 private addresses as well as the v6 subnets' gateway ips * All items created using create commands are able to be removed using the returned identifiers Post conditions @@ -1486,8 +1492,8 @@ Use case specification This test case evaluates IPv6 address assignment in ipv6_ra_mode 'slaac' and ipv6_address_mode 'slaac'. In this case, guest instance obtains IPv6 address from OpenStack managed radvd -using SLAAC. This test case then verifies the ping6 available VM can ping all -of the v4 addresses and other's v6 addresses as well as the router's in the +using SLAAC. This test case then verifies the ping6 available VM can ping the other +VM's v4 and v6 addresses as well as the v6 subnet's gateway ip in the same network, the reference is tempest.scenario.test_network_v6.TestGettingAddress.test_slaac_from_os @@ -1513,31 +1519,31 @@ Test execution ipv6_ra_mode 'slaac' and ipv6_address_mode 'slaac', storing the "id" parameter returned in the response * Test action 6: Connect the IPv6 subnet to the router, using the stored IPv6 subnet id * Test action 7: Boot two VMs on this network, storing the "id" parameters returned in the response -* **Test assertion 1:** The vNICs of all VMs get all v6 addresses actually assigned +* **Test assertion 1:** The vNIC of each VM gets one v4 address and one v6 address actually assigned * **Test assertion 2:** Each VM can ping the other's v4 private address -* **Test assertion 3:** The ping6 available VM can ping all of the other's v6 addresses - as well as the router's +* **Test assertion 3:** The ping6 available VM can ping the other's v6 address + as well as the v6 subnet's gateway ip * Test action 8: Delete the 2 VMs created in test action 7, using the stored ids * Test action 9: List all VMs, verifying the ids are no longer present * **Test assertion 4:** The two "id" parameters are not present in the VM list -* Test action 10: Delete the IPv4 subnet created in test action 2, using the stored ids -* Test action 11: Delete the IPv6 subnet created in test action 5, using the stored ids +* Test action 10: Delete the IPv4 subnet created in test action 2, using the stored id +* Test action 11: Delete the IPv6 subnet created in test action 5, using the stored id * Test action 12: List all subnets, verifying the ids are no longer present * **Test assertion 5:** The "id" parameters of IPv4 and IPv6 are not present in the list -* Test action 13: Delete the network created in test action 1, using the stored ids +* Test action 13: Delete the network created in test action 1, using the stored id * Test action 14: List all networks, verifying the id is no longer present * **Test assertion 6:** The "id" parameter is not present in the network list Pass / fail criteria ''''''''''''''''''''' -This test evaluates the ability to assign IPv6 address in ipv6_ra_mode 'slaac' +This test evaluates the ability to assign IPv6 addresses in ipv6_ra_mode 'slaac' and ipv6_address_mode 'slaac', -and verify the ping6 available VM can ping all of the v4 addresses and other's -v6 addresses as well as the router's in the same network. Specifically it verifies that: +and verify the ping6 available VM can ping the other VM's v4 and v6 addresses as well as +the v6 subnet's gateway ip in the same network. Specifically it verifies that: * The IPv6 addresses in mode 'slaac' assigned successfully -* The VM can ping the IPv4 and IPv6 private addresses +* The VM can ping the other VM's IPv4 and IPv6 private addresses as well as the v6 subnet's gateway ip * All items created using create commands are able to be removed using the returned identifiers Post conditions @@ -1560,9 +1566,9 @@ Use case specification This test case evaluates IPv6 address assignment in ipv6_ra_mode 'slaac' and ipv6_address_mode 'slaac'. In this case, guest instance obtains IPv6 address from OpenStack managed radvd -using SLAAC. This test case then verifies the ping6 available VM can ping all -of the v4 addresses in another network and other's v6 addresses as well as the -router's in the same network, the reference is +using SLAAC. This test case then verifies the ping6 available VM can ping the other +VM's v4 address in one network and v6 address in another network as well as the +v6 subnet's gateway ip, the reference is tempest.scenario.test_network_v6.TestGettingAddress.test_dualnet_slaac_from_os @@ -1588,16 +1594,17 @@ Test execution ipv6_ra_mode 'slaac' and ipv6_address_mode 'slaac', storing the "id" parameter returned in the response * Test action 7: Connect the IPv6 subnet to the router, using the stored IPv6 subnet id * Test action 8: Boot two VMs on these two networks, storing the "id" parameters returned in the response -* Test action 9: Turn on 2nd NIC of each VM -* **Test assertion 1:** The vNICs of all VMs get all v6 addresses actually assigned +* Test action 9: Turn on 2nd NIC of each VM for the network created in test action 5 +* **Test assertion 1:** The 1st vNIC of each VM gets one v4 address assigned and + the 2nd vNIC of each VM gets one v6 address actually assigned * **Test assertion 2:** Each VM can ping the other's v4 private address -* **Test assertion 3:** The ping6 available VM can ping all of the other's v6 addresses - as well as the router's +* **Test assertion 3:** The ping6 available VM can ping the other's v6 address + as well as the v6 subnet's gateway ip * Test action 10: Delete the 2 VMs created in test action 8, using the stored ids * Test action 11: List all VMs, verifying the ids are no longer present * **Test assertion 4:** The two "id" parameters are not present in the VM list -* Test action 12: Delete the IPv4 subnet created in test action 2, using the stored ids -* Test action 13: Delete the IPv6 subnet created in test action 6, using the stored ids +* Test action 12: Delete the IPv4 subnet created in test action 2, using the stored id +* Test action 13: Delete the IPv6 subnet created in test action 6, using the stored id * Test action 14: List all subnets, verifying the ids are no longer present * **Test assertion 5:** The "id" parameters of IPv4 and IPv6 are not present in the list * Test action 15: Delete the 2 networks created in test action 1 and 5, using the stored ids @@ -1607,13 +1614,14 @@ Test execution Pass / fail criteria ''''''''''''''''''''' -This test evaluates the ability to assign IPv6 address in ipv6_ra_mode 'slaac' +This test evaluates the ability to assign IPv6 addresses in ipv6_ra_mode 'slaac' and ipv6_address_mode 'slaac', -and verify the ping6 available VM can ping all of the v4 addresses and other's -v6 addresses as well as the router's in another network. Specifically it verifies that: +and verify the ping6 available VM can ping the other VM's v4 address in one network and +v6 address in another network as well as the v6 subnet's gateway ip. Specifically it verifies that: * The IPv6 addresses in mode 'slaac' assigned successfully -* The VM can ping the IPv4 and IPv6 private addresses +* The VM can ping the other VM's IPv4 address in one network and IPv6 address + in another network as well as the v6 subnet's gateway ip * All items created using create commands are able to be removed using the returned identifiers Post conditions @@ -1635,10 +1643,10 @@ Use case specification This test case evaluates IPv6 address assignment in ipv6_ra_mode 'slaac' and ipv6_address_mode 'slaac'. -In this case, guest instance obtains IPv6 address from OpenStack managed radvd -using SLAAC. This test case then verifies the ping6 available VM can ping all -of the v4 addresses and other's v6 addresses as well as the router's in the -same network, the reference is +In this case, guest instance obtains IPv6 addresses from OpenStack managed radvd +using SLAAC. This test case then verifies the ping6 available VM can ping the other +VM's one v4 address and two v6 addresses with different prefixes as well as the v6 +subnets' gateway ips in the same network, the reference is tempest.scenario.test_network_v6.TestGettingAddress.test_multi_prefix_slaac @@ -1655,40 +1663,41 @@ Test execution * Test action 1: Create one network, storing the "id" parameter returned in the response * Test action 2: Create one IPv4 subnet of the created network, storing the "id - parameters returned in the response + parameter returned in the response * Test action 3: If there exists a public router, use it as the router. Otherwise, use the public network to create a router * Test action 4: Connect the IPv4 subnet to the router, using the stored IPv4 subnet id * Test action 5: Create two IPv6 subnets of the network created in test action 1 in ipv6_ra_mode 'slaac' and ipv6_address_mode 'slaac', storing the "id" parameters returned in the response -* Test action 6: Connect the two IPv6 subnets to the router, using the stored IPv6 subnet id +* Test action 6: Connect the two IPv6 subnets to the router, using the stored IPv6 subnet ids * Test action 7: Boot two VMs on this network, storing the "id" parameters returned in the response -* **Test assertion 1:** The vNICs of all VMs get all v6 addresses actually assigned +* **Test assertion 1:** The vNIC of each VM gets one v4 address and two v6 addresses with + different prefixes actually assigned * **Test assertion 2:** Each VM can ping the other's v4 private address -* **Test assertion 3:** The ping6 available VM can ping all of the other's v6 addresses - as well as the router's +* **Test assertion 3:** The ping6 available VM can ping the other's v6 addresses + as well as the v6 subnets' gateway ips * Test action 8: Delete the 2 VMs created in test action 7, using the stored ids * Test action 9: List all VMs, verifying the ids are no longer present * **Test assertion 4:** The two "id" parameters are not present in the VM list -* Test action 10: Delete the IPv4 subnet created in test action 2, using the stored ids +* Test action 10: Delete the IPv4 subnet created in test action 2, using the stored id * Test action 11: Delete two IPv6 subnets created in test action 5, using the stored ids * Test action 12: List all subnets, verifying the ids are no longer present * **Test assertion 5:** The "id" parameters of IPv4 and IPv6 are not present in the list -* Test action 13: Delete the network created in test action 1, using the stored ids +* Test action 13: Delete the network created in test action 1, using the stored id * Test action 14: List all networks, verifying the id is no longer present * **Test assertion 6:** The "id" parameter is not present in the network list Pass / fail criteria ''''''''''''''''''''' -This test evaluates the ability to assign IPv6 address in ipv6_ra_mode 'slaac' +This test evaluates the ability to assign IPv6 addresses in ipv6_ra_mode 'slaac' and ipv6_address_mode 'slaac', -and verify the ping6 available VM can ping all of the v4 addresses and other's -v6 addresses with different prefixes as well as the router's in the same network. +and verify the ping6 available VM can ping the other VM's v4 address and two +v6 addresses with different prefixes as well as the v6 subnets' gateway ips in the same network. Specifically it verifies that: * The different prefixes IPv6 addresses in mode 'slaac' assigned successfully -* The VM can ping the IPv4 and IPv6 private addresses +* The VM can ping the other VM's IPv4 and IPv6 private addresses as well as the v6 subnets' gateway ips * All items created using create commands are able to be removed using the returned identifiers Post conditions @@ -1710,10 +1719,10 @@ Use case specification This test case evaluates IPv6 address assignment in ipv6_ra_mode 'slaac' and ipv6_address_mode 'slaac'. -In this case, guest instance obtains IPv6 address from OpenStack managed radvd -using SLAAC. This test case then verifies the ping6 available VM can ping all -of the v4 addresses in another network and other's v6 addresses as well as the -router's in the same network, the reference is +In this case, guest instance obtains IPv6 addresses from OpenStack managed radvd +using SLAAC. This test case then verifies the ping6 available VM can ping the other +VM's v4 address in one network and two v6 addresses with different prefixes in another +network as well as the v6 subnets' gateway ips, the reference is tempest.scenario.test_network_v6.TestGettingAddress.test_dualnet_multi_prefix_slaac @@ -1730,24 +1739,25 @@ Test execution * Test action 1: Create one network, storing the "id" parameter returned in the response * Test action 2: Create one IPv4 subnet of the created network, storing the "id" - parameters returned in the response + parameter returned in the response * Test action 3: If there exists a public router, use it as the router. Otherwise, use the public network to create a router * Test action 4: Connect the IPv4 subnet to the router, using the stored IPv4 subnet id -* Test action 5: Create another network, storing the "id" parameters returned in the response +* Test action 5: Create another network, storing the "id" parameter returned in the response * Test action 6: Create two IPv6 subnets of network created in test action 5 in ipv6_ra_mode 'slaac' and ipv6_address_mode 'slaac', storing the "id" parameters returned in the response * Test action 7: Connect the two IPv6 subnets to the router, using the stored IPv6 subnet ids * Test action 8: Boot two VMs on these two networks, storing the "id" parameters returned in the response -* Test action 9: Turn on 2nd NIC of each VM -* **Test assertion 1:** The vNICs of all VMs get all v6 addresses actually assigned +* Test action 9: Turn on 2nd NIC of each VM for the network created in test action 5 +* **Test assertion 1:** The vNIC of each VM gets one v4 address and two v6 addresses + with different prefixes actually assigned * **Test assertion 2:** Each VM can ping the other's v4 private address -* **Test assertion 3:** The ping6 available VM can ping all of the other's v6 addresses - as well as the router's +* **Test assertion 3:** The ping6 available VM can ping the other's v6 addresses + as well as the v6 subnets' gateway ips * Test action 10: Delete the 2 VMs created in test action 8, using the stored ids * Test action 11: List all VMs, verifying the ids are no longer present * **Test assertion 4:** The two "id" parameters are not present in the VM list -* Test action 12: Delete the IPv4 subnet created in test action 2, using the stored ids +* Test action 12: Delete the IPv4 subnet created in test action 2, using the stored id * Test action 13: Delete two IPv6 subnets created in test action 6, using the stored ids * Test action 14: List all subnets, verifying the ids are no longer present * **Test assertion 5:** The "id" parameters of IPv4 and IPv6 are not present in the list @@ -1758,14 +1768,14 @@ Test execution Pass / fail criteria ''''''''''''''''''''' -This test evaluates the ability to assign IPv6 address in ipv6_ra_mode 'slaac' +This test evaluates the ability to assign IPv6 addresses in ipv6_ra_mode 'slaac' and ipv6_address_mode 'slaac', -and verify the ping6 available VM can ping all of the v4 addresses and other's -v6 addresses with different prefixes as well as the router's in another network. +and verify the ping6 available VM can ping the other VM's v4 address in one network and two +v6 addresses with different prefixes in another network as well as the v6 subnets' gateway ips. Specifically it verifies that: * The IPv6 addresses in mode 'slaac' assigned successfully -* The VM can ping the IPv4 and IPv6 private addresses +* The VM can ping the other VM's IPv4 and IPv6 private addresses as well as the v6 subnets' gateway ips * All items created using create commands are able to be removed using the returned identifiers Post conditions @@ -1774,3 +1784,4 @@ Post conditions None + diff --git a/dovetail/conf/cmd_config.yml b/dovetail/conf/cmd_config.yml index aa27f293..a5b262d1 100644 --- a/dovetail/conf/cmd_config.yml +++ b/dovetail/conf/cmd_config.yml @@ -50,7 +50,7 @@ cli: flags: - '--report' - '-r' - help: 'push results to DB (e.g. --report http://192.168.135.2:8000/api/v1)' + help: 'push results to DB (e.g. --report http://192.168.135.2:8000/api/v1/results)' offline: flags: - '--offline' diff --git a/dovetail/conf/yardstick_config.yml b/dovetail/conf/yardstick_config.yml index 86a768d5..56ad75a5 100644 --- a/dovetail/conf/yardstick_config.yml +++ b/dovetail/conf/yardstick_config.yml @@ -25,3 +25,6 @@ yardstick: file_path: 'yardstick.log' key_path: '/root/.ssh/id_rsa' openrc: '/etc/yardstick/openstack.creds' + yard_conf: + src_file: '/home/opnfv/repos/yardstick/etc/yardstick/yardstick.conf.sample' + dest_file: '/etc/yardstick/yardstick.conf' diff --git a/dovetail/container.py b/dovetail/container.py index 2d9701bf..1a5867a7 100644 --- a/dovetail/container.py +++ b/dovetail/container.py @@ -76,8 +76,7 @@ class Container(object): if 'sdnvpn' in testcase_name: ins_type = "-e INSTALLER_TYPE=netvirt" scenario = " -e DEPLOY_SCENARIO=bgpvpn" - node = " -e NODE_NAME=master" - envs = "%s %s %s" % (ins_type, scenario, node) + envs = "%s %s" % (ins_type, scenario) dovetail_config = dt_cfg.dovetail_config if dovetail_config['report_dest'].startswith("http"): @@ -103,11 +102,6 @@ class Container(object): cls.logger.error("Can't find any external network.") return None - if dovetail_config['report_dest'].startswith("http"): - envs = envs + " -e DISPATCHER=http" - envs = envs + " -e TARGET=%s" % dovetail_config['report_dest'] - envs = envs + " -e NODE_NAME=master" - log_vol = '-v %s:%s ' % (dovetail_config['result_dir'], dovetail_config["yardstick"]['result']['log']) @@ -141,7 +135,7 @@ class Container(object): # CI_DEBUG is used for showing the debug logs of the upstream projects # BUILD_TAG is the unique id for this test - envs = ' -e CI_DEBUG=true' + envs = ' -e CI_DEBUG=true -e NODE_NAME=master' envs = envs + ' -e BUILD_TAG=%s-%s' % (dovetail_config['build_tag'], testcase_name) @@ -212,6 +206,10 @@ class Container(object): src_path = os.path.join(prefix_path, 'pre_config', file_name) dest_path = '/home/opnfv/functest/images' Container.pre_copy(container_id, src_path, dest_path) + + if type.lower() == 'yardstick': + cls.set_yardstick_conf_file(container_id) + return container_id @classmethod @@ -306,3 +304,18 @@ class Container(object): return (1, 'src_path or dest_path is empty') cmd = 'cp %s %s' % (src_path, dest_path) return cls.exec_cmd(container_id, cmd, exit_on_error) + + @classmethod + def set_yardstick_conf_file(cls, container_id): + valid_type = 'yardstick' + src = dt_cfg.dovetail_config[valid_type]['yard_conf']['src_file'] + dest = dt_cfg.dovetail_config[valid_type]['yard_conf']['dest_file'] + cls.pre_copy(container_id, src, dest) + url = dt_cfg.dovetail_config['report_dest'] + if url.startswith("http"): + cmd = ("sed -i '16s#http://127.0.0.1:8000/results#{}#g' {}" + .format(url, dest)) + cls.exec_cmd(container_id, cmd) + if url.lower() == 'file': + cmd = ("sed -i '12s/http/file/g' {}".format(dest)) + cls.exec_cmd(container_id, cmd) |