Merge "NSX|V: be able to deal with more than 256 edges"
This commit is contained in:
commit
c1a9223378
@ -262,16 +262,6 @@ class EdgeApplianceDriver(object):
|
||||
|
||||
return status_level
|
||||
|
||||
def get_edges_statuses(self):
|
||||
edges_status_level = {}
|
||||
edges = self._get_edges()
|
||||
for edge in edges['edgePage'].get('data', []):
|
||||
edge_id = edge['id']
|
||||
status = edge['edgeStatus']
|
||||
edges_status_level[edge_id] = self._edge_status_to_level(status)
|
||||
|
||||
return edges_status_level
|
||||
|
||||
def get_interface(self, edge_id, vnic_index):
|
||||
# get vnic interface address groups
|
||||
try:
|
||||
@ -372,13 +362,6 @@ class EdgeApplianceDriver(object):
|
||||
LOG.debug("Deletion complete vnic %(vnic_index)s: on edge %(edge_id)s",
|
||||
{'vnic_index': index, 'edge_id': edge_id})
|
||||
|
||||
def _get_edges(self):
|
||||
try:
|
||||
return self.vcns.get_edges()[1]
|
||||
except exceptions.VcnsApiException as e:
|
||||
LOG.exception("VCNS: Failed to get edges:\n%s", e.response)
|
||||
raise e
|
||||
|
||||
def deploy_edge(self, context, router_id, name, internal_network,
|
||||
dist=False, loadbalancer_enable=True,
|
||||
appliance_size=nsxv_constants.LARGE,
|
||||
|
@ -236,10 +236,26 @@ class Vcns(object):
|
||||
uri = "%s/%s" % (URI_PREFIX, edge_id)
|
||||
return self.do_request(HTTP_GET, uri, decode=True)
|
||||
|
||||
def get_edges(self):
|
||||
uri = URI_PREFIX
|
||||
def _get_edges(self, startindex=0):
|
||||
uri = '%s?startIndex=%d' % (URI_PREFIX, startindex)
|
||||
return self.do_request(HTTP_GET, uri, decode=True)
|
||||
|
||||
def get_edges(self):
|
||||
edges = []
|
||||
h, d = self._get_edges()
|
||||
edges.extend(d['edgePage']['data'])
|
||||
paging_info = d['edgePage']['pagingInfo']
|
||||
page_size = int(paging_info['pageSize'])
|
||||
count = int(paging_info['totalCount'])
|
||||
LOG.debug("There are total %s edges and page size is %s",
|
||||
count, page_size)
|
||||
pages = count / page_size + 1
|
||||
for i in range(1, pages):
|
||||
start_index = page_size * i
|
||||
h, d = self._get_edges(start_index)
|
||||
edges.extend(d['edgePage']['data'])
|
||||
return edges
|
||||
|
||||
def get_edge_syslog(self, edge_id):
|
||||
uri = "%s/%s/syslog/config" % (URI_PREFIX, edge_id)
|
||||
return self.do_request(HTTP_GET, uri, decode=True)
|
||||
|
@ -101,8 +101,7 @@ def get_nsxv_backend_edges():
|
||||
"""Get a list of all the backend edges and some of their attributes
|
||||
"""
|
||||
nsxv = get_nsxv_client()
|
||||
edges = nsxv.get_edges()[1]
|
||||
edges = edges['edgePage'].get('data', [])
|
||||
edges = nsxv.get_edges()
|
||||
backend_edges = []
|
||||
for edge in edges:
|
||||
# get all the relevant backend information for this edge
|
||||
|
@ -411,9 +411,6 @@ class FakeVcns(object):
|
||||
return (header, response)
|
||||
|
||||
def get_edges(self):
|
||||
header = {
|
||||
'status': 200
|
||||
}
|
||||
edges = []
|
||||
for edge_id in self._edges:
|
||||
edges.append({
|
||||
@ -421,12 +418,7 @@ class FakeVcns(object):
|
||||
'edgeStatus': 'GREEN',
|
||||
'name': self._edges[edge_id]['name']
|
||||
})
|
||||
response = {
|
||||
'edgePage': {
|
||||
'data': edges
|
||||
}
|
||||
}
|
||||
return (header, response)
|
||||
return edges
|
||||
|
||||
def get_vdn_switch(self, dvs_id):
|
||||
header = {
|
||||
|
@ -380,16 +380,6 @@ class VcnsDriverTestCase(base.BaseTestCase):
|
||||
status = self.vcns_driver.get_edge_status(self.edge_id)
|
||||
self.assertEqual(vcns_const.RouterStatus.ROUTER_STATUS_ACTIVE, status)
|
||||
|
||||
def test_get_edges(self):
|
||||
self._deploy_edge()
|
||||
edges = self.vcns_driver.get_edges_statuses()
|
||||
found = False
|
||||
for edge_id, status in six.iteritems(edges):
|
||||
if edge_id == self.edge_id:
|
||||
found = True
|
||||
break
|
||||
self.assertTrue(found)
|
||||
|
||||
def test_update_nat_rules(self):
|
||||
self._deploy_edge()
|
||||
snats = [{
|
||||
|
Loading…
x
Reference in New Issue
Block a user