1010import click
1111from requests .exceptions import HTTPError
1212from virl2_client import ClientLibrary
13+ from virl2_client .virl2_client import Version
1314
1415
1516# http://code.activestate.com/recipes/578035-disable-file-system-redirector/
@@ -279,7 +280,25 @@ def get_cml_client(server, ignore=False):
279280 os .environ .pop ("VIRL2_PASS" , None )
280281 os .environ .pop ("VIRL2_URL" , None )
281282
282- client = ClientLibrary (server .host , server .user , server .passwd , raise_for_auth_failure = True , ssl_verify = ssl_verify )
283+ version = getattr (ClientLibrary , "VERSION" , None )
284+ if version is not None and version >= Version ("2.9.0" ):
285+ client = ClientLibrary (
286+ server .host ,
287+ server .user ,
288+ server .passwd ,
289+ raise_for_auth_failure = True ,
290+ ssl_verify = ssl_verify ,
291+ client_type = "CmlUtils" ,
292+ )
293+ else :
294+ client = ClientLibrary (
295+ server .host ,
296+ server .user ,
297+ server .passwd ,
298+ raise_for_auth_failure = True ,
299+ ssl_verify = ssl_verify ,
300+ )
301+
283302 logger .setLevel (level )
284303
285304 return client
@@ -302,15 +321,9 @@ def get_group_member_ids(all_users, members, add_all_users):
302321def get_group_associations (client , labs , add_all_labs ):
303322 """Build target lab associations for group create/update payloads."""
304323 if add_all_labs is not None :
305- return [
306- {"id" : lab_id , "permissions" : convert_permissions (add_all_labs )}
307- for lab_id in client .get_lab_list ()
308- ]
324+ return [{"id" : lab_id , "permissions" : convert_permissions (add_all_labs )} for lab_id in client .get_lab_list ()]
309325 if labs :
310- return [
311- {"id" : lab_id , "permissions" : convert_permissions (permission )}
312- for lab_id , permission in labs
313- ]
326+ return [{"id" : lab_id , "permissions" : convert_permissions (permission )} for lab_id , permission in labs ]
314327 return []
315328
316329
0 commit comments