annotate data_manager/data_manager_amrfinderplus.py @ 1:254479b50f86 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit 25a0413337c540dc9f26bc7ee097d493f0d148ca-dirty
author pimarin
date Mon, 14 Nov 2022 13:40:22 +0000
parents 8e1bbef44e19
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
1 import argparse
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
2 import json
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
3 import os
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
4 import re
1
254479b50f86 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit 25a0413337c540dc9f26bc7ee097d493f0d148ca-dirty
pimarin
parents: 0
diff changeset
5 import subprocess as sp
254479b50f86 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit 25a0413337c540dc9f26bc7ee097d493f0d148ca-dirty
pimarin
parents: 0
diff changeset
6
0
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
7 from datetime import datetime
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
8 from pathlib import Path
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
9
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
10
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
11 class GetDataManager:
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
12
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
13 def __init__(self):
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
14 self.data_table_name = "amrfinderplus_database"
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
15 self._db_name = "amrfinderplus-db"
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
16 self._db_path = Path().absolute()
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
17 self._today = datetime.now().strftime("%Y-%m-%d_%H:%M")
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
18
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
19 def get_data_table_format(self):
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
20 """
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
21 Skeleton of a data_table format
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
22 return: a data table formatted for json output
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
23 """
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
24 self.data_table_entry = {
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
25 "data_tables": {
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
26 self.data_table_name: {}
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
27 }
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
28 }
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
29 return self.data_table_entry
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
30
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
31 def get_data_manager(self, amrfinderplus_version):
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
32 self.amrfinderplus_table_list = self.get_data_table_format()
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
33
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
34 data_info = dict(value=self._today,
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
35 name=amrfinderplus_version,
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
36 path=self._db_name)
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
37 self.amrfinderplus_table_list["data_tables"][self.data_table_name] = [data_info]
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
38 return self.amrfinderplus_table_list
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
39
1
254479b50f86 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit 25a0413337c540dc9f26bc7ee097d493f0d148ca-dirty
pimarin
parents: 0
diff changeset
40 def update_amrfinderplus_db(self):
254479b50f86 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit 25a0413337c540dc9f26bc7ee097d493f0d148ca-dirty
pimarin
parents: 0
diff changeset
41 amrfinderplus_db_path = Path(self._db_path).joinpath(self._db_name)
0
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
42 cmd = [
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
43 'amrfinder_update',
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
44 '--database', str(amrfinderplus_db_path),
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
45 '--force_update'
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
46 ]
1
254479b50f86 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit 25a0413337c540dc9f26bc7ee097d493f0d148ca-dirty
pimarin
parents: 0
diff changeset
47 print(cmd)
0
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
48 proc = sp.run(
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
49 cmd,
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
50 stdout=sp.PIPE,
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
51 stderr=sp.PIPE,
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
52 universal_newlines=True
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
53 )
1
254479b50f86 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit 25a0413337c540dc9f26bc7ee097d493f0d148ca-dirty
pimarin
parents: 0
diff changeset
54 if (proc.returncode != 0):
254479b50f86 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit 25a0413337c540dc9f26bc7ee097d493f0d148ca-dirty
pimarin
parents: 0
diff changeset
55 print(
254479b50f86 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit 25a0413337c540dc9f26bc7ee097d493f0d148ca-dirty
pimarin
parents: 0
diff changeset
56 f"ERROR: AMRFinderPlus failed! command: 'amrfinder_update --force_update --database {amrfinderplus_db_path}', error code: {proc.returncode}")
0
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
57 else:
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
58 return amrfinderplus_db_path
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
59
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
60 def get_amrfinderplus_version(self, amrfinderplus_path):
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
61 version_file = Path(f'{amrfinderplus_path}/latest/version.txt')
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
62 with open(version_file, "r") as version:
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
63 version_value = version.read()
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
64 version_value = re.sub("\n", "", version_value)
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
65 return version_value
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
66
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
67 def parse_arguments(self):
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
68 # parse options and arguments
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
69 arg_parser = argparse.ArgumentParser()
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
70 arg_parser.add_argument("data_manager_json")
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
71 arg_parser.add_argument("-t", "--test", action='store_true',
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
72 help="option to test the script with an lighted database")
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
73 return arg_parser.parse_args()
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
74
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
75 def read_json_input_file(self, json_file_path):
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
76 with open(json_file_path) as fh:
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
77 params = json.load(fh)
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
78 target_dir = params['output_data'][0]['extra_files_path']
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
79 os.makedirs(target_dir)
1
254479b50f86 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit 25a0413337c540dc9f26bc7ee097d493f0d148ca-dirty
pimarin
parents: 0
diff changeset
80 return Path(target_dir)
0
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
81
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
82 def write_json_infos(self, json_file_path, data_manager_infos):
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
83 with open(json_file_path, 'w') as fh:
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
84 json.dump(data_manager_infos, fh, sort_keys=True)
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
85
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
86
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
87 def main():
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
88 # init the class
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
89 amrfinderplus_download = GetDataManager()
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
90 # import the arguments
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
91 all_args = amrfinderplus_download.parse_arguments()
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
92 # read the json input from galaxy to define the db path
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
93 path_to_download = amrfinderplus_download.read_json_input_file(json_file_path=all_args.data_manager_json)
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
94 # change the path to th json information
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
95 amrfinderplus_download._db_path = path_to_download
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
96 # download the last amrfinderplus database
1
254479b50f86 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit 25a0413337c540dc9f26bc7ee097d493f0d148ca-dirty
pimarin
parents: 0
diff changeset
97 amrfinder_output = amrfinderplus_download.update_amrfinderplus_db()
0
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
98 # extract the version number of the database
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
99 amrfinder_version = amrfinderplus_download.get_amrfinderplus_version(amrfinder_output)
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
100 # make a dic with database information
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
101 amrfinderplus_json_output = amrfinderplus_download.get_data_manager(amrfinder_version)
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
102 amrfinderplus_download.write_json_infos(json_file_path=all_args.data_manager_json,
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
103 data_manager_infos=amrfinderplus_json_output)
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
104
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
105
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
106 if __name__ == '__main__':
8e1bbef44e19 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_amrfinderplus commit a7bd2bf9c3e46c3524ee640bb60c8062b3257217-dirty
pimarin
parents:
diff changeset
107 main()