xcat-core/xCAT/postscripts/xcatflowrequest

25 lines
847 B
Plaintext
Raw Normal View History

#!/bin/bash
# IBM(c) 2013 EPL license http://www.eclipse.org/legal/epl-v10.html
# This routine when called, contacts xcatd. It will return to the caller when xcatd is
# ready to process the request
# It is called by xcatdsklspost before calling getpostscripts.awk
# it is called by remoteshell before calling getcredentials.awk
#
exec 13<>/dev/udp/$1/$2
echo "resourcerequest: xcatd" >&13
parpid=$$
touch /tmp/goahead.$parpid
touch /tmp/killme.$parpid
exec 2> /dev/null
while ! grep 'resourcerequest: ok' /tmp/goahead.$parpid > /dev/null; do
(
exec 14<>/proc/self/stat
read mystat<&14
mypid=$(echo $mystat|cut -d " " -f 4)
(sleep $(((RANDOM%60)+120)).$((RANDOM%50)); if [ -f /tmp/killme.$parpid ]; then kill -TERM $mypid; fi) &
exec awk '{print $0 > "/tmp/goahead.'$parpid'";exit}' <&13
)
done
rm /tmp/killme.$parpid