diff options
-rwxr-xr-x | crowd-tool | 15 |
1 files changed, 14 insertions, 1 deletions
@@ -48,7 +48,7 @@ def rest(uri, params): if __name__ == "__main__": logging.basicConfig() - optparser = optparse.OptionParser(usage="%prog user|alises|group|usergroups|ismember|groupusers|groupgroups") + optparser = optparse.OptionParser(usage="%prog user|alises|group|usergroups|ismember|groupusers|groupgroups|members") optparser.add_option("-u", "--user", default="rest-test", help="Crowd username") optparser.add_option("-p", "--passwd", help="Crowd password") optparser.add_option("-P", "--ask-passwd", action="store_true", help="Ask Crowd password") @@ -105,6 +105,19 @@ if __name__ == "__main__": for n in names: print n + elif args[0] == "members": + def print_names(header, list): + if list: + print header + for n in list: + print "\t" + n + data = rest("/group/user/direct.json", {"groupname": args[1]}) + names = sorted([x["name"] for x in data["users"]]) + print_names("Users:", names) + data = rest("/group/child-group/direct.json", {"groupname": args[1]}) + names = sorted([x["name"] for x in data["groups"]]) + print_names("Groups:", names) + elif args[0] == "ismember": url = "/user/group/nested.json" if options.nested else "/user/group/direct.json" try: |