Files
galaxy/tools/data_source/import.py
T
Nicola Soranzo 9b4de72ca6 Fix all E722 errors and ignore E741
Introduced in flake8 3.5.0
Fix import order.
2017-10-24 11:29:09 +01:00

63 lines
1.5 KiB
Python

#!/usr/bin/env python
"""
Script that imports locally stored data as a new dataset for the user
Usage: import id outputfile
"""
from __future__ import print_function
import os
import sys
assert sys.version_info[:2] >= (2, 6)
BUFFER = 1048576
dataid = sys.argv[1]
out_name = sys.argv[2]
id2name = {
'eryth' : 'ErythPreCRMmm3_cusTrk.txt',
'cishg16' : 'ReglRegHBBhg16CusTrk.txt',
'cishg17' : 'ReglRegHBBhg17CusTrk.txt',
'exons' : 'ExonsKnownGenes_mm3.txt',
'krhg16' : 'known_regulatory_hg16.bed',
'krhg17' : 'known_regulatory_hg17.bed',
'tARhg16mmc' : 'hg16.mouse.t_AR.cold.bed',
'tARhg16mmm' : 'hg16.mouse.t_AR.medium.bed',
'tARhg16mmh' : 'hg16.mouse.t_AR.hot.bed',
'tARhg16rnc' : 'hg16.rat.t_AR.cold.bed',
'tARhg16rnm' : 'hg16.rat.t_AR.medium.bed',
'tARhg16rnh' : 'hg16.rat.t_AR.hot.bed',
'phastConsHg16' : 'phastConsMost_hg16.bed',
'omimhg16' : 'omimDisorders_hg16.tab',
'omimhg17' : 'omimDisorders_hg17.tab',
}
fname = id2name.get(dataid, '')
if not fname:
print('Importing invalid data %s' % dataid)
sys.exit()
else:
print('Imported %s' % fname)
# this path is hardcoded
inp_name = os.path.join('database', 'import', fname)
try:
inp = open(inp_name, 'rt')
except Exception:
print('Could not find file %s' % inp_name)
sys.exit()
out = open(out_name, 'wt')
while 1:
data = inp.read(BUFFER)
if not data:
break
out.write(data)
inp.close()
out.close()