def main(): #if len(sys.argv) is not 4: # raise Exception("Must call with endpoint, username, and password" +\ # " i.e.: python example.py http://<server>:9087 <user> <pass>") #endpoint = sys.argv[1] #username = sys.argv[2] #password = sys.argv[3] parser = argparse.ArgumentParser(description='Parse input parameters') parser.add_argument('-i', '--input', type=json.loads) parser.add_argument('-e', '--endpoint', type=str) parser.add_argument('-u', '--username', type=str) parser.add_argument('-p', '--password', type=str) parser.add_argument('-d', '--database', type=str) parser.add_argument('-r', '--readonly', type=str2bool) args = parser.parse_args() args = vars(args) endpoint = args['endpoint'] username = args['username'] password = args['password'] #database = args['database'] database = 'ACAS' compound_ids = args['input']['compounds'] assays_to_add = args['input']['assays'] experiment_code = args['input']['experimentCode'] try: project = args['input']['project'] except: project = "Global" try: logged_in_user = args['input']['username'] except: logged_in_user = username apiSuffix = "/api" apiEndpoint = endpoint + apiSuffix api = Api(apiEndpoint, username, password) # api.reload_db_constants() try: ld_client_version = float(ldclient.client.SUPPORTED_SERVER_VERSION) except: try: ld_client_version = float( ldclient.api.requester.SUPPORTED_SERVER_VERSION) except: ld_client_version = float(7.3) print("LDClient version is:" + str(ld_client_version)) try: # projectId = api.get_project_id_by_name(project) matching_projects = [p for p in api.projects() if p.name == project] projectId = int(matching_projects[0].id.encode('ascii')) print("Project " + project + " found with id: " + str(projectId)) except: projectId = 0 if type(projectId) is not int: projectId = 0 lr_id = make_acas_live_report(api, compound_ids, assays_to_add, experiment_code, logged_in_user, database, projectId, ld_client_version, args["readonly"]) liveReportSuffix = "/#/projects/" + str(projectId) + "/livereports/" print(endpoint + liveReportSuffix + str(lr_id))