#!/usr/bin/env python
import sys,os,pexpect

np=32
qcmd="qsub -l ccm=1 -l ncpus=%(np)i -A ERDCV00898ENQ -l walltime=000:20:00 -q debug -l application=proteus -V -I" %  {"np":np}
PROTEUS = os.getenv('PROTEUS')
PROTEUS_ARCH = os.getenv('PROTEUS_ARCH')
PROTEUS_PYTHON = os.getenv('PROTEUS_PYTHON')
ecmd="export PROTEUS=%(PROTEUS)s; source $PROTEUS/envConfig/%(PROTEUS_ARCH)s.bash" % {'PROTEUS':PROTEUS,'PROTEUS_ARCH':PROTEUS_ARCH}
pcmd="aprun -n %(np)i %(PROTEUS_PYTHON)s %(PYTHON_SCRIPT)s" % {"np":np,
                                                                "PROTEUS":PROTEUS,
                                                                "PROTEUS_PYTHON":PROTEUS_PYTHON,
                                                                "PYTHON_SCRIPT":sys.argv[1]}
child = pexpect.spawn(qcmd,timeout=30*60)
child.logfile = sys.stdout
child.expect("CCM Start success",timeout=60*60)
child.sendline(ecmd)
child.sendline(pcmd)
child.expect(["PEXPECT_EXIT",pexpect.EOF,pexpect.TIMEOUT],timeout=20*60)
child.sendline("exit")
child.close()

