comparison data_manager/mash_sketch_builder.py @ 1:af86557c1b87 draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_mash_sketch_builder/ commit 20558d9de7b6dd375a8835698f231cbc0c83446d-dirty"
author dfornika
date Sat, 22 Feb 2020 01:01:25 +0000
parents 647eedfd1556
children 2cbda85de1a2
comparison
equal deleted inserted replaced
0:647eedfd1556 1:af86557c1b87
17 os.mkdir(os.path.join(target_directory, UUID)) 17 os.mkdir(os.path.join(target_directory, UUID))
18 18
19 sketch_path = os.path.join(UUID, "sketch"), 19 sketch_path = os.path.join(UUID, "sketch"),
20 20
21 args = [ 21 args = [
22 '--threads', str(kraken2_args["threads"]),
23 '-k', str(mash_sketch_args["kmer_size"]), 22 '-k', str(mash_sketch_args["kmer_size"]),
24 '-s', str(mash_sketch_args["sketch_size"]), 23 '-s', str(mash_sketch_args["sketch_size"]),
25 '-o', sketch_path 24 '-o', sketch_path,
25 '-p', str(mash_sketch_args["threads"]),
26 str(mash_sketch_args["fasta"]),
26 ] 27 ]
27 28
28 subprocess.check_call(['mash', 'sketch'] + args, cwd=target_directory) 29 subprocess.check_call(['mash', 'sketch'] + args, cwd=target_directory)
29 30
30 if kraken2_args["clean"]:
31 args = [
32 '--threads', str(kraken2_args["threads"]),
33 '--clean',
34 '--db', database_path
35 ]
36
37 subprocess.check_call(['kraken2-build'] + args, cwd=target_directory)
38 31
39 data_table_entry = { 32 data_table_entry = {
40 'data_tables': { 33 'data_tables': {
41 data_table_name: [ 34 data_table_name: [
42 { 35 {
54 def main(): 47 def main():
55 parser = argparse.ArgumentParser() 48 parser = argparse.ArgumentParser()
56 parser.add_argument('data_manager_json') 49 parser.add_argument('data_manager_json')
57 parser.add_argument('--kmer-size', dest='kmer_size', type=int, default=35, help='kmer length') 50 parser.add_argument('--kmer-size', dest='kmer_size', type=int, default=35, help='kmer length')
58 parser.add_argument('--sketch-size', dest='sketch_size', type=int, default=31, help='minimizer length') 51 parser.add_argument('--sketch-size', dest='sketch_size', type=int, default=31, help='minimizer length')
52 parser.add_argument('--fasta', dest='fasta', type='string', help='Fasta file to sketch')
59 parser.add_argument('--threads', dest='threads', default=1, help='threads') 53 parser.add_argument('--threads', dest='threads', default=1, help='threads')
60 parser.add_argument('--sketch-name', dest='sketch_name', help='Name for sketch') 54 parser.add_argument('--sketch-name', dest='sketch_name', help='Name for sketch')
61 args = parser.parse_args() 55 args = parser.parse_args()
62 56
63 data_manager_input = json.loads(open(args.data_manager_json).read()) 57 data_manager_input = json.loads(open(args.data_manager_json).read())
73 raise 67 raise
74 68
75 data_manager_output = {} 69 data_manager_output = {}
76 70
77 mash_sketch_args = { 71 mash_sketch_args = {
78 "kmer_size": args.kmer_len, 72 "kmer_size": args.kmer_size,
79 "sketch_size": args.minimizer_len, 73 "sketch_size": args.sketch_size,
74 "fasta": args.fasta,
80 "threads": args.threads, 75 "threads": args.threads,
81 } 76 }
77
78 data_manager_output = mash_sketch(
79 mash_sketch_args,
80 sketch_name,
81 target_directory,
82 )
82 83
83 open(args.data_manager_json, 'w').write(json.dumps(data_manager_output, sort_keys=True)) 84 open(args.data_manager_json, 'w').write(json.dumps(data_manager_output, sort_keys=True))
84 85
85 86
86 if __name__ == "__main__": 87 if __name__ == "__main__":