Mercurial > repos > dfornika > data_manager_build_kraken2_database
annotate data_manager/kraken2_build_custom.py @ 2:cf0cda80b659 draft
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
author | dfornika |
---|---|
date | Thu, 28 Feb 2019 18:18:01 -0500 |
parents | |
children | b03007bc0f05 |
rev | line source |
---|---|
2
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
1 #!/usr/bin/env python |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
2 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
3 from __future__ import print_function |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
4 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
5 import argparse |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
6 import datetime |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
7 import errno |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
8 import json |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
9 import os |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
10 import string |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
11 import subprocess |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
12 import sys |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
13 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
14 from pprint import pprint |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
15 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
16 DATA_TABLE_NAME = "kraken2_databases" |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
17 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
18 def run(args, cwd): |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
19 proc = subprocess.Popen(args=args, shell=False, cwd=cwd) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
20 return_code = proc.wait() |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
21 if return_code: |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
22 print("Error building database.", file=sys.stderr) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
23 sys.exit( return_code ) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
24 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
25 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
26 def kraken2_build(data_manager_dict, kraken2_args, params, target_directory, data_table_name=DATA_TABLE_NAME): |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
27 today = datetime.date.today().isoformat() |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
28 database_name = "_".join([today, "custom"]) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
29 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
30 args = [ |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
31 'kraken2-build', |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
32 '--threads', str(kraken2_args["threads"]), |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
33 '--download-taxonomy', |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
34 '--db', database_name |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
35 ] |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
36 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
37 run(args, target_directory) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
38 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
39 args = [ |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
40 'kraken2-build', |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
41 '--threads', str(kraken2_args["threads"]), |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
42 '--add-to-library', kraken2_args["fasta"], |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
43 '--db', database_name |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
44 ] |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
45 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
46 run(args, target_directory) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
47 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
48 args = [ |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
49 'kraken2-build', |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
50 '--threads', str(kraken2_args["threads"]), |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
51 '--clean', |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
52 '--db', database_name |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
53 ] |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
54 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
55 run(args, target_directory) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
56 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
57 data_table_entry = { |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
58 "value": database_name, |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
59 "name": database_name, |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
60 "path": database_name |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
61 } |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
62 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
63 _add_data_table_entry(data_manager_dict, data_table_name, data_table_entry) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
64 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
65 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
66 def _add_data_table_entry(data_manager_dict, data_table_name, data_table_entry): |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
67 data_manager_dict['data_tables'] = data_manager_dict.get( 'data_tables', {} ) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
68 data_manager_dict['data_tables'][ data_table_name ] = data_manager_dict['data_tables'].get( data_table_name, [] ) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
69 data_manager_dict['data_tables'][ data_table_name ].append( data_table_entry ) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
70 return data_manager_dict |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
71 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
72 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
73 def main(): |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
74 parser = argparse.ArgumentParser() |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
75 parser.add_argument('params') |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
76 parser.add_argument( '-k', '--kmer-len', dest='kmer_len', type=int, default=35, help='kmer length' ) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
77 parser.add_argument( '-m', '--minimizer-len', dest='minimizer_len', type=int, default=31, help='minimizer length' ) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
78 parser.add_argument( '-s', '--minimizer-spaces', dest='minimizer_spaces', default=6, help='minimizer spaces' ) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
79 parser.add_argument( '-t', '--threads', dest='threads', default=1, help='threads' ) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
80 args = parser.parse_args() |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
81 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
82 kraken2_args = { |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
83 "kmer_len": args.kmer_len, |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
84 "minimizer_len": args.minimizer_len, |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
85 "minimizer_spaces": args.minimizer_spaces, |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
86 "fasta": args.fasta, |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
87 "threads": args.threads, |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
88 } |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
89 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
90 params = json.loads(open(args.params).read()) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
91 pprint(params) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
92 target_directory = params['output_data'][0]['extra_files_path'] |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
93 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
94 try: |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
95 os.mkdir( target_directory ) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
96 except OSError as exc: |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
97 if exc.errno == errno.EEXIST and os.path.isdir( target_directory ): |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
98 pass |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
99 else: |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
100 raise |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
101 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
102 data_manager_dict = {} |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
103 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
104 # build the index |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
105 kraken2_build( |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
106 data_manager_dict, |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
107 kraken2_args, |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
108 params, |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
109 target_directory |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
110 ) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
111 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
112 # save info to json file |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
113 open(args.params, 'wb').write(json.dumps(data_manager_dict)) |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
114 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
115 |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
116 if __name__ == "__main__": |
cf0cda80b659
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_kraken2_database/ commit f05f93ee024df8b38efa1c92db9785d52c726f85-dirty
dfornika
parents:
diff
changeset
|
117 main() |