annotate data_manager/fetch_vep_cache_data.py @ 0:de3516853bde draft default tip

Uploaded
author davidvanzessen
date Fri, 30 Nov 2018 09:56:38 -0500
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
1 import argparse
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
2 import os
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
3 import json
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
4 import re
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
5 import pprint
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
6 import subprocess
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
7 import sys
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
8
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
9 if __name__ == "__main__":
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
10 parser = argparse.ArgumentParser(description="Use VEP INSTALL.pl to download/process the cache for an assembly")
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
11 parser.add_argument("--output-file")
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
12 parser.add_argument("--output-dir")
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
13 parser.add_argument("--assembly")
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
14 args = parser.parse_args()
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
15
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
16 output_file = args.output_file
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
17 output_dir = args.output_dir
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
18 assembly = args.assembly
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
19 extra = args.assembly
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
20
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
21 with open(output_file) as output_file_handle:
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
22 params = json.loads(output_file_handle.read())
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
23
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
24 print(output_file)
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
25 print(output_dir)
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
26 print(assembly)
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
27 pprint.pprint(params)
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
28
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
29 if not os.path.exists(output_dir):
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
30 os.makedirs(output_dir)
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
31
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
32 vep_install_cmd = ["vep_install", "--NO_HTSLIB", "-a alcf", "--CACHEDIR", output_dir, "--SPECIES", assembly]
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
33 vep_install_cmd = "vep_install --NO_HTSLIB -a alcf --CACHEDIR {0} --SPECIES {1}".format(output_dir, assembly)
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
34 print("Running INSTALL.pl")
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
35 #print(" ".join(vep_install_cmd))
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
36 print(vep_install_cmd)
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
37 exit_code = subprocess.call(vep_install_cmd, cwd=output_dir, shell=True)
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
38 #process = subprocess.Popen(vep_install_cmd, shell=True, cwd=output_dir)
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
39
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
40 print(exit_code)
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
41
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
42 output_dict = dict(
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
43 data_tables=dict(
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
44 vep_cache_data=[{
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
45 "path": output_dir,
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
46 "dbkey": assembly,
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
47 "name": assembly,
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
48 "value": assembly
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
49 }]
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
50 )
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
51 )
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
52 with open(output_file, 'w') as output_file_handle:
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
53 output_file_handle.write(json.dumps(output_dict))
de3516853bde Uploaded
davidvanzessen
parents:
diff changeset
54 sys.exit(0)