diff --git a/build.py b/build.py index 9a454a186ea..b6a21acc79e 100755 --- a/build.py +++ b/build.py @@ -12,6 +12,19 @@ import time import subprocess + +def popen(args, stdin=None, stdout=subprocess.PIPE, stderr=subprocess.PIPE): + copy = os.environ.copy() + return subprocess.Popen(args, env=copy, stdin=stdin, stdout=stdout, stderr=stderr) + + +def execute(args): + p = popen(args, stdout=sys.stdout, stderr=sys.stderr) + rc = p.wait() + if rc != 0: + sys.exit(rc) + + def notification(msg, prio): """ Provides UI notification. @@ -22,8 +35,7 @@ def notification(msg, prio): return try: - p = subprocess.Popen(["growlnotify","-t","OMERO Build Status","-p",str(prio)],\ - stdin=subprocess.PIPE,stdout=subprocess.PIPE,stderr=subprocess.PIPE) + p = popen(["growlnotify","-t","OMERO Build Status","-p",str(prio)], stdin=subprocess.PIPE) p.communicate(msg) rc = p.wait() if rc != 0: @@ -100,21 +112,18 @@ def choose_omero_version(): omero_build = "-%s" % omero_build command = [ find_java(), "omero","-q","version" ] + err = "" try: - p = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - omero_version,err = p.communicate() + p = popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + omero_version, err = p.communicate() omero_version = omero_version.split()[1] return [ "-Domero.version=%s%s" % (omero_version, omero_build) ] except: print "Error getting version for OMERO_BUILD=%s" % omero_build - print err + if err: + print err sys.exit(rc) -def execute(args): - rc = subprocess.call(args) - if rc != 0: - sys.exit(rc) - if __name__ == "__main__": #