# HG changeset patch # User sanbi-uwc # Date 1587224145 0 # Node ID e3655a2755c1623ea394dc46eec136eb30474415 # Parent 04c898feb3ba263991fa733e24e42d775afa7759 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_primer_scheme_bedfiles commit 88130bb7c37cca7eff6df235ba17e0ae9f11df86-dirty" diff -r 04c898feb3ba -r e3655a2755c1 data_manager/install_primer_scheme_bedfiles.py --- a/data_manager/install_primer_scheme_bedfiles.py Sat Apr 18 15:31:58 2020 +0000 +++ b/data_manager/install_primer_scheme_bedfiles.py Sat Apr 18 15:35:45 2020 +0000 @@ -43,13 +43,16 @@ return data -def install_primer_file(output_directory, input_filename, primer_name, primer_description): - name = re.sub(r'\W', '', str(primer_name).replace(' ','_')) - output_filename = os.path.join(output_directory, name + '.bed') +def install_primer_file( + output_directory, input_filename, primer_name, primer_description +): + name = re.sub(r"\W", "", str(primer_name).replace(" ", "_")) + output_filename = os.path.join(output_directory, name + ".bed") shutil.copyfile(input_filename, output_filename) data = [dict(value=name, description=primer_description, path=output_filename)] return data + class SplitArgs(argparse.Action): def __call__(self, parser, namespace, values, option_string=None): setattr(namespace, self.dest, values.split(",")) @@ -67,14 +70,16 @@ "--primer_file", help="BED format file containing primer scheme" ) primer_file.add_argument( - "--primer_name", help="Name of primer scheme (one word). Required if --primer_file is used" + "--primer_name", + help="Name of primer scheme (one word). Required if --primer_file is used", ) primer_file.add_argument( - "--primer_description", help="Description of primer scheme. Required if --primer_file is used" + "--primer_description", + help="Description of primer scheme. Required if --primer_file is used", ) artic = parser.add_argument_group() artic.add_argument( - "--primers", + "--artic_primers", action=SplitArgs, help="Comma separated list of primers to fetch", ) @@ -84,16 +89,26 @@ ) args = parser.parse_args() - if args.primers is None and args.primer_file is None: - print("One of --primers or --primer_file + --primer_name + --primer_description is required.", file=sys.stderr) + if args.artic_primers is None and args.primer_file is None: + print( + "One of --artic_primers or --primer_file + --primer_name + --primer_description is required.", + file=sys.stderr, + ) exit(1) - elif args.primer_file is not None and (args.primer_name is None or args.primer_description is None): - print("If --primer_file is used --primer_name and --primer_description is also required", file=sys.stderr) + elif args.primer_file is not None and ( + args.primer_name is None or args.primer_description is None + ): + print( + "If --primer_file is used --primer_name and --primer_description is also required", + file=sys.stderr, + ) exit(1) - elif args.primer_file is not None and args.primers is not None: - print("Only one of --primers or --primer_file + --primer_name + --primer_description can be chosen") + elif args.primer_file is not None and args.artic_primers is not None: + print( + "Only one of --artic_primers or --primer_file + --primer_name + --primer_description can be chosen" + ) exit(1) - + config = json.load(open(args.galaxy_datamanager_filename)) output_directory = config.get("output_data", [{}])[0].get("extra_files_path", None) if output_directory is None: @@ -103,20 +118,24 @@ os.makedirs(output_directory) data_manager_dict = {} - data_manager_dict["data_tables"] = json.load(open(args.galaxy_datamanager_filename)).get( - "data_tables", {} - ) + data_manager_dict["data_tables"] = json.load( + open(args.galaxy_datamanager_filename) + ).get("data_tables", {}) data_manager_dict["data_tables"] = data_manager_dict.get("data_tables", {}) data_manager_dict["data_tables"][DATA_TABLE_NAME] = data_manager_dict[ "data_tables" ].get(DATA_TABLE_NAME, []) - if args.primers: - data = fetch_artic_primers(output_directory, args.primers) + if args.artic_primers: + data = fetch_artic_primers(output_directory, args.artic_primers) else: - data = install_primer_file(output_directory, args.primer_file, args.primer_name, args.primer_description) + data = install_primer_file( + output_directory, + args.primer_file, + args.primer_name, + args.primer_description, + ) data_manager_dict["data_tables"][DATA_TABLE_NAME].extend(data) print(data_manager_dict) json.dump(data_manager_dict, open(args.galaxy_datamanager_filename, "w")) - diff -r 04c898feb3ba -r e3655a2755c1 data_manager/install_primer_scheme_bedfiles.xml --- a/data_manager/install_primer_scheme_bedfiles.xml Sat Apr 18 15:31:58 2020 +0000 +++ b/data_manager/install_primer_scheme_bedfiles.xml Sat Apr 18 15:35:45 2020 +0000 @@ -1,4 +1,4 @@ - + python requests