diff options
author | Justin Bedo <cu@cua0.org> | 2018-12-11 11:09:51 +1100 |
---|---|---|
committer | Justin Bedo <cu@cua0.org> | 2018-12-11 11:17:26 +1100 |
commit | 2a8c14c6fabc914b8cc173313a685f2b94a26aea (patch) | |
tree | 1d47772c1818da84231e4c3151f0b9ff341f57be | |
parent | 060cefc054e2f6dda2e5f806c3fa146690363485 (diff) |
qsub: prefix directories to prevent cleanup deleting top level dir
-rw-r--r-- | lib/qsub.nix | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/lib/qsub.nix b/lib/qsub.nix index 017e52c..f7b3c3e 100644 --- a/lib/qsub.nix +++ b/lib/qsub.nix @@ -5,13 +5,13 @@ args = let script = writeScript "qsub-script" '' #!${stdenv.shell} - while [ ! -e ${tmpDir}/$PBS_JOBID ] ; do + while [ ! -e ${tmpDir}/qsub-$PBS_JOBID ] ; do sleep ${toString sleepTime} done set -a - . ${tmpDir}/$PBS_JOBID/nix-set + . ${tmpDir}/qsub-$PBS_JOBID/nix-set set +a - TMPDIR=${tmpDir}/$PBS_JOBID + TMPDIR=${tmpDir}/qsub-$PBS_JOBID TEMP=$TMPDIR TMP=$TMPDIR NIX_BUILD_TOP=$TMPDIR @@ -46,15 +46,15 @@ } trap cleanup INT TERM EXIT - cp -r $TMPDIR ${tmpDir}/$id - set > ${tmpDir}/$id/nix-set + cp -r $TMPDIR ${tmpDir}/qsub-$id + set > ${tmpDir}/qsub-$id/nix-set until qstat -f ''${id%%.} 2>&1 | grep "\(Unknown Job\|job_state = C\)" > /dev/null ; do sleep ${toString sleepTime} done - cat ${tmpDir}/$id/qsub-stderr >&2 - cat ${tmpDir}/$id/qsub-stdout - if [ -e ${tmpDir}/$id/qsub-exit ]; then - exitCode=$(cat ${tmpDir}/$id/qsub-exit) + cat ${tmpDir}/qsub-$id/qsub-stderr >&2 + cat ${tmpDir}/qsub-$id/qsub-stdout + if [ -e ${tmpDir}/qsub-$id/qsub-exit ]; then + exitCode=$(cat ${tmpDir}/qsub-$id/qsub-exit) else exitCode=1 fi |