Skip to content

Commit eba3964

Browse files
committed
finish cleaning up references to old network-groups API endpoint
1 parent f1046f7 commit eba3964

File tree

4 files changed

+25
-17
lines changed

4 files changed

+25
-17
lines changed

netfoundry/ctl.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ def login(cli):
156156
summary_table = []
157157
summary_table.append(['Caller ID', f"{summary_object['caller']['name']} ({summary_object['caller']['email']}) in {organization.label} ({organization.name})"])
158158
if network_group:
159-
summary_table.append(['Network Resource Group', f"{summary_object['network_group']['name']} ({summary_object['network_group']['organizationShortName']}) with {summary_object['network_group']['networks_count']} networks"])
159+
summary_table.append(['Network Resource Group', f"{summary_object['network_group']['name']} ({summary_object['network_group']['shortName']}) with {summary_object['network_group']['networks_count']} networks"])
160160
if network:
161161
summary_table.append(['Configured Network', f"{summary_object['network']['name']} - {summary_object['network']['productVersion']} - {summary_object['network']['status']}"])
162162
if cli.config.general.borders:
@@ -687,13 +687,11 @@ def list(cli, echo: bool = True, spinner: object = None):
687687
valid_keys = valid_keys.union(match.keys())
688688

689689
# intersection of the set of valid, observed keys in the first match
690-
default_keys = ['name', 'label', 'organizationShortName', 'type', 'description',
690+
default_keys = ['name', 'label', 'shortName', 'type', 'description',
691691
'edgeRouterAttributes', 'serviceAttributes', 'endpointAttributes',
692692
'status', 'zitiId', 'provider', 'locationCode', 'ipAddress', 'networkVersion',
693693
'active', 'default', 'region', 'size', 'attributes', 'email', 'productVersion',
694694
'address', 'binding', 'component']
695-
if cli.config.list.names: # include identity IDs if --names
696-
default_keys.extend(IDENTITY_ID_PROPERTIES)
697695
if cli.args.keys:
698696
valid_keys = valid_keys.intersection(cli.args.keys)
699697
else:

netfoundry/network_group.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,14 @@ def __init__(self, Organization: object, network_group_id: str = None, network_g
2828
self.network_group_id = network_group_id
2929
network_group_matches = [ng for ng in self.network_groups if ng['id'] == network_group_id]
3030
if len(network_group_matches) == 1:
31-
self.network_group_name = network_group_matches[0]['organizationShortName']
31+
self.network_group_name = network_group_matches[0]['shortName']
3232
self.logger.debug(f"found one match for group id '{network_group_id}'")
3333
else:
3434
raise RuntimeError(f"there was not exactly one network group matching the id '{network_group_id}'")
3535
# TODO: review the use of org short name ref https://mattermost.tools.netfoundry.io/netfoundry/pl/gegyzuybypb9jxnrw1g1imjywh
3636
elif network_group_name:
3737
self.network_group_name = network_group_name
38-
network_group_matches = [ng for ng in self.network_groups if caseless_equal(ng['organizationShortName'], self.network_group_name)]
38+
network_group_matches = [ng for ng in self.network_groups if caseless_equal(ng['shortName'], self.network_group_name)]
3939
if len(network_group_matches) == 1:
4040
self.network_group_id = network_group_matches[0]['id']
4141
self.logger.debug(f"found one match for group short name '{network_group_name}'")
@@ -44,10 +44,10 @@ def __init__(self, Organization: object, network_group_id: str = None, network_g
4444
elif len(self.network_groups) > 0:
4545
# first network group is typically the only network group
4646
self.network_group_id = self.network_groups[0]['id']
47-
self.network_group_name = normalize_caseless(self.network_groups[0]['organizationShortName'])
47+
self.network_group_name = normalize_caseless(self.network_groups[0]['shortName'])
4848
# warn if there are other groups
4949
if len(self.network_groups) > 1:
50-
self.logger.warning(f"using first network group {self.network_group_name} and ignoring {len(self.network_groups) - 1} other(s) e.g. {self.network_groups[1]['organizationShortName']}, etc...")
50+
self.logger.warning(f"using first network group {self.network_group_name} and ignoring {len(self.network_groups) - 1} other(s) e.g. {self.network_groups[1]['shortName']}, etc...")
5151
elif len(self.network_groups) == 1:
5252
self.logger.debug(f"using the only available network group: {self.network_group_name}")
5353
else:

netfoundry/organization.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,12 @@ def __init__(self,
8080
else:
8181
self.verify = False
8282

83-
self.gateway = gateway
83+
# users of older versions of nfsupport-cli will send literal None until they upgrade to a version that provides the --gateway option
84+
if gateway is None:
85+
self.gateway = "gateway"
86+
else:
87+
self.gateway = gateway
88+
8489
self.logger.debug(f"got 'gateway' param {self.gateway}")
8590

8691
epoch = round(time.time())
@@ -554,7 +559,7 @@ def get_network_group(self, network_group_id):
554559
555560
:param network_group_id: the UUID of the network group
556561
"""
557-
url = self.audience+'rest/v1/network-groups/'+network_group_id
562+
url = self.audience+'core/v2/network-groups/'+network_group_id
558563
try:
559564
network_group, status_symbol = get_generic_resource_by_url(setup=self, url=url)
560565
except Exception as e:
@@ -595,7 +600,7 @@ def find_network_groups_by_organization(self, **kwargs):
595600
596601
:param str kwargs: filter results by any supported query param
597602
"""
598-
url = self.audience+'rest/v1/network-groups'
603+
url = self.audience+'core/v2/network-groups'
599604
network_groups = list()
600605
for i in find_generic_resources(setup=self, url=url, embedded=RESOURCES['network-groups']._embedded, **kwargs):
601606
network_groups.extend(i)

netfoundry/utility.py

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -319,8 +319,15 @@ def create_generic_resource(setup: object, url: str, body: dict, headers: dict =
319319
proxies=setup.proxies,
320320
verify=setup.verify,
321321
)
322-
if response.status_code in range(400, 600):
323-
setup.logger.debug(response.request)
322+
if response.status_code in range(200, 600):
323+
req = response.request
324+
setup.logger.debug(
325+
'%s\n%s\r\n%s\r\n\r\n%s',
326+
'-----------START-----------',
327+
req.method + ' ' + req.url,
328+
'\r\n'.join('{}: {}'.format(k, v) for k, v in req.headers.items()),
329+
req.body
330+
)
324331
response.raise_for_status()
325332
resource = response.json()
326333

@@ -456,8 +463,6 @@ def find_generic_resources(setup: object, url: str, headers: dict = dict(), embe
456463
# only get requested page, else first page and all pages
457464
if params.get('page'):
458465
get_all_pages = False
459-
elif resource_type.name == 'network-groups':
460-
params['page'] = 1 # start at 1 instead of 0 to workaround https://netfoundry.atlassian.net/browse/MOP-17890
461466
else:
462467
params['page'] = 0
463468

@@ -660,6 +665,8 @@ def __post_init__(self):
660665
if self.find_url == 'default':
661666
if self.domain == 'network':
662667
setattr(self, 'find_url', f'core/v2/{self.name}')
668+
elif self.domain == 'network-group':
669+
setattr(self, 'find_url', f'core/v2/{self.name}')
663670
elif self.domain == 'identity':
664671
setattr(self, 'find_url', f'identity/v1/{self.name}')
665672
elif self.domain == 'authorization':
@@ -717,10 +724,8 @@ def __post_init__(self):
717724
'network-groups': ResourceType(
718725
name='network-groups',
719726
domain='network-group',
720-
_embedded='organizations',
721727
mutable=False,
722728
embeddable=False,
723-
find_url='rest/v1/network-groups',
724729
),
725730
'networks': ResourceType(
726731
name='networks',

0 commit comments

Comments
 (0)