annotate getlocalrpackages.py @ 0:2ac21c27018a draft default tip

Uploaded
author iuc
date Tue, 07 Apr 2015 10:29:55 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
2ac21c27018a Uploaded
iuc
parents:
diff changeset
1 import os
2ac21c27018a Uploaded
iuc
parents:
diff changeset
2 import subprocess
2ac21c27018a Uploaded
iuc
parents:
diff changeset
3 import sys
2ac21c27018a Uploaded
iuc
parents:
diff changeset
4
2ac21c27018a Uploaded
iuc
parents:
diff changeset
5
2ac21c27018a Uploaded
iuc
parents:
diff changeset
6 def find_packages(prefix="package_r_"):
2ac21c27018a Uploaded
iuc
parents:
diff changeset
7 """
2ac21c27018a Uploaded
iuc
parents:
diff changeset
8 """
2ac21c27018a Uploaded
iuc
parents:
diff changeset
9 #locate env.sh | grep -i package_r_
2ac21c27018a Uploaded
iuc
parents:
diff changeset
10 #/data/extended/galaxyJune14_2014/tool_dependency/readline/6.2/devteam/package_r_2_15_0/8ab0d08a3da1/env.sh
2ac21c27018a Uploaded
iuc
parents:
diff changeset
11 #/data/home/rlazarus/galaxy/tool_dependency_dir/R_3_1_1/3.1.1/fubar/package_r_3_1_1/5f1b8d22140a/env.sh
2ac21c27018a Uploaded
iuc
parents:
diff changeset
12 #/data/home/rlazarus/galaxy/tool_dependency_dir/R_3_1_1/3.1.1/fubar/package_r_3_1_1/d9964efbfbe3/env.sh
2ac21c27018a Uploaded
iuc
parents:
diff changeset
13 #/data/home/rlazarus/galtest/tool_dependency_dir/R_3_1_1/3.1.1/fubar/package_r_3_1_1/63cdb9b2234c/env.sh
2ac21c27018a Uploaded
iuc
parents:
diff changeset
14 eprefix = prefix
2ac21c27018a Uploaded
iuc
parents:
diff changeset
15 if prefix.find('/') <> -1:
2ac21c27018a Uploaded
iuc
parents:
diff changeset
16 eprefix = prefix.replace('/','\/') # for grep
2ac21c27018a Uploaded
iuc
parents:
diff changeset
17 path = '.'
2ac21c27018a Uploaded
iuc
parents:
diff changeset
18 # fails on nitesh's recent mac - locate not working
2ac21c27018a Uploaded
iuc
parents:
diff changeset
19 # cl = ['locate env.sh | grep -i %s' % eprefix,]
2ac21c27018a Uploaded
iuc
parents:
diff changeset
20 cl = ['find %s -iname "env.sh" | grep -i %s' % (path,eprefix),]
2ac21c27018a Uploaded
iuc
parents:
diff changeset
21 p = subprocess.Popen(cl, stdout=subprocess.PIPE, stderr=subprocess.PIPE,shell=True)
2ac21c27018a Uploaded
iuc
parents:
diff changeset
22 out, err = p.communicate()
2ac21c27018a Uploaded
iuc
parents:
diff changeset
23 fpaths = out.split('\n')
2ac21c27018a Uploaded
iuc
parents:
diff changeset
24 fpaths = [x for x in fpaths if len(x) > 1]
2ac21c27018a Uploaded
iuc
parents:
diff changeset
25 fver = [x.split(os.path.sep)[-4:-1] for x in fpaths]
2ac21c27018a Uploaded
iuc
parents:
diff changeset
26 # >>> foo.split(os.path.sep)[-4:-1]
2ac21c27018a Uploaded
iuc
parents:
diff changeset
27 # ['fubar', 'package_r_3_1_1', '63cdb9b2234c']
2ac21c27018a Uploaded
iuc
parents:
diff changeset
28 if len(fpaths) > 0:
2ac21c27018a Uploaded
iuc
parents:
diff changeset
29 res = [['%s rev %s owner %s' % (x[1],x[2],x[0]),fpaths[i],False] for i,x in enumerate(fver)]
2ac21c27018a Uploaded
iuc
parents:
diff changeset
30 res[0][2] = True # selected if more than one
2ac21c27018a Uploaded
iuc
parents:
diff changeset
31 res.insert(0,['Use default (system) interpreter','system',False])
2ac21c27018a Uploaded
iuc
parents:
diff changeset
32 else:
2ac21c27018a Uploaded
iuc
parents:
diff changeset
33 res = [['Use default (system) interpreter','system',True],
2ac21c27018a Uploaded
iuc
parents:
diff changeset
34 ['**WARNING** NO package env.sh files found - is the "find" system command working? Are any interpreters installed?','system',False]]
2ac21c27018a Uploaded
iuc
parents:
diff changeset
35 # return a triplet - user_sees,value,selected - all unselected if False
2ac21c27018a Uploaded
iuc
parents:
diff changeset
36 return res
2ac21c27018a Uploaded
iuc
parents:
diff changeset
37
2ac21c27018a Uploaded
iuc
parents:
diff changeset
38 def testapi():
2ac21c27018a Uploaded
iuc
parents:
diff changeset
39 host_url = 'http://localhost:8080'
2ac21c27018a Uploaded
iuc
parents:
diff changeset
40 new_path = [ os.path.join( os.getcwd(), "lib" ) ]
2ac21c27018a Uploaded
iuc
parents:
diff changeset
41 new_path.extend( sys.path[1:] ) # remove scripts/ from the path
2ac21c27018a Uploaded
iuc
parents:
diff changeset
42 sys.path = new_path
2ac21c27018a Uploaded
iuc
parents:
diff changeset
43 from galaxy import config
2ac21c27018a Uploaded
iuc
parents:
diff changeset
44 aconfig = config.Configuration( )
2ac21c27018a Uploaded
iuc
parents:
diff changeset
45 M_A_K = aconfig.master_api_key
2ac21c27018a Uploaded
iuc
parents:
diff changeset
46 tooldeps = aconfig.tool_dependency_dir
2ac21c27018a Uploaded
iuc
parents:
diff changeset
47 gi = GalaxyInstance(url=host_url, key=M_A_K)
2ac21c27018a Uploaded
iuc
parents:
diff changeset
48
2ac21c27018a Uploaded
iuc
parents:
diff changeset
49
2ac21c27018a Uploaded
iuc
parents:
diff changeset
50 if __name__ == "__main__":
2ac21c27018a Uploaded
iuc
parents:
diff changeset
51 print find_packages()
2ac21c27018a Uploaded
iuc
parents:
diff changeset
52