Mercurial > repos > pimarin > data_manager_bakta
changeset 11:c50e8b4f74d7 draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_bakta commit 572bbceeba9a22cdb591d526abda362595f8f0c4
author | pimarin |
---|---|
date | Wed, 02 Nov 2022 11:06:36 +0000 |
parents | 9c65e5da43e2 |
children | 7bd60bfa8ffc |
files | data_manager/bakta_build_database.py data_manager/bakta_build_database.xml test-data/bakta_test.loc |
diffstat | 3 files changed, 28 insertions(+), 25 deletions(-) [+] |
line wrap: on
line diff
--- a/data_manager/bakta_build_database.py Thu Oct 27 15:56:22 2022 +0000 +++ b/data_manager/bakta_build_database.py Wed Nov 02 11:06:36 2022 +0000 @@ -8,8 +8,6 @@ from datetime import datetime from pathlib import Path -import bakta.constants as bc -import bakta.utils as bu import requests from alive_progress import alive_bar @@ -29,6 +27,7 @@ self.data_table_name = data_table_name self.db_name = db_name self.db_version = db_version + self.DB_VERSIONS_URL = 'https://raw.githubusercontent.com/oschwengers/bakta/master/db-versions.json' def get_data_table_format(self): """ @@ -57,7 +56,7 @@ return: info for the select or the latest bakta db version """ try: - with requests.get(bc.DB_VERSIONS_URL) as resp: + with requests.get(self.DB_VERSIONS_URL) as resp: versions = json.loads(resp.content) except IOError as e: print(e, file=sys.stderr) @@ -108,7 +107,8 @@ bakta_version=str( f"{bakta_database_info['software-min']['major']}." f"{bakta_database_info['software-min']['minor']}" - ), path=output_path) + ), + path=output_path) self.bakta_table_list["data_tables"][self.data_table_name] = data_info return self.bakta_table_list @@ -130,7 +130,6 @@ self.db_name = db_name self.tarball_name = tarball_name self.tarball_path = None - bu.test_dependency(bu.DEPENDENCY_AMRFINDERPLUS) def download(self): self.db_name = f'{self.db_name}_{self.db_version}' @@ -221,6 +220,8 @@ 'default is the latest version', default="latest", required=True) + arg_parser.add_argument("-t", "--test", action='store_true', + help="option to test the script with an empty database") return arg_parser.parse_args() @@ -236,12 +237,15 @@ # init the class to download bakta db bakta_upload = InstallBaktaDatabase() # extract the version - bakta_db = bakta_upload.fetch_db_versions( - db_version=all_args.database_version) + if all_args.test is True: + bakta_db = bakta_upload.fetch_db_versions( + db_version="test") + else: + bakta_db = bakta_upload.fetch_db_versions( + db_version=all_args.database_version) # update the path for galaxy bakta_upload.db_dir = target_dir # download the database - print(bakta_db) bakta_upload.download() # check md5 sum bakta_upload.calc_md5_sum() @@ -252,7 +256,7 @@ # make the data_manager metadata bakta_data_manager = bakta_upload.get_data_manager(bakta_database_info=bakta_db, output_path=bakta_extracted_path) with open(all_args.data_manager_json, 'w') as fh: - json.dump(bakta_data_manager, fh, indent=2, sort_keys=True) + json.dump(bakta_data_manager, fh, sort_keys=True) if __name__ == '__main__':
--- a/data_manager/bakta_build_database.xml Thu Oct 27 15:56:22 2022 +0000 +++ b/data_manager/bakta_build_database.xml Wed Nov 02 11:06:36 2022 +0000 @@ -1,6 +1,6 @@ <tool id="bakta_build_database" name="Bakta" tool_type="manage_data" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@"> - <description> Bakta database builder </description> + <description>Bakta database builder</description> <macros> <import>macro.xml</import> </macros> @@ -8,31 +8,30 @@ <expand macro="version_command"/> <command detect_errors="aggressive"><![CDATA[ - mkdir './output_dir_json' && - ln -s '$output_file' './output_dir_json/json_output.json' && python '$__tool_directory__/bakta_build_database.py' - './output_dir_json/json_output.json' + '$output_file' --database_version '$database_select' + '$test_data_manager' ]]></command> <inputs> - <param name="database_select" type="select" label="Database version" help="Choose a database version to download (default latest version)" > - <option value="latest" selected="true" > Latest available version </option> - <option value="1.0"> V1.0_2020-11-20 </option> - <option value="1.1"> V1.1_2020-12-18 </option> - <option value="2.0"> V2.0_2021-04-05 </option> - <option value="3.0"> V3.0_2021-08-05 </option> - <option value="3.1"> V3.1_2022-02-03 </option> - <option value="4.0"> V4.0_2022-08-29 </option> - <option value="test"> database_test </option> + <param name="database_select" type="select" label="Database version" help="Choose a database version to download (default latest version)"> + <option value="latest" selected="true">Latest available version</option> + <option value="1.0">V1.0_2020-11-20</option> + <option value="1.1">V1.1_2020-12-18</option> + <option value="2.0">V2.0_2021-04-05</option> + <option value="3.0">V3.0_2021-08-05</option> + <option value="3.1">V3.1_2022-02-03</option> + <option value="4.0">V4.0_2022-08-29</option> </param> + <param name="test_data_manager" type="hidden" value=""/> </inputs> <outputs> - <data name="output_file" format="data_manager_json" from_work_dir="./output_dir_json/json_output.json"/> + <data name="output_file" format="data_manager_json"/> </outputs> <tests> <!-- Test download --> <test expect_num_outputs="1"> - <param name="database_select" value="test"/> + <param name="test_data_manager" value="--test"/> <output name="output_file" value="bakta_test_data_manager.json" compare="contains"/> </test> </tests>