Don’t error if dhcp_agent_scheduler not enabled
First check to see if dhcp_agent_scheduler is enabled before attempting to list dhcp agents hosting network. If it is not enabled, just return an empty list. Also updated tests as necessary. Change-Id: I5f14a5c364f8f1f362f788fb005fb773cae7b9f4 Closes-Bug: #1498277
This commit is contained in:
parent
fbad28fdd7
commit
e33cbd6d6c
@ -126,6 +126,9 @@ class NetworkAgentTests(test.BaseAdminViewTests):
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'mac-learning')\
|
||||
.AndReturn(False)
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'dhcp_agent_scheduler')\
|
||||
.AndReturn(True)
|
||||
self.mox.ReplayAll()
|
||||
|
||||
form_data = {'action': 'agents__delete__%s' % agent_id}
|
||||
@ -155,6 +158,9 @@ class NetworkAgentTests(test.BaseAdminViewTests):
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'mac-learning')\
|
||||
.AndReturn(False)
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'dhcp_agent_scheduler')\
|
||||
.AndReturn(True)
|
||||
self.mox.ReplayAll()
|
||||
|
||||
form_data = {'action': 'agents__delete__%s' % agent_id}
|
||||
|
@ -403,6 +403,9 @@ class NetworkPortTests(test.BaseAdminViewTests):
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'mac-learning')\
|
||||
.AndReturn(mac_learning)
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'dhcp_agent_scheduler')\
|
||||
.AndReturn(True)
|
||||
self.mox.ReplayAll()
|
||||
|
||||
form_data = {'action': 'ports__delete__%s' % port.id}
|
||||
@ -442,6 +445,9 @@ class NetworkPortTests(test.BaseAdminViewTests):
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'mac-learning')\
|
||||
.AndReturn(mac_learning)
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'dhcp_agent_scheduler')\
|
||||
.AndReturn(True)
|
||||
self.mox.ReplayAll()
|
||||
|
||||
form_data = {'action': 'ports__delete__%s' % port.id}
|
||||
|
@ -318,6 +318,9 @@ class NetworkSubnetTests(test.BaseAdminViewTests):
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'mac-learning')\
|
||||
.AndReturn(mac_learning)
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'dhcp_agent_scheduler')\
|
||||
.AndReturn(True)
|
||||
self.mox.ReplayAll()
|
||||
|
||||
form_data = {'action': 'subnets__delete__%s' % subnet.id}
|
||||
@ -357,6 +360,9 @@ class NetworkSubnetTests(test.BaseAdminViewTests):
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'mac-learning')\
|
||||
.AndReturn(mac_learning)
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'dhcp_agent_scheduler')\
|
||||
.AndReturn(True)
|
||||
self.mox.ReplayAll()
|
||||
|
||||
form_data = {'action': 'subnets__delete__%s' % subnet.id}
|
||||
|
@ -107,6 +107,9 @@ class NetworkTests(test.BaseAdminViewTests):
|
||||
api.neutron.is_extension_supported(
|
||||
IsA(http.HttpRequest),
|
||||
'dhcp_agent_scheduler').AndReturn(True)
|
||||
api.neutron.is_extension_supported(
|
||||
IsA(http.HttpRequest),
|
||||
'dhcp_agent_scheduler').AndReturn(True)
|
||||
|
||||
self.mox.ReplayAll()
|
||||
|
||||
@ -149,6 +152,9 @@ class NetworkTests(test.BaseAdminViewTests):
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'mac-learning')\
|
||||
.AndReturn(mac_learning)
|
||||
api.neutron.is_extension_supported(
|
||||
IsA(http.HttpRequest),
|
||||
'dhcp_agent_scheduler').AndReturn(True)
|
||||
|
||||
self.mox.ReplayAll()
|
||||
|
||||
@ -194,6 +200,9 @@ class NetworkTests(test.BaseAdminViewTests):
|
||||
api.neutron.is_extension_supported(
|
||||
IsA(http.HttpRequest),
|
||||
'dhcp_agent_scheduler').AndReturn(True)
|
||||
api.neutron.is_extension_supported(
|
||||
IsA(http.HttpRequest),
|
||||
'dhcp_agent_scheduler').AndReturn(True)
|
||||
|
||||
self.mox.ReplayAll()
|
||||
|
||||
@ -242,6 +251,9 @@ class NetworkTests(test.BaseAdminViewTests):
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'dhcp_agent_scheduler')\
|
||||
.AndReturn(True)
|
||||
api.neutron.is_extension_supported(IsA(http.HttpRequest),
|
||||
'dhcp_agent_scheduler')\
|
||||
.AndReturn(True)
|
||||
|
||||
self.mox.ReplayAll()
|
||||
|
||||
|
@ -131,13 +131,16 @@ class DetailView(tables.MultiTableView):
|
||||
|
||||
def get_agents_data(self):
|
||||
agents = []
|
||||
try:
|
||||
network_id = self.kwargs['network_id']
|
||||
agents = api.neutron.list_dhcp_agent_hosting_networks(self.request,
|
||||
network_id)
|
||||
except Exception:
|
||||
msg = _('Unable to list dhcp agents hosting network.')
|
||||
exceptions.handle(self.request, msg)
|
||||
if api.neutron.is_extension_supported(self.request,
|
||||
'dhcp_agent_scheduler'):
|
||||
try:
|
||||
network_id = self.kwargs['network_id']
|
||||
agents = api.neutron.list_dhcp_agent_hosting_networks(
|
||||
self.request,
|
||||
network_id)
|
||||
except Exception:
|
||||
msg = _('Unable to list dhcp agents hosting network.')
|
||||
exceptions.handle(self.request, msg)
|
||||
return agents
|
||||
|
||||
@memoized.memoized_method
|
||||
|
Loading…
Reference in New Issue
Block a user