setup: make find_trial self-contained so that we don't have a bootstrapping problem -- if allmydata can't be imported we still want to be able to run find_trial

This commit is contained in:
Zooko O'Whielacronx 2008-01-23 10:04:26 -07:00
parent 49dccbd466
commit 284c1652a9

View File

@ -1,9 +1,36 @@
import sys
from allmydata.util import find_exe
import os, sys
from twisted.python.procutils import which
def find_exe(exename):
"""
Look for something named exename or exename + ".py".
This is a kludge.
@return: a list containing one element which is the path to the exename
(if it is thought to be executable), or else the first element being
sys.executable and the second element being the path to the
exename + ".py", or else return False if one can't be found
"""
exes = which(exename)
exe = exes and exes[0]
if not exe:
exe = os.path.join(sys.prefix, 'scripts', exename + '.py')
if os.path.exists(exe):
path, ext = os.path.splitext(exe)
if ext.lower() in [".exe", ".bat",]:
cmd = [exe,]
else:
cmd = [sys.executable, exe,]
return cmd
else:
return False
if __name__ == "__main__":
cmd = find_exe.find_exe("trial")
cmd = find_exe("trial")
if cmd:
print " ".join(cmd).replace("\\", "/")
else: