Merge "Add native zuulv3 job for zfsonlinux"
diff --git a/manila_tempest_tests/tests/scenario/manager.py b/manila_tempest_tests/tests/scenario/manager.py
index dede47a..c83dfe6 100644
--- a/manila_tempest_tests/tests/scenario/manager.py
+++ b/manila_tempest_tests/tests/scenario/manager.py
@@ -734,14 +734,15 @@
return self.os_admin.networks_client.list_networks()['networks']
def create_floating_ip(self, thing, external_network_id=None,
- port_id=None, client=None):
+ port_id=None, ip_addr=None, client=None):
"""Create a floating IP and associates to a resource/port on Neutron"""
if not external_network_id:
external_network_id = CONF.network.public_network_id
if not client:
client = self.floating_ips_client
if not port_id:
- port_id, ip4 = self._get_server_port_id_and_ip4(thing)
+ port_id, ip4 = self._get_server_port_id_and_ip4(thing,
+ ip_addr=ip_addr)
else:
ip4 = None
result = client.create_floatingip(
diff --git a/manila_tempest_tests/tests/scenario/manager_share.py b/manila_tempest_tests/tests/scenario/manager_share.py
index eaffa35..a670876 100644
--- a/manila_tempest_tests/tests/scenario/manager_share.py
+++ b/manila_tempest_tests/tests/scenario/manager_share.py
@@ -158,10 +158,11 @@
def init_remote_client(self, instance):
server_ip = None
if self.ipv6_enabled:
- server_ip = self._get_ipv6_server_ip(instance)
+ server_ip = self._get_ip_server_ip(instance, ip_version=6)
if not server_ip:
+ ip_addr = self._get_ip_server_ip(instance)
# Obtain a floating IP
- floating_ip = self.create_floating_ip(instance)
+ floating_ip = self.create_floating_ip(instance, ip_addr=ip_addr)
self.floating_ips[instance['id']] = floating_ip
server_ip = floating_ip['floating_ip_address']
@@ -328,7 +329,7 @@
client = client or self.shares_v2_client
if not CONF.share.multitenancy_enabled:
if self.ipv6_enabled and not self.storage_network:
- server_ip = self._get_ipv6_server_ip(instance)
+ server_ip = self._get_ip_server_ip(instance, ip_version=6)
else:
server_ip = (
CONF.share.override_ip_for_nfs_access
@@ -379,15 +380,15 @@
return locations
- def _get_ipv6_server_ip(self, instance):
- ipv6_addrs = []
+ def _get_ip_server_ip(self, instance, ip_version=4):
+ ip_addrs = []
for network_name, nic_list in instance['addresses'].items():
if network_name == self.storage_network_name:
continue
for nic_data in nic_list:
- if nic_data['version'] == 6:
- ipv6_addrs.append(nic_data['addr'])
- return ipv6_addrs[0] if ipv6_addrs else None
+ if nic_data['version'] == ip_version:
+ ip_addrs.append(nic_data['addr'])
+ return ip_addrs[0] if ip_addrs else None
def _create_share(self, share_protocol=None, size=None, name=None,
snapshot_id=None, description=None, metadata=None,