Skip to content

Commit

Permalink
Fix to support member-update
Browse files Browse the repository at this point in the history
This fix takes care of the case where member
update does not have pool_id in the request.
Instead of erroring out, it now takes the pool_id
from the member object.

Closes-Bug: #1462456
Change-Id: Id5a79279144c62dea7c72eb119b68b7e3770f5fa
  • Loading branch information
Varun Lodaya authored and Varun Lodaya committed Aug 17, 2015
1 parent 96137c2 commit 693ddef
Showing 1 changed file with 11 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -175,12 +175,18 @@ def update_properties(self, member_db, id, m):
return False

def update_object(self, member_db, id, m):
if 'pool_id' in m and self._get_member_pool_id(member_db) != m['pool_id']:
try:
pool = self._api.loadbalancer_pool_read(id=m['pool_id'])
except NoIdError:
raise loadbalancer.PoolNotFound(pool_id=m['pool_id'])
old_pool_id = self._get_member_pool_id(member_db)
if 'pool_id' in m and m['pool_id'] != old_pool_id:
pool_id = m['pool_id']
else:
pool_id = old_pool_id

try:
pool = self._api.loadbalancer_pool_read(id=pool_id)
except NoIdError:
raise loadbalancer.PoolNotFound(pool_id=pool_id)

if pool_id != old_pool_id:
db_props = member_db.get_loadbalancer_member_properties()
members = pool.get_loadbalancer_members()
for member in members or []:
Expand Down

0 comments on commit 693ddef

Please sign in to comment.