1
1
"""Use a network group and find its networks."""
2
2
3
3
from .network import Networks
4
- from .utility import NET_RESOURCES , RESOURCES , STATUS_CODES , any_in , find_generic_resources , get_generic_resource , http , is_uuidv4 , normalize_caseless
4
+ from .utility import NET_RESOURCES , RESOURCES , STATUS_CODES , any_in , find_generic_resources , get_generic_resource , http , is_uuidv4 , normalize_caseless , caseless_equal
5
5
6
6
7
7
class NetworkGroup :
@@ -19,22 +19,22 @@ def __init__(self, Organization: object, network_group_id: str = None, network_g
19
19
if is_uuidv4 (group ):
20
20
network_group_id = group
21
21
else :
22
- network_group_name = group
22
+ network_group_name = normalize_caseless ( group )
23
23
if network_group_id :
24
24
self .network_group_id = network_group_id
25
25
self .network_group_name = [ng ['organizationShortName' ] for ng in self .network_groups if ng ['id' ] == network_group_id ][0 ]
26
26
# TODO: review the use of org short name ref https://mattermost.tools.netfoundry.io/netfoundry/pl/gegyzuybypb9jxnrw1g1imjywh
27
27
elif network_group_name :
28
28
self .network_group_name = network_group_name
29
- network_group_matches = [ng ['id' ] for ng in self .network_groups if ng ['organizationShortName' ] == network_group_name ]
29
+ network_group_matches = [ng ['id' ] for ng in self .network_groups if caseless_equal ( ng ['organizationShortName' ], self . network_group_name ) ]
30
30
if len (network_group_matches ) == 1 :
31
- self .network_group_id = [ ng [ 'id' ] for ng in self . network_groups if ng [ 'organizationShortName' ] == network_group_name ] [0 ]
31
+ self .network_group_id = network_group_matches [0 ]
32
32
else :
33
33
raise RuntimeError (f"there was not exactly one network group matching the name '{ network_group_name } '" )
34
34
elif len (self .network_groups ) > 0 :
35
35
# first network group is typically the only network group
36
36
self .network_group_id = self .network_groups [0 ]['id' ]
37
- self .network_group_name = self .network_groups [0 ]['organizationShortName' ]
37
+ self .network_group_name = normalize_caseless ( self .network_groups [0 ]['organizationShortName' ])
38
38
# warn if there are other groups
39
39
if len (self .network_groups ) > 1 :
40
40
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..." )
0 commit comments