From 100e9fa3565600f55df792f4c6c6efdb370bc3ab Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Sat, 16 Mar 2019 15:15:56 +0200 Subject: Add: show-client subcommand Also, list-clients now only shows the names. --- effitool | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'effitool') diff --git a/effitool b/effitool index f3897cd..52d5578 100755 --- a/effitool +++ b/effitool @@ -242,10 +242,18 @@ class Tool: token = self.get_admin_token(server) api = HTTPAPI(server['url']) obj = api.get_list(token, '/clients') - for name in obj.get('resources', []): - client = api.get_json(token, '/clients/{}'.format(name)) - del client['hashed_secret'] - print(json.dumps(client, indent=4)) + for name in sorted(obj.get('resources', [])): + print(name) + + def show_clients(self, args): + server = self.get_chosen_server(args) + token = self.get_admin_token(server) + api = HTTPAPI(server['url']) + obj = api.get_list(token, '/clients') + client = api.get_json(token, '/clients/{}'.format(args['client-name'])) + del client['hashed_secret'] + for scope in client.get('allowed_scopes', []): + print(scope) def process_args(config): @@ -259,6 +267,9 @@ def process_args(config): ('--client-secret', {'required':True}), ]), ('list-clients', tool.list_clients, []), + ('show-client', tool.show_clients, [ + ('client-name', {}), + ]), ] p = argparse.ArgumentParser() -- cgit v1.2.1