Merge "Fix create_vip_port function in amphorav1"

This commit is contained in:
Zuul 2022-09-12 14:50:38 +00:00 committed by Gerrit Code Review
commit 41fd0107b6
4 changed files with 13 additions and 7 deletions

View File

@ -124,7 +124,9 @@ class AmphoraProviderDriver(driver_base.ProviderDriver):
operator_fault_string=message)
try:
vip = network_driver.allocate_vip(lb_obj)
# allocated_vip returns (vip, add_vips), skipping the 2nd element
# as amphorav1 doesn't support add_vips
vip = network_driver.allocate_vip(lb_obj)[0]
except network_base.AllocateVIPException as e:
message = str(e)
if getattr(e, 'orig_msg', None) is not None:
@ -134,7 +136,7 @@ class AmphoraProviderDriver(driver_base.ProviderDriver):
LOG.info('Amphora provider created VIP port %s for load balancer %s.',
vip.port_id, loadbalancer_id)
return driver_utils.vip_dict_to_provider_dict(vip.to_dict())
return driver_utils.vip_dict_to_provider_dict(vip.to_dict()), []
# TODO(johnsom) convert this to octavia_lib constant flavor
# once octavia is transitioned to use octavia_lib

View File

@ -585,7 +585,9 @@ class AllocateVIP(BaseNetworkTask):
loadbalancer.vip.subnet_id,
loadbalancer.vip.ip_address,
loadbalancer.id)
vip = self.network_driver.allocate_vip(loadbalancer)
# allocated_vips returns (vip, add_vips), skipping the 2nd element as
# amphorav1 doesn't support add_vips
vip = self.network_driver.allocate_vip(loadbalancer)[0]
LOG.info("Allocated vip with port id %s, subnet id %s, ip address %s "
"for load balancer %s",
loadbalancer.vip.port_id,

View File

@ -34,13 +34,15 @@ class TestAmphoraDriver(base.TestRpc):
def test_create_vip_port(self, mock_get_net_driver):
mock_net_driver = mock.MagicMock()
mock_get_net_driver.return_value = mock_net_driver
mock_net_driver.allocate_vip.return_value = self.sample_data.db_vip
mock_net_driver.allocate_vip.return_value = (self.sample_data.db_vip,
[])
provider_vip_dict = self.amp_driver.create_vip_port(
provider_vip_dict, add_vips = self.amp_driver.create_vip_port(
self.sample_data.lb_id, self.sample_data.project_id,
self.sample_data.provider_vip_dict)
self.assertEqual(self.sample_data.provider_vip_dict, provider_vip_dict)
self.assertEqual([], add_vips)
@mock.patch('octavia.common.utils.get_network_driver')
def test_create_vip_port_without_port_security_enabled(

View File

@ -1308,7 +1308,7 @@ class TestNetworkTasks(base.TestCase):
mock_get_net_driver.return_value = mock_driver
net = network_tasks.AllocateVIP()
mock_driver.allocate_vip.return_value = LB.vip
mock_driver.allocate_vip.return_value = (LB.vip, [])
mock_driver.reset_mock()
self.assertEqual(LB.vip, net.execute(LB))
@ -1331,7 +1331,7 @@ class TestNetworkTasks(base.TestCase):
mock_get_net_driver.return_value = mock_driver
net = network_tasks.AllocateVIPforFailover()
mock_driver.allocate_vip.return_value = LB.vip
mock_driver.allocate_vip.return_value = (LB.vip, [])
mock_driver.reset_mock()
self.assertEqual(LB.vip, net.execute(LB))