Mercurial > repos > george-weingart > micropita
changeset 2:31f689324222
Uploaded Updated version of the prepare program with subprocess and tempfile enhancements + debug displays
author | george-weingart |
---|---|
date | Tue, 06 May 2014 16:46:16 -0400 |
parents | caffff6e32e2 |
children | 800220830386 |
files | micropita_prepare.py |
diffstat | 1 files changed, 60 insertions(+), 33 deletions(-) [+] |
line wrap: on
line diff
--- a/micropita_prepare.py Mon May 05 01:24:26 2014 -0400 +++ b/micropita_prepare.py Tue May 06 16:46:16 2014 -0400 @@ -40,6 +40,18 @@ import os from time import gmtime, strftime from pprint import pprint +import subprocess +import blist +import shlex +import tempfile + +################################################################################## +# Modification # +# Using subprocess # +################################################################################## + + + ################################################################################## # Decode Parms # @@ -52,6 +64,7 @@ parser.add_argument('-n', action="store",dest='NSamples') parser.add_argument('--lastmeta', action="store",dest='lastmeta') parser.add_argument('--stratify_value', action="store",dest='stratify_value') + parser.add_argument('--root_dir', action="store", dest='root_dir',nargs='?') try: @@ -77,8 +90,6 @@ ################################################################################## parser = read_params( sys.argv ) results = parser.parse_args() -root_dir = os.environ.get('micropita_SCRIPT_PATH') - fname = results.inputname input_file = open(fname,'rU') @@ -117,8 +128,8 @@ TBTargets.append(int(tb_entry)) - TempTargetsFileName = "/tmp/micropita_targets" + FileTimeStamp - OutTargetsFile = open(TempTargetsFileName,"w") + OutTargetsFile = tempfile.NamedTemporaryFile('w' ) + TempTargetsFileName = OutTargetsFile.name indx = -1 for c in table_lines: indx+=1 @@ -126,47 +137,63 @@ OutputString = table_lines[indx] + "\n" OutTargetsFile.write(OutputString) OutTargetsFile.close() - os_command = "python " + \ - root_dir + "/" +\ - "MicroPITA.py "+\ - "--lastmeta " + table_lines[LastMetaInt]+ " " +\ - "--feature_method " + results.feature_method + " " + \ - "--target " + TempTargetsFileName + " " +\ - "-m " + results.MParameter + " " + \ - "-n " + results.NSamples + " " +\ + results.root_dir + \ + "/tools/micropita/" + \ + "MicroPITA.py "+\ + "--lastmeta " + table_lines[LastMetaInt]+ " " +\ + "--feature_method " + results.feature_method + " " + \ + "--target " + TempTargetsFileName + " " +\ + "-m " + results.MParameter + " " + \ + "-n " + results.NSamples + " " +\ stratify_string + " " +\ results.inputname + " " +\ results.outputname #print os_command os.system(os_command) + + +print "Before invoking the call" + if results.MParameter == "representative"\ or results.MParameter == "diverse"\ or results.MParameter == "extreme": + os_command = "python " + \ + results.root_dir + \ + "/tools/micropita/" + \ + "MicroPITA.py "+\ + "--lastmeta " + table_lines[LastMetaInt]+ " " +\ + "-m " + results.MParameter + " " + \ + "-n " + results.NSamples + " " +\ + stratify_string + " " + \ + results.inputname + " " +\ + results.outputname + print os_command + argsx = shlex.split(os_command) + print argsx + try: + ######os.system(os_command) + subprocess.check_call(argsx , shell=False) + except: + print "The call to micropita failed=============" + sys.exit(0) + + + + +if results.MParameter == "distinct"\ +or results.MParameter == "discriminant": os_command = "python " + \ - root_dir + "/" +\ - "MicroPITA.py "+\ - "--lastmeta " + table_lines[LastMetaInt]+ " " +\ - "-m " + results.MParameter + " " + \ - "-n " + results.NSamples + " " +\ - stratify_string + " " + \ + results.root_dir + \ + "/tools/micropita/" + \ + "MicroPITA.py "+\ + "--lastmeta " + table_lines[LastMetaInt]+ " " +\ + "--label " + table_lines[LastMetaInt]+ " " +\ + "-m " + results.MParameter + " " + \ + "-n " + results.NSamples + " " +\ + stratify_string + " " + \ results.inputname + " " +\ results.outputname #print os_command os.system(os_command) - -if results.MParameter == "distinct"\ -or results.MParameter == "discriminant": - os_command = "python " + \ - root_dir + "/" +\ - "MicroPITA.py "+\ - "--lastmeta " + table_lines[LastMetaInt]+ " " +\ - "--label " + table_lines[LastMetaInt]+ " " +\ - "-m " + results.MParameter + " " + \ - "-n " + results.NSamples + " " +\ - stratify_string + " " + \ - results.inputname + " " +\ - results.outputname - #print os_command - os.system(os_command)