# HG changeset patch
# User matthias
# Date 1557433233 14400
# Node ID d1beb6fba192695755271c979307da82630053ff
planemo upload for repository https://github.com/bernt-matthias/mb-galaxy-tools/tree/master/data_managers/data_manager_mitos commit a7354d02377105590891f7337f472dc2a2f224a4
diff -r 000000000000 -r d1beb6fba192 data_manager/data_manager.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/data_manager/data_manager.py Thu May 09 16:20:33 2019 -0400
@@ -0,0 +1,90 @@
+import argparse
+import json
+import os
+import shutil
+import sys
+import tarfile
+try:
+ # For Python 3.0 and later
+ from urllib.request import Request, urlopen
+except ImportError:
+ # Fall back to Python 2 imports
+ from urllib2 import Request, urlopen
+
+ZENODO = {
+ "mitos":"2683856",
+ "mitos2": "2672835"
+}
+
+NAMES = {
+ "mitos1-refdata": "RefSeq39 + MiTFi tRNA models",
+ "refseq39": "RefSeq39 (equivalent to MITOS1 data)",
+ "refseq63m": "RefSeq63 Metazoa",
+ "refseq63f": "RefSeq63 Fungi",
+ "refseq63o": "RefSeq63 Opisthokonta",
+ "refseq81m": "RefSeq81 Metazoa",
+ "refseq81f": "RefSeq81 Fungi",
+ "refseq81o": "RefSeq81 Opisthokonta"
+}
+
+def url_download(tpe, db, workdir):
+ """
+ download http://ab.inf.uni-tuebingen.de/data/software/megan6/download/FNAME
+ to workdir
+ and unzip
+
+ return the name of the resulting dir
+ """
+ tarfname = os.path.join(workdir, db + ".tar.bz")
+ if not os.path.exists(workdir):
+ os.makedirs(workdir)
+ src = None
+ dst = None
+ try:
+ req = Request("https://zenodo.org/record/{zenodoid}/files/{db}.tar.bz2?download=1".format(zenodoid=ZENODO[tpe], db=db))
+ src = urlopen(req)
+ with open(tarfname, 'wb') as dst:
+ while True:
+ chunk = src.read(2**10)
+ if chunk:
+ dst.write(chunk)
+ else:
+ break
+ finally:
+ if src:
+ src.close()
+ with tarfile.open(tarfname, "r:bz2") as tar:
+ tar.extractall(workdir)
+ os.remove(tarfname)
+ unzipped = os.listdir(workdir)
+ assert len(unzipped) == 1
+ return unzipped[0]
+
+def main(tpe, db, outjson):
+
+ workdir = os.getcwd()
+
+ path = url_download(tpe, db, workdir)
+
+ data_manager_entry = {}
+ data_manager_entry['value'] = db
+ data_manager_entry['name'] = NAMES[db]
+ data_manager_entry['type'] = tpe
+ data_manager_entry['path'] = path
+ data_manager_json = dict(data_tables=dict(mitos=data_manager_entry))
+
+ params = json.loads(open(outjson).read())
+ target_directory = params['output_data'][0]['extra_files_path']
+ os.mkdir(target_directory)
+ output_path = os.path.abspath(os.path.join(os.getcwd(), 'mitos'))
+ shutil.move(os.path.join(workdir, path), target_directory)
+ file(outjson, 'w').write(json.dumps(data_manager_json))
+
+if __name__ == '__main__':
+ parser = argparse.ArgumentParser(description='Create data manager json.')
+ parser.add_argument('--out', action='store', help='JSON filename')
+ parser.add_argument('--type', action='store', help='mitos version')
+ parser.add_argument('--db', action='store', help='db name')
+ args = parser.parse_args()
+
+ main(args.type, args.db, args.out)
diff -r 000000000000 -r d1beb6fba192 data_manager/mitos_fetcher.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/data_manager/mitos_fetcher.xml Thu May 09 16:20:33 2019 -0400
@@ -0,0 +1,52 @@
+
+
+ reference data downloader
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+TODO
+
+
+
diff -r 000000000000 -r d1beb6fba192 data_manager_conf.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/data_manager_conf.xml Thu May 09 16:20:33 2019 -0400
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
diff -r 000000000000 -r d1beb6fba192 test-data/mitos.loc
diff -r 000000000000 -r d1beb6fba192 test-data/mitos_refseq39.json
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/mitos_refseq39.json Thu May 09 16:20:33 2019 -0400
@@ -0,0 +1,1 @@
+{"data_tables": {"mitos": {"path": "mitos1-refdata", "type": "mitos", "name": "RefSeq39 + MiTFi tRNA models", "value": "mitos1-refdata"}}}
\ No newline at end of file
diff -r 000000000000 -r d1beb6fba192 tool-data/mitos.loc.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/mitos.loc.sample Thu May 09 16:20:33 2019 -0400
@@ -0,0 +1,8 @@
+# consists of 4 tab separated columns:
+# - value identifier
+# - name the name shown in the tool form
+# - type mitos/mitos2
+# - path the directory containing the reference data
+#
+# example:
+# mitos1-refdata RefSeq39 + MiTFi tRNA models mitos /tmp/tmpSp4v2Y/tmpR7DRNf/tmp53wbgs/database/data_manager_tool-dataWhw0Ns/mitos/mitos1-refdata
diff -r 000000000000 -r d1beb6fba192 tool_data_table_conf.xml.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool_data_table_conf.xml.sample Thu May 09 16:20:33 2019 -0400
@@ -0,0 +1,8 @@
+
+
+
+
+ value, name, type, path
+
+
+
diff -r 000000000000 -r d1beb6fba192 tool_data_table_conf.xml.test
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool_data_table_conf.xml.test Thu May 09 16:20:33 2019 -0400
@@ -0,0 +1,7 @@
+
+
+
+ value, name, type, path
+
+
+