Prevent raising exception if IP address is set in _hotplug_server
In "_hotplug_server", when the new interfaces is added to the server, the function tries to configure the Neutron assigned IP address in this new interface. Although the IP addresses are listed before to check that the new port IP is not present, as reported in the bug, sometimes the address is already set when the "ip a add" command is executed. Change-Id: I9594482735b482eb477f342dfd9f265a41eb002d Closes-Bug: #1869899
This commit is contained in:
parent
8d1974efa5
commit
15d63094c6
@ -297,9 +297,19 @@ class TestNetworkBasicOps(manager.NetworkScenarioTest):
|
|||||||
ip_mask = CONF.network.project_network_mask_bits
|
ip_mask = CONF.network.project_network_mask_bits
|
||||||
# check if the address is not already in use, if not, set it
|
# check if the address is not already in use, if not, set it
|
||||||
if ' ' + ip_address + '/' + str(ip_mask) not in ip_output:
|
if ' ' + ip_address + '/' + str(ip_mask) not in ip_output:
|
||||||
|
try:
|
||||||
ssh_client.exec_command("sudo ip addr add %s/%s dev %s" % (
|
ssh_client.exec_command("sudo ip addr add %s/%s dev %s" % (
|
||||||
ip_address, ip_mask, new_nic))
|
ip_address, ip_mask, new_nic))
|
||||||
ssh_client.exec_command("sudo ip link set %s up" % new_nic)
|
ssh_client.exec_command("sudo ip link set %s up" % new_nic)
|
||||||
|
except exceptions.SSHExecCommandFailed as exc:
|
||||||
|
if 'RTNETLINK answers: File exists' in str(exc):
|
||||||
|
LOG.debug(
|
||||||
|
'IP address %(ip_address)s is already set in device '
|
||||||
|
'%(device)s\nPrevious "ip a" output: %(ip_output)s',
|
||||||
|
{'ip_address': ip_address, 'device': new_nic,
|
||||||
|
'ip_output': ip_output})
|
||||||
|
else:
|
||||||
|
raise exc
|
||||||
|
|
||||||
def _get_server_nics(self, ssh_client):
|
def _get_server_nics(self, ssh_client):
|
||||||
reg = re.compile(r'(?P<num>\d+): (?P<nic_name>\w+)[@]?.*:')
|
reg = re.compile(r'(?P<num>\d+): (?P<nic_name>\w+)[@]?.*:')
|
||||||
|
Loading…
Reference in New Issue
Block a user