Mercurial > repos > iuc > data_manager_qiime_database_downloader
annotate data_manager/data_manager_qiime_download.py @ 1:9e86c09a6cae draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 69bafe5431fe44d46fdaa6d71145a17c20cef4e9
author | iuc |
---|---|
date | Fri, 23 Jun 2017 18:53:49 -0400 |
parents | f8608fddfb23 |
children | cbe065fbd038 |
rev | line source |
---|---|
0
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
1 #!/usr/bin/env python |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
2 # Data manager for reference data for the QIIME Galaxy tools |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
3 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
4 import argparse |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
5 import ftplib |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
6 import json |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
7 import os |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
8 import tarfile |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
9 import zipfile |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
10 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
11 import requests |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
12 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
13 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
14 protocol = { |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
15 "unite": "http", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
16 "greengenes": "ftp", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
17 "silva": "http", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
18 "img": "ftp" |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
19 } |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
20 baseUrl = { |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
21 "unite": "http://unite.ut.ee/sh_files/sh_qiime_release_", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
22 "greengenes": "greengenes.microbio.me", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
23 "silva": "http://www.arb-silva.de/fileadmin/silva_databases/qiime/Silva_", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
24 "img": "ftp.microbio.me" |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
25 } |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
26 ftp_dir = { |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
27 "greengenes": "/greengenes_release/gg_", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
28 "img": "" |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
29 } |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
30 ftp_file_prefix = { |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
31 "greengenes": "gg_", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
32 "img": "" |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
33 } |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
34 ftp_file_suffix = { |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
35 "greengenes": "_otus", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
36 "img": "" |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
37 } |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
38 extension = { |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
39 "unite": "zip", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
40 "greengenes": "tar.gz", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
41 "silva": { |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
42 "104_release": "tgz", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
43 "108_release": "tgz", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
44 "108_release_curated": "tgz", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
45 "111_release": "tgz", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
46 "119_consensus_majority_taxonomy": "zip", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
47 "119_release": "zip", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
48 "119_release_aligned_rep_files": "tar.gz", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
49 "123_release": "zip", |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
50 "128_release": "tgz"}, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
51 "img": "tgz" |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
52 } |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
53 filetypes = ["rep_set", "rep_set_aligned", "taxonomy", "trees"] |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
54 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
55 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
56 # Utility functions for interacting with Galaxy JSON |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
57 def read_input_json(jsonfile): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
58 """Read the JSON supplied from the data manager tool |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
59 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
60 Returns a tuple (param_dict,extra_files_path) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
61 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
62 'param_dict' is an arbitrary dictionary of parameters |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
63 input into the tool; 'extra_files_path' is the path |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
64 to a directory where output files must be put for the |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
65 receiving data manager to pick them up. |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
66 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
67 NB the directory pointed to by 'extra_files_path' |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
68 doesn't exist initially, it is the job of the script |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
69 to create it if necessary. |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
70 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
71 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
72 params = json.loads(open(jsonfile).read()) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
73 return (params['param_dict'], |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
74 params['output_data'][0]['extra_files_path']) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
75 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
76 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
77 # Utility functions for creating data table dictionaries |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
78 # |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
79 # Example usage: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
80 # >>> d = create_data_tables_dict() |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
81 # >>> add_data_table(d,'my_data') |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
82 # >>> add_data_table_entry(dict(dbkey='hg19',value='human')) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
83 # >>> add_data_table_entry(dict(dbkey='mm9',value='mouse')) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
84 # >>> print str(json.dumps(d)) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
85 def create_data_tables_dict(): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
86 """Return a dictionary for storing data table information |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
87 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
88 Returns a dictionary that can be used with 'add_data_table' |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
89 and 'add_data_table_entry' to store information about a |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
90 data table. It can be converted to JSON to be sent back to |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
91 the data manager. |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
92 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
93 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
94 d = {} |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
95 d['data_tables'] = {} |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
96 return d |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
97 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
98 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
99 def add_data_table(d, table): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
100 """Add a data table to the data tables dictionary |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
101 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
102 Creates a placeholder for a data table called 'table'. |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
103 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
104 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
105 d['data_tables'][table] = [] |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
106 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
107 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
108 def add_data_table_entry(d, table, entry): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
109 """Add an entry to a data table |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
110 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
111 Appends an entry to the data table 'table'. 'entry' |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
112 should be a dictionary where the keys are the names of |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
113 columns in the data table. |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
114 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
115 Raises an exception if the named data table doesn't |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
116 exist. |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
117 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
118 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
119 try: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
120 d['data_tables'][table].append(entry) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
121 except KeyError: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
122 raise Exception("add_data_table_entry: no table '%s'" % table) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
123 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
124 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
125 def get_ftp_file(ftp, filename): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
126 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
127 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
128 try: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
129 ftp.retrbinary("RETR " + filename, open(filename, 'wb').write) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
130 except: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
131 print("Error") |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
132 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
133 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
134 def download_archive(db, version, ext): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
135 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
136 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
137 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
138 filepath = "%s_%s.%s" % (db, version, ext) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
139 if protocol[db] == "http": |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
140 url = "%s%s.%s" % (baseUrl[db], version, ext) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
141 r = requests.get(url, stream=True) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
142 r.raise_for_status() |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
143 with open(filepath, "wb") as fd: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
144 for chunk in r.iter_content(chunk_size=128): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
145 fd.write(chunk) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
146 elif protocol[db] == "ftp": |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
147 ftp = ftplib.FTP(baseUrl[db]) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
148 ftp.login("anonymous", "ftplib-example-1") |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
149 if db == "greengenes" and version == "13_8": |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
150 ftp.cwd("%s%s" % (ftp_dir[db], "13_5")) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
151 else: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
152 ftp.cwd("%s%s" % (ftp_dir[db], version)) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
153 filepath = "%s%s%s.%s" % ( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
154 ftp_file_prefix[db], |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
155 version, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
156 ftp_file_suffix[db], |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
157 ext) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
158 get_ftp_file(ftp, filepath) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
159 ftp.quit() |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
160 return filepath |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
161 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
162 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
163 def find_archive_content_path(archive_content_path): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
164 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
165 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
166 content = os.listdir(archive_content_path) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
167 archive_content = [] |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
168 for x in content: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
169 if not x.startswith(".") and not x.startswith("_"): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
170 archive_content.append(x) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
171 if len(archive_content) == 1: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
172 archive_content_path = os.path.join( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
173 archive_content_path, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
174 archive_content[0]) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
175 return archive_content_path |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
176 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
177 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
178 def extract_archive(filepath, ext, db): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
179 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
180 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
181 archive_content_path = "tmp" |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
182 if ext == "tar.gz" or ext == "tgz": |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
183 tar = tarfile.open(filepath) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
184 tar.extractall(path=archive_content_path) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
185 tar.close() |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
186 archive_content_path = find_archive_content_path(archive_content_path) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
187 elif ext == "zip": |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
188 zip_ref = zipfile.ZipFile(filepath, 'r') |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
189 zip_ref.extractall(archive_content_path) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
190 zip_ref.close() |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
191 archive_content_path = find_archive_content_path(archive_content_path) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
192 return archive_content_path |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
193 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
194 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
195 def move_unite_files(archive_content_path, filename_prefix, name_prefix, data_tables, target_dir): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
196 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
197 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
198 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
199 archive_content = os.listdir(archive_content_path) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
200 for content in archive_content: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
201 content_filepath = os.path.join(archive_content_path, content) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
202 content_name_prefix = "%s - %s" % (name_prefix, content.split(".")[0]) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
203 content_filename_prefix = "%s_%s" % (filename_prefix, content) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
204 if content.find("refs") != -1: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
205 move_file( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
206 content_filepath, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
207 content_filename_prefix, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
208 content_name_prefix, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
209 data_tables, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
210 os.path.join(target_dir, "rep_set"), |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
211 "rep_set") |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
212 elif content.find("taxonomy") != -1: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
213 move_file( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
214 content_filepath, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
215 content_filename_prefix, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
216 content_name_prefix, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
217 data_tables, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
218 os.path.join(target_dir, "taxonomy"), |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
219 "taxonomy") |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
220 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
221 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
222 def move_file(input_filepath, filename, name, data_tables, target_dir, filetype): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
223 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
224 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
225 output_filepath = os.path.join(target_dir, filename) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
226 os.rename(input_filepath, output_filepath) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
227 add_data_table_entry( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
228 data_tables, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
229 "qiime_%s" % (filetype), |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
230 dict( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
231 dbkey=filename, |
1
9e86c09a6cae
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 69bafe5431fe44d46fdaa6d71145a17c20cef4e9
iuc
parents:
0
diff
changeset
|
232 value=os.path.splitext(filename)[0], |
0
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
233 name=name, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
234 path=output_filepath)) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
235 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
236 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
237 def move_dir_content(input_path, filename_prefix, name_prefix, data_tables, target_dir, filetype): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
238 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
239 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
240 for content in os.listdir(input_path): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
241 if content.startswith("."): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
242 continue |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
243 content_path = os.path.join(input_path, content) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
244 content_name_prefix = "%s - %s" % (name_prefix, content.split(".")[0]) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
245 content_filename_prefix = "%s_%s" % (filename_prefix, content) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
246 if os.path.isdir(content_path): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
247 move_dir_content( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
248 content_path, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
249 content_filename_prefix, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
250 content_name_prefix, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
251 data_tables, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
252 target_dir, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
253 filetype) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
254 else: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
255 move_file( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
256 content_path, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
257 content_filename_prefix, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
258 content_name_prefix, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
259 data_tables, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
260 target_dir, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
261 filetype) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
262 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
263 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
264 def move_files(archive_content_path, filename_prefix, name_prefix, data_tables, target_dir, db, version): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
265 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
266 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
267 for filetype in filetypes: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
268 if filetype == "rep_set_aligned": |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
269 if db == "greengenes" and version == "12_10": |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
270 continue |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
271 filetype_target_dir = os.path.join( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
272 target_dir, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
273 filetype) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
274 filetype_path = os.path.join( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
275 archive_content_path, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
276 filetype) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
277 move_dir_content( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
278 filetype_path, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
279 filename_prefix, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
280 name_prefix, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
281 data_tables, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
282 filetype_target_dir, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
283 filetype) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
284 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
285 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
286 def download_db(data_tables, db, version, target_dir): |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
287 """Download QIIME database |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
288 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
289 Creates references to the specified file(s) on the Galaxy |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
290 server in the appropriate data table (determined from the |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
291 file extension). |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
292 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
293 The 'data_tables' dictionary should have been created using |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
294 the 'create_data_tables_dict' and 'add_data_table' functions. |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
295 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
296 Arguments: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
297 data_tables: a dictionary containing the data table info |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
298 db: name of the database |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
299 version: version of the database |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
300 table_name: name of the table |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
301 target_dir: directory to put copy or link to the data file |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
302 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
303 """ |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
304 ext = extension[db] |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
305 if db == "silva": |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
306 ext = ext[version] |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
307 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
308 print("Download archive") |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
309 filepath = download_archive(db, version, ext) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
310 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
311 print("Extract archive %s" % filepath) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
312 archive_content_path = extract_archive(filepath, ext, db) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
313 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
314 print("Moving file from %s" % archive_content_path) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
315 filename_prefix = "%s_%s" % (db, version) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
316 name_prefix = "%s (%s)" % (db, version) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
317 if db == "greengenes" or db == "silva": |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
318 move_files( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
319 archive_content_path, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
320 filename_prefix, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
321 name_prefix, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
322 data_tables, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
323 target_dir, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
324 db, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
325 version) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
326 elif db == "unite": |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
327 move_unite_files( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
328 archive_content_path, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
329 filename_prefix, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
330 name_prefix, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
331 data_tables, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
332 target_dir) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
333 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
334 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
335 if __name__ == "__main__": |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
336 print("Starting...") |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
337 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
338 # Read command line |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
339 parser = argparse.ArgumentParser( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
340 description='Download QIIME reference database') |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
341 parser.add_argument('--database', help="Database name") |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
342 parser.add_argument('--version', help="Database version") |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
343 parser.add_argument('--jsonfile', help="Output JSON file") |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
344 args = parser.parse_args() |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
345 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
346 jsonfile = args.jsonfile |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
347 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
348 # Read the input JSON |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
349 params, target_dir = read_input_json(jsonfile) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
350 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
351 # Make the target directory |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
352 print("Making %s" % target_dir) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
353 os.mkdir(target_dir) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
354 os.mkdir(os.path.join(target_dir, "rep_set")) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
355 os.mkdir(os.path.join(target_dir, "rep_set_aligned")) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
356 os.mkdir(os.path.join(target_dir, "taxonomy")) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
357 os.mkdir(os.path.join(target_dir, "trees")) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
358 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
359 # Set up data tables dictionary |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
360 data_tables = create_data_tables_dict() |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
361 add_data_table(data_tables, "qiime_rep_set") |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
362 add_data_table(data_tables, "qiime_rep_set_aligned") |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
363 add_data_table(data_tables, "qiime_taxonomy") |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
364 add_data_table(data_tables, "qiime_trees") |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
365 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
366 # Fetch data from specified data sources |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
367 download_db( |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
368 data_tables, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
369 args.database, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
370 args.version, |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
371 target_dir) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
372 |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
373 # Write output JSON |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
374 print("Outputting JSON") |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
375 print(str(json.dumps(data_tables))) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
376 with open(jsonfile, 'w') as out: |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
377 json.dump(data_tables, out) |
f8608fddfb23
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_qiime_database_downloader commit 4934eb34300b5fa54d62d8b67e5b6e989e963ac9
iuc
parents:
diff
changeset
|
378 print("Done.") |