annotate data_manager/gtdbtk_database_installer.py @ 8:6a6175006cb9 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
author iuc
date Mon, 21 Oct 2024 15:49:43 +0000
parents 05f85f5bfc48
children 1a049e50e6b8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
1 #!/usr/bin/env python
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
2
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
3 import argparse
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
4 import gzip
0
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
5 import json
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
6 import os
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
7 import shutil
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
8 import sys
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
9 import tarfile
7
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
10 from datetime import date
0
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
11 from urllib.parse import urlparse
4
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
12 from urllib.request import HTTPError, Request, urlopen
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
13
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
14 # rather provide the urls based on the release, less error potential for the admins !
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
15 urls = {
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
16 "202": {
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
17 "full": "https://data.gtdb.ecogenomic.org/releases/release202/202.0/auxillary_files/gtdbtk_r202_data.tar.gz",
3
45d5763ab173 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 9f0b54aeff21df342d2593cff59e813b69cc7bad
iuc
parents: 2
diff changeset
18 "meta_ar": "https://data.gtdb.ecogenomic.org/releases/release202/202.0/ar122_metadata_r202.tar.gz",
45d5763ab173 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 9f0b54aeff21df342d2593cff59e813b69cc7bad
iuc
parents: 2
diff changeset
19 "meta_bac": "https://data.gtdb.ecogenomic.org/releases/release202/202.0/bac120_metadata_r202.tar.gz",
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
20 },
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
21 "207": {
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
22 "full": "https://data.gtdb.ecogenomic.org/releases/release207/207.0/auxillary_files/gtdbtk_r207_data.tar.gz",
3
45d5763ab173 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 9f0b54aeff21df342d2593cff59e813b69cc7bad
iuc
parents: 2
diff changeset
23 "meta_ar": "https://data.gtdb.ecogenomic.org/releases/release207/207.0/ar53_metadata_r207.tar.gz",
45d5763ab173 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 9f0b54aeff21df342d2593cff59e813b69cc7bad
iuc
parents: 2
diff changeset
24 "meta_bac": "https://data.gtdb.ecogenomic.org/releases/release207/207.0/bac120_metadata_r207.tar.gz",
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
25 },
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
26 "214": {
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
27 "full": "https://data.gtdb.ecogenomic.org/releases/release214/214.0/auxillary_files/gtdbtk_r214_data.tar.gz",
3
45d5763ab173 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 9f0b54aeff21df342d2593cff59e813b69cc7bad
iuc
parents: 2
diff changeset
28 "meta_ar": "https://data.gtdb.ecogenomic.org/releases/release214/214.1/ar53_metadata_r214.tsv.gz",
45d5763ab173 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 9f0b54aeff21df342d2593cff59e813b69cc7bad
iuc
parents: 2
diff changeset
29 "meta_bac": "https://data.gtdb.ecogenomic.org/releases/release214/214.1/bac120_metadata_r214.tsv.gz",
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
30 },
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
31 "220": {
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
32 "full": "https://data.gtdb.ecogenomic.org/releases/release220/220.0/auxillary_files/gtdbtk_package/full_package/gtdbtk_r220_data.tar.gz",
3
45d5763ab173 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 9f0b54aeff21df342d2593cff59e813b69cc7bad
iuc
parents: 2
diff changeset
33 "meta_ar": "https://data.gtdb.ecogenomic.org/releases/release220/220.0/ar53_metadata_r220.tsv.gz",
45d5763ab173 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 9f0b54aeff21df342d2593cff59e813b69cc7bad
iuc
parents: 2
diff changeset
34 "meta_bac": "https://data.gtdb.ecogenomic.org/releases/release220/220.0/bac120_metadata_r220.tsv.gz",
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
35 },
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
36 }
0
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
37
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
38
4
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
39 def is_urlfile(url):
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
40 # Check if online file exists
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
41 try:
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
42 r = urlopen(url) # response
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
43 return r.getcode() < 400
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
44 except HTTPError:
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
45 return False
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
46
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
47
8
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
48 def extract_tar_iteratively(tarball, target_directory):
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
49 """
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
50 Extracts a .tar, .tar.gz, or .tar.bz2 archive iteratively in a memory-efficient manner.
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
51
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
52 This function processes the contents of the archive member-by-member, ensuring only
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
53 one file or directory is loaded into memory at any given time. It handles the creation
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
54 of directories and symbolic links, and streams large files to disk in chunks to avoid
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
55 memory overload.
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
56
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
57 Args:
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
58 tarball (str): Path to the tar archive (e.g., .tar, .tar.gz, .tar.bz2) to be extracted.
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
59 target_directory (str): The destination directory where the archive content
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
60 will be extracted.
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
61
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
62 Raises:
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
63 OSError: If there is an issue with file or directory creation, or writing to disk.
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
64 tarfile.TarError: If there is an issue opening or reading the tar archive.
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
65
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
66 Example Usage:
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
67 extract_tar_iteratively("archive.tar.gz", "/path/to/extract")
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
68
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
69 Notes:
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
70 - The function supports symbolic and hard links present in the tar archive.
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
71 - It ensures that directories are created before files are extracted.
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
72 - Large files are streamed to disk in 1 MB chunks to minimize memory usage.
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
73 - This function does not return anything but will populate the target directory with
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
74 the extracted content.
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
75 """
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
76
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
77 with tarfile.open(tarball, "r:*") as fh:
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
78 for member in fh:
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
79 # Full path to where the member should be extracted
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
80 member_path = os.path.join(target_directory, member.name)
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
81
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
82 if member.isdir():
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
83 # If it's a directory, ensure it exists
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
84 os.makedirs(member_path, exist_ok=True)
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
85 elif member.isfile():
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
86 # If it's a file, extract it in chunks to avoid memory spikes
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
87 with fh.extractfile(member) as source, open(
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
88 member_path, "wb"
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
89 ) as target:
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
90 shutil.copyfileobj(
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
91 source, target, length=1024 * 1024
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
92 ) # 1 MB chunks
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
93 elif member.issym() or member.islnk():
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
94 # Handle symlinks or hard links if necessary
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
95 target_link = os.path.join(target_directory, member.name)
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
96 if member.issym():
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
97 os.symlink(member.linkname, target_link)
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
98 elif member.islnk():
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
99 os.link(member.linkname, target_link)
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
100
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
101
4
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
102 def url_download(url, target_directory, meta):
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
103
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
104 # download the url
0
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
105 url_parts = urlparse(url)
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
106 tarball = os.path.abspath(
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
107 os.path.join(target_directory, os.path.basename(url_parts.path))
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
108 )
0
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
109 src = None
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
110 dst = None
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
111 try:
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
112 req = Request(url)
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
113 src = urlopen(req)
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
114 with open(tarball, "wb") as dst:
0
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
115 while True:
8
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
116 chunk = src.read(2**16) # Read in 64 KB chunks instead of 1 KB
0
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
117 if chunk:
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
118 dst.write(chunk)
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
119 else:
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
120 break
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
121 except Exception as e:
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
122 sys.exit(str(e))
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
123 finally:
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
124 if src is not None:
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
125 src.close()
4
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
126
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
127 # extract the metadata
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
128 if meta:
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
129 # extract the content of *.tar.gz into the target dir
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
130 if tarfile.is_tarfile(tarball):
8
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
131 extract_tar_iteratively(tarball, target_directory)
4
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
132 os.remove(tarball)
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
133 return target_directory # return path to output folder
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
134 # extract the content of *.gz into the target dir
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
135 elif ".gz" in tarball:
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
136 with gzip.open(tarball, "rb") as f_in:
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
137 unzipped_file = tarball.strip(".gz")
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
138 with open(unzipped_file, "wb") as f_out:
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
139 shutil.copyfileobj(f_in, f_out)
4
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
140 os.remove(tarball)
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
141 folder_of_unzipped_file = os.path.dirname(unzipped_file)
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
142 return folder_of_unzipped_file
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
143 else:
4
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
144 sys.exit(
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
145 "No correct input format for metadata file, must be .tar.gz or .gz"
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
146 )
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
147 else:
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
148 # handle the DB
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
149 # extract the content of the folder in the tar.gz into the target dir
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
150 if tarfile.is_tarfile(tarball):
8
6a6175006cb9 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 1019bf0fda897582e2bbdc773aebb3e08e285aae
iuc
parents: 7
diff changeset
151 extract_tar_iteratively(tarball, target_directory)
4
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
152 os.remove(tarball)
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
153 else:
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
154 # handle the test case for the DB
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
155 return tarball
4
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
156
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
157 # The tarball extraction will create a directory named
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
158 # something like release202 in the target_directory, so
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
159 # we need to move the items in that directory to the
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
160 # target directory.
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
161 subdir = next(os.walk(target_directory))[1][0]
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
162 subdir_path = os.path.join(target_directory, subdir)
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
163 items = os.listdir(subdir_path)
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
164 for item in items:
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
165 item_path = os.path.join(subdir_path, item)
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
166 shutil.move(item_path, target_directory)
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
167 os.rmdir(subdir_path)
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
168 return target_directory
0
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
169
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
170
7
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
171 def create_data_manager_entry(database_name, release, file_path):
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
172 time = date.today().strftime("%Y-%m-%d")
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
173 data_manager_entry = {}
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
174 data_manager_entry["value"] = (
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
175 f"{database_name.replace(' ', '_').lower()}_release_{release}_downloaded_{time}"
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
176 )
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
177 data_manager_entry["name"] = f"{database_name} - release {release} ({time})"
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
178 data_manager_entry["path"] = file_path
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
179 data_manager_entry["version"] = release
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
180 return data_manager_entry
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
181
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
182
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
183 def download(release, meta, test, out_file):
0
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
184
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
185 with open(out_file) as fh:
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
186 params = json.load(fh)
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
187
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
188 target_directory = params["output_data"][0]["extra_files_path"]
0
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
189 os.makedirs(target_directory)
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
190
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
191 if test:
4
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
192 # switch the DB to use the test case
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
193 urls[release][
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
194 "full"
6
387d8c613b98 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit a7a73e892ade5f3cb5207c411b8ac27b684316ff
iuc
parents: 4
diff changeset
195 ] = "https://zenodo.org/records/13734217/files/release220-test.tar.gz"
4
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
196
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
197 # make use of the test to check if all urls exists
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
198 for _version, items in urls.items():
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
199 for url in items.values():
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
200 assert is_urlfile(url)
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
201
7
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
202 data_manager_json = {"data_tables": {}}
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
203
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
204 # download taxonomy metadata tables
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
205 if meta:
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
206 url = urls[release]["meta_ar"]
7
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
207 url_download(url, target_directory, meta)
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
208 url = urls[release]["meta_bac"]
4
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
209 file_path = url_download(url, target_directory, meta)
7
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
210
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
211 data_manager_json["data_tables"]["gtdbtk_database_metadata_versioned"] = [
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
212 create_data_manager_entry("Metadata Tables", release, file_path)
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
213 ]
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
214 # download the full DB
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
215 else:
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
216 url = urls[release]["full"]
4
700c4fbdd3e1 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 0bb620025a61de6caa8a93537fec8ea65eda43be
iuc
parents: 3
diff changeset
217 file_path = url_download(url, target_directory, meta)
7
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
218 data_manager_json["data_tables"]["gtdbtk_database_versioned"] = [
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
219 create_data_manager_entry("Full Database", release, file_path)
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
220 ]
0
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
221
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
222 # store in dedicated metadata table
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
223 with open(out_file, "w") as fh:
0
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
224 json.dump(data_manager_json, fh, sort_keys=True)
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
225
3221e031d107 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 69da0d34ea6e72c0427ec2d3e882c86cbb90833f
iuc
parents:
diff changeset
226
7
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
227 if __name__ == "__main__":
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
228 parser = argparse.ArgumentParser()
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
229
7
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
230 parser.add_argument("--version", dest="version", help="DB version")
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
231 parser.add_argument(
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
232 "--release", dest="release", help="Release of the GTDB-Tk database version"
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
233 )
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
234 parser.add_argument("--out_file", dest="out_file", help="JSON output file")
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
235 parser.add_argument(
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
236 "--meta",
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
237 dest="meta",
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
238 action="store_true",
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
239 help="Store meta data flag",
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
240 )
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
241 parser.add_argument(
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
242 "--test",
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
243 dest="test",
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
244 action="store_true",
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
245 help="Run test",
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
246 )
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
247 args = parser.parse_args()
2
9dcb593e8a43 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit ad14947c3e13babe90a6878b45608fe56a16150d
iuc
parents: 0
diff changeset
248
7
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
249 download(
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
250 args.release,
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
251 args.meta,
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
252 args.test,
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
253 args.out_file,
05f85f5bfc48 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_gtdbtk_database_installer commit 671e8c706fa211b6ec1c476d3d1a36d098822fe5
iuc
parents: 6
diff changeset
254 )