[slurm-users] Nodelist dependent environment setup ?

Sajid Ali sajidsyed2021 at u.northwestern.edu
Sat Apr 4 17:36:34 UTC 2020


Answering my own question so that it may serve as a reference:

This can be done by setting up a task prolog as shown below :
```
#!/bin/sh
#
# Sample TaskProlog script that will print a batch job's
# job ID and node list to the job's stdout.
# Also sets the modulepath based on nodelist
#

if [ X"$SLURM_STEP_ID" = "X" -a X"$SLURM_PROCID" = "X"0 ]
then
        echo "print =========================================="
        echo "print SLURM_JOB_ID = $SLURM_JOB_ID"
        echo "print SLURM_JOB_NODELIST = $SLURM_JOB_NODELIST"
        echo "print =========================================="
fi
short_list=${SLURM_JOB_NODELIST##worker}
if [ $short_list == "01" ]
then
        echo "export MODULEPATH=/home/path1"
fi
if [ $short_list == "02" ]
then
        echo "export MODULEPATH=/home/path2"
fi
```

Note:  This was tested on my laptop using a set of docker containers using
this configuration : https://github.com/SciDAS/slurm-in-docker .



-- 
Sajid Ali | PhD Candidate
Applied Physics
Northwestern University
s-sajid-ali.github.io
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.schedmd.com/pipermail/slurm-users/attachments/20200404/e762d5e1/attachment.htm>


More information about the slurm-users mailing list