Fix member subnet id on a fully populated LB
When a fully populated LB is created, if the member is not created indicating the subnet_id to whom it belongs, the LB vip_network_id is inherit by error as member.subnet_id. This patch fix this behaviour to inherit the member.subnet_id from the loadbalancer.vip_subnet_id that is always passed from Octavia API when call is redirect to the OVN-provider. Closes-Bug: #2079813 Change-Id: I098afab053119d1a6eac86a12c1a20cc312b06ef
This commit is contained in:
parent
0673f16fc6
commit
6e2ba02339
ovn_octavia_provider
@ -115,7 +115,7 @@ class OvnProviderDriver(driver_base.ProviderDriver):
|
||||
self.pool_create(pool)
|
||||
for member in pool.members:
|
||||
if not member.subnet_id:
|
||||
member.subnet_id = loadbalancer.vip_network_id
|
||||
member.subnet_id = loadbalancer.vip_subnet_id
|
||||
self.member_create(member)
|
||||
|
||||
def loadbalancer_delete(self, loadbalancer, cascade=False):
|
||||
|
@ -183,7 +183,8 @@ class TestOvnProviderDriver(ovn_base.TestOvnOctaviaBase):
|
||||
name='favorite_lb0',
|
||||
project_id=self.project_id,
|
||||
vip_address=self.vip_address,
|
||||
vip_network_id=self.vip_network_id)
|
||||
vip_network_id=self.vip_network_id,
|
||||
vip_subnet_id=self.vip_subnet_id)
|
||||
self.ref_lb0 = data_models.LoadBalancer(
|
||||
admin_state_up=False,
|
||||
listeners=[self.ref_listener],
|
||||
@ -809,13 +810,13 @@ class TestOvnProviderDriver(ovn_base.TestOvnOctaviaBase):
|
||||
'address': self.ref_member.address,
|
||||
'protocol_port': self.ref_member.protocol_port,
|
||||
'pool_id': self.ref_member.pool_id,
|
||||
'subnet_id': self.ref_lb_fully_populated.vip_network_id,
|
||||
'subnet_id': self.ref_lb_fully_populated.vip_subnet_id,
|
||||
'admin_state_up': self.ref_member.admin_state_up}
|
||||
info_dvr = {
|
||||
'id': self.ref_member.member_id,
|
||||
'address': self.ref_member.address,
|
||||
'pool_id': self.ref_member.pool_id,
|
||||
'subnet_id': self.ref_lb_fully_populated.vip_network_id,
|
||||
'subnet_id': self.ref_lb_fully_populated.vip_subnet_id,
|
||||
'action': ovn_const.REQ_INFO_MEMBER_ADDED}
|
||||
expected_lb_dict = {
|
||||
'type': ovn_const.REQ_TYPE_LB_CREATE,
|
||||
|
Loading…
x
Reference in New Issue
Block a user