diff options
Diffstat (limited to 'effitool')
-rwxr-xr-x | effitool | 8 |
1 files changed, 7 insertions, 1 deletions
@@ -140,10 +140,13 @@ class EffiAPI: def new_token(self): if self._fake: self._token = 'FAKE' - else: + elif self._token is None: self._token = self.get_token_with_scopes(all_possible_scopes) self._http_api.set_token(self._token) + def set_token(self, token): + self._token = token + def get_token(self): if self._token is None: self.new_token() @@ -234,6 +237,8 @@ class EffiTool: sys.exit('ERROR: Missing command') api = self._new_api(args, args['fake']) + if args['token']: + api.set_token(args['token']) try: logging.debug('calling %r with %r', func.__name__, args) value = func(args, api) @@ -296,6 +301,7 @@ class EffiTool: parser = argparse.ArgumentParser(description='Manage Effi members') parser.add_argument('-u', '--url', dest='url', required=True) + parser.add_argument('-T', '--token', dest='token', required=False) parser.add_argument('-t', '--token-url', dest='token_url', required=True) parser.add_argument('-i', '--client-id', dest='client_id', required=True) parser.add_argument( |