mpi-operator/build/base/entrypoint.sh

37 lines
714 B
Bash
Executable File

#!/usr/bin/env bash
set_intel_vars=/opt/intel/oneapi/setvars.sh
if [ -f $set_intel_vars ]; then
source $set_intel_vars
fi
function resolve_host() {
host="$1"
check="nslookup $host"
max_retry=10
counter=0
backoff=0.1
until $check > /dev/null
do
if [ $counter -eq $max_retry ]; then
echo "Couldn't resolve $host"
return
fi
sleep $backoff
echo "Couldn't resolve $host... Retrying"
((counter++))
backoff=$(echo - | awk "{print $backoff + $backoff}")
done
echo "Resolved $host"
}
if [ "$K_MPI_JOB_ROLE" == "launcher" ]; then
resolve_host "$HOSTNAME"
cut -d ':' -f 1 /etc/mpi/hostfile | while read -r host
do
resolve_host "$host"
done
fi
exec "$@"