def cmd_delete_users(args): manager = WorkbookManager(args.workspace) result = manager.deleteusers(args.users, workbook_id=getattr(args, "workbook_id", None), workbook_name=getattr(args, "workbook_name", None))
def cmd_create_template(args): manager = WorkbookManager(args.workspace) try: wbt = manager.create_template(open(args.json).read()) print("created template with id '%s'" % wbt.id(), file=sys.stderr) except WorkbookException as ex: print(str(ex)) sys.exit(1)
def cmd_refresh(args): manager = WorkbookManager(args.workspace) wbs = find_workbooks(manager, args) payload = json.dumps({"name": args.group}) for wb in wbs: print("refreshing workbook '%s'" % wb.id(), file=sys.stderr) message = json.loads(manager.refresh(wb.id(), payload)) if 'errors' in message: for e in message['errors']: print("Warning:" + e)
def cmd_instantiate(args): manager = WorkbookManager(args.workspace) try: wb = manager.instantiate(open(args.json).read()) if (args.verbose): pretty_print(json.dumps(wb.json)) else: print("created workbook with id '%s'" % wb.id(), file=sys.stderr) except WorkbookException as ex: print(str(ex)) sys.exit(1)
def cmd_create(args): try: spec_string = open(args.json).read() spec = json.loads(spec_string) workspace = spec['parent_workbook']['workspace_name'] manager = WorkbookManager(workspace) wb = manager.create(spec_string) if (args.verbose): pretty_print(json.dumps(wb.json)) print("created workbook with id '%s'" % wb.id(), file=sys.stderr) except Exception as e: print("Failed to create workbook:\n%s" % e, file=sys.stderr) sys.exit(1)
def cmd_list_templates(args): manager = WorkbookManager(args.workspace) result = manager.list_templates(template_name=args.template_name, template_id=args.template_id) if args.csv != None: import csv writer = csv.writer(sys.stdout, delimiter=args.delimiter, quotechar="\"", lineterminator="\n") for wbt in result: writer.writerow([wbt.json[v] for v in args.csv]) else: for wbt in result: pretty_print(json.dumps(wbt.json))
def cmd_delete_template(args): manager = WorkbookManager(args.workspace) # note: we can just ignore the all flag. templates = manager.list_templates(template_name=args.template_name, template_id=args.template_id) # only raise an error if the option '--all' is not used if len(templates) == 0: if args.template_id is not None: raise lb_exception.LBCommandError("template '%s' not found" % args.template_id) if args.template_name is not None: raise lb_exception.LBCommandError("template '%s' not found" % args.template_name) for wbt in templates: print("deleting template '%s'" % wbt.id(), file=sys.stderr) manager.delete_template(wbt.id())
def cmd_delete(args): manager = WorkbookManager(args.workspace) if args.all: msg = json.loads(manager.delete_all()) else: if args.workbook_name: wbs = find_workbooks(manager, args) ids = [wb.id() for wb in wbs] else: ids = args.workbook_id print("Deleting " + ",".join(ids)) msg = json.loads(manager.delete(ids)) if ('deleted' in msg): print("Deleted %s" % ",".join([id for id in msg['deleted']])) if ('already_deleted' in msg): print("%s was/were already deleted " % ",".join([id for id in msg['already_deleted']])) if ('not_found' in msg): print("%s was/were not found " % ",".join([id for id in msg['not_found']]))
def cmd_list(args): manager = WorkbookManager(args.workspace) # We're not using find_workbooks because we do not want to fail if # there are no workbooks. wbs = manager.list(workbook_name=args.workbook_name, workbook_id=args.workbook_id, output=args.output, include_deleted=args.include_deleted, template_name=args.template_name) if args.csv != None: import csv writer = csv.writer(sys.stdout, delimiter=args.delimiter, quotechar="\"", lineterminator="\n") # TODO add support for template_name for wb in wbs: writer.writerow([wb.json.get(v, None) for v in args.csv]) else: pretty_print(json.dumps([wb.json for wb in wbs]))