[slurm-users] prolog not passing env var to job

Chin,David dwc62 at drexel.edu
Thu Mar 4 17:03:35 UTC 2021


Hi, Brian:

So, this is my SrunProlog script -- I want a job-specific tmp dir, which makes for easy cleanup at end of job:

#!/bin/bash
if [[ -z ${SLURM_ARRAY_JOB_ID+x} ]]
then
    export TMP="/local/scratch/${SLURM_JOB_ID}"
    export TMPDIR="${TMP}"
    export LOCAL_TMPDIR="${TMP}"
    export BEEGFS_TMPDIR="/beegfs/scratch/${SLURM_JOB_ID}"
else
    export TMP="/local/scratch/${SLURM_ARRAY_JOB_ID}.${SLURM_ARRAY_TASK_ID}"
    export TMPDIR="${TMP}"
    export LOCAL_TMPDIR="${TMP}"
    export BEEGFS_TMPDIR="/beegfs/scratch/${SLURM_ARRAY_JOB_ID}.${SLURM_ARRAY_TASK_ID}"
fi

echo DEBUG srun_set_tmp.sh
echo I am `whoami`

/usr/bin/mkdir -p ${TMP}
chmod 700 ${TMP}
/usr/bin/mkdir -p ${BEEGFS_TMPDIR}
chmod 700 ${BEEGFS_TMPDIR}

And this is my srun session:

picotte001::~$ whoami
dwc62
picotte001::~$ srun -p def --mem 1000 -n 4 -t 600 --pty /bin/bash
DEBUG srun_set_tmp.sh
I am dwc62
node001::~$ echo $TMP
/local/scratch/80472
node001::~$ ll !$
ll $TMP
/bin/ls: cannot access '/local/scratch/80472': No such file or directory
node001::~$ mkdir $TMP
node001::~$ ll -d !$
ll -d $TMP
drwxrwxr-x 2 dwc62 dwc62 6 Mar  4 11:52 /local/scratch/80472/
node001::~$ exit

So, the "echo" and "whoami" statements are executed by the prolog script, as expected, but the mkdir commands are not?

Thanks,
    Dave

--
David Chin, PhD (he/him)   Sr. SysAdmin, URCF, Drexel
dwc62 at drexel.edu                     215.571.4335 (o)
For URCF support: urcf-support at drexel.edu
https://proteusmaster.urcf.drexel.edu/urcfwiki
github:prehensilecode

________________________________
From: slurm-users <slurm-users-bounces at lists.schedmd.com> on behalf of Brian Andrus <toomuchit at gmail.com>
Sent: Thursday, March 4, 2021 10:12
To: slurm-users at lists.schedmd.com <slurm-users at lists.schedmd.com>
Subject: Re: [slurm-users] prolog not passing env var to job


External.


It seems to me, if you are using srun directly to get an interactive shell, you can just run the script once you get your shell.


You can set the variables and then run srun. It automatically exports the environment.

If you want to change a particular one (or more), use something like --export=ALL,MYVAR=othervalue

do 'man srun' and look at the --export option


Brian Andrus




On 3/3/2021 9:28 PM, Chin,David wrote:
ahmet.mercan at uhem.itu.edu.tr<mailto:ahmet.mercan at uhem.itu.edu.tr> wrote:
> Prolog and TaskProlog are different parameters and scripts. You should
> use the TaskProlog script to set env. variables.

Can you tell me how to do this for srun? E.g. users request an interactive shell:

    srun -n 1 -t 600 --pty /bin/bash

but the shell on the compute node does not have the env variables set.

I use the same prolog script as TaskProlog, which sets it properly for jobs submitted
with sbatch.

Thanks in advance,
    Dave Chin

--
David Chin, PhD (he/him)   Sr. SysAdmin, URCF, Drexel
dwc62 at drexel.edu<mailto:dwc62 at drexel.edu>                     215.571.4335 (o)
For URCF support: urcf-support at drexel.edu<mailto:urcf-support at drexel.edu>
https://proteusmaster.urcf.drexel.edu/urcfwiki
github:prehensilecode


________________________________
From: slurm-users <slurm-users-bounces at lists.schedmd.com><mailto:slurm-users-bounces at lists.schedmd.com> on behalf of mercan <ahmet.mercan at uhem.itu.edu.tr><mailto:ahmet.mercan at uhem.itu.edu.tr>
Sent: Friday, February 12, 2021 16:27
To: Slurm User Community List <slurm-users at lists.schedmd.com><mailto:slurm-users at lists.schedmd.com>; Herc Silverstein <herc.silverstein at schrodinger.com><mailto:herc.silverstein at schrodinger.com>; slurm-users at schedmd.com<mailto:slurm-users at schedmd.com> <slurm-users at schedmd.com><mailto:slurm-users at schedmd.com>
Subject: Re: [slurm-users] prolog not passing env var to job

External.

Hi;

Prolog and TaskProlog are different parameters and scripts. You should
use the TaskProlog script to set env. variables.

Regards;

Ahmet M.




Drexel Internal Data


Drexel Internal Data
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.schedmd.com/pipermail/slurm-users/attachments/20210304/a2152324/attachment.htm>


More information about the slurm-users mailing list