@@ -42,7 +42,9 @@ def parse_arguments(self, *args, **kwargs):
4242 port = kwargs .pop ('port' , 443 ),
4343 icontrol_version = kwargs .pop ('icontrol_version' , '' ),
4444 verify = kwargs .pop ('verify' , False ),
45- token = kwargs .pop ('token' , False )
45+ token = kwargs .pop ('token' , False ),
46+ auth_provider = kwargs .pop ('auth_provider' , None ),
47+ debug = kwargs .pop ('debug' , False )
4648 )
4749 if kwargs :
4850 raise TypeError ('Unexpected **kwargs: %r' % kwargs )
@@ -54,13 +56,20 @@ def parse_arguments(self, *args, **kwargs):
5456 return result
5557
5658 def _get_icr_session (self , * args , ** kwargs ):
57- return iControlRESTSession (
59+ params = dict (
5860 username = kwargs ['username' ],
5961 password = kwargs ['password' ],
6062 timeout = kwargs ['timeout' ],
61- verify = kwargs ['verify' ],
62- token = kwargs ['token' ]
63+ verify = kwargs ['verify' ]
6364 )
65+ if kwargs ['auth_provider' ]:
66+ params ['auth_provider' ] = kwargs ['auth_provider' ]
67+ else :
68+ params ['token' ] = kwargs ['token' ]
69+
70+ result = iControlRESTSession (** params )
71+ result .debug = kwargs ['debug' ]
72+ return result
6473
6574 def configure_meta_data (self , * args , ** kwargs ):
6675 self ._meta_data = {
@@ -135,7 +144,8 @@ def __new__(cls, *args, **kwargs):
135144 mgmt .args ['hostname' ],
136145 mgmt .args ['username' ],
137146 mgmt .args ['password' ],
138- port = mgmt .args ['port' ]
147+ port = mgmt .args ['port' ],
148+ auth_provider = mgmt .args ['auth_provider' ]
139149 )
140150 bigip .icrs = mgmt .icrs
141151 uri = '' .join ([
0 commit comments