Fix an attribute error on listing AZs with filters

Change-Id: Ib84b1f869f936cf45abb2fab8e14e92d714cdbd3
Closes-Bug: #1768952
(cherry picked from commit 37b66a4700)
This commit is contained in:
Hongbin Lu 2018-05-03 20:15:58 +00:00 committed by Slawek Kaplonski
parent 26894447b3
commit 593bce98a0
2 changed files with 6 additions and 1 deletions

View File

@ -72,7 +72,7 @@ class AgentAvailabilityZoneMixin(az_ext.AvailabilityZonePluginBase):
def _list_availability_zones(self, context, filters=None):
result = {}
filters = filters or {}
agents = agent_obj.Agent.get_objects(context, filters)
agents = agent_obj.Agent.get_objects(context, **filters)
for agent in agents:
if not agent.availability_zone:
continue

View File

@ -70,6 +70,11 @@ class TestAZAgentCase(AZTestCommon):
res = self._list('availability_zones')
azs = res['availability_zones']
self.assertItemsEqual(expected, azs)
# list with filters
res = self._list('availability_zones',
query_params="availability_zone=nova1")
azs = res['availability_zones']
self.assertItemsEqual(expected[:1], azs)
# not admin case
ctx = context.Context('', 'noadmin')
res = self._list('availability_zones', neutron_context=ctx)