annotate data_manager/data_manager_refgenie_pull.py @ 0:aec9bc48cdb7 draft

"planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
author blankenberglab
date Fri, 10 Sep 2021 12:56:54 +0000
parents
children 2cb1863cd236
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
1 #!/usr/bin/env python
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
2
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
3
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
4 import argparse
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
5 import logging
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
6 from base64 import urlsafe_b64encode
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
7 from urllib.parse import urljoin
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
8
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
9 import refgenconf
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
10 import requests
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
11
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
12
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
13 log = logging.getLogger("tools.iuc.data_managers.data_manager_refgenie_pull")
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
14
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
15
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
16 def galaxy_code_get_refgenie_assets(refgenie_config_file):
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
17 rgc = refgenconf.RefGenConf(refgenie_config_file)
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
18 rval = []
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
19 for urlname, genomes in rgc.listr().items():
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
20 urlname_64 = urlsafe_b64encode(bytes(urlname, 'utf8')).decode('utf8')
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
21 ul = []
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
22 for genome, assets in genomes.items():
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
23 al = []
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
24 for name in assets:
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
25 al.append({'name': name, 'value': '%s/%s/%s' % (urlname_64, genome, name), 'options': [], 'selected': False})
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
26 ul.append({'name': genome, 'value': genome, 'options': al, 'selected': False})
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
27 rval.append({'name': urlname, 'value': urlname_64, 'options': ul, 'selected': False})
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
28 return rval
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
29
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
30
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
31 if __name__ == '__main__':
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
32 parser = argparse.ArgumentParser()
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
33 parser.add_argument('-n', '--names', dest='names', action='store', default=None, help='Table names to reload')
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
34 parser.add_argument('-u', '--url', dest='url', action='store', default=None, help='Base url for reload')
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
35 parser.add_argument('-k', '--key', dest='key', action='store', default=None, help='Galaxy API Key')
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
36
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
37 args = parser.parse_args()
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
38 if not args.names:
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
39 tables = requests.get(urljoin(args.url, "api/tool_data"), params={'key': args.key}).json()
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
40 args.names = [d.get('name') for d in tables]
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
41 for name in args.names:
aec9bc48cdb7 "planemo upload for repository https://github.com/blankenberglab/galaxy-tools-blankenberg/tree/master/data_managers/data_manager_refgenie_pull commit da4cbfcb158b1cf283c5736434fa88b645783306"
blankenberglab
parents:
diff changeset
42 print(requests.get(urljoin(args.url, "api/tool_data/%s/reload" % (name)), params={'key': args.key}).json())