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