xcat-core/xCAT/postscripts/xcatdsklspost
jbjohnso fd5e1a73f7 -Awk file transfers to xcatd are retried in most places
-blade plugin will retry more to scale reliably


git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@1382 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
2008-05-13 23:33:16 +00:00

68 lines
2.0 KiB
Bash
Executable File

#!/bin/sh
# IBM(c) 2007 EPL license http://www.eclipse.org/legal/epl-v10.html
#####################################################
#
# Generic xCAT post script for diskless nodes
#
#####################################################
if [ ! `uname` == Linux ]; then
MYDIR=`dirname $0`
exec $MYDIR/xcatdsklspost.aix
exit
fi
let SLI=$RANDOM%10
sleep $SLI
SIP=`grep dhcp-server-identifier /var/lib/dhclient/dhclient-eth0.leases|tail -n 1|awk '{print $3}'|sed -e 's/;//'`
if grep 'rw /rw tmpfs ' /proc/mounts >& /dev/null; then
touch /var/lock/subsys/xcatmounts
echo '#!/bin/bash' > /etc/rc6.d/K10xcatmounts
echo umount -l /ro >> /etc/rc6.d/K10xcatmounts
echo umount -l /rw >> /etc/rc6.d/K10xcatmounts
chmod 755 /etc/rc6.d/K10xcatmounts
ln -sf /etc/rc6.d/K10xcatmounts /etc/rc0.d/K10xcatmounts
fi
mkdir -p /etc/stunnel
cat > /etc/stunnel/stunnel.conf << EOF
client=yes
foreground=no
output=/dev/null
verify=0
[xcatd]
accept=400
EOF
echo "connect=$SIP:3001" >> /etc/stunnel/stunnel.conf
stunnel;
sleep 1;
mkdir -p /xcatpost;
mkdir /tmp/postage
cd /tmp/postage
#wget -l inf -N -r --waitretry=10 --random-wait --retry-connrefused -t 0 -T 60 ftp://$SIP/install/postscripts 2> /tmp/wget.log
wget -l inf -N -r --waitretry=10 --random-wait --retry-connrefused -t 0 -T 60 ftp://$SIP/postscripts 2> /tmp/wget.log
#mv $SIP/install/postscripts/* /xcatpost;
mv $SIP/postscripts/* /xcatpost;
rm -rf $SIP
cd /xcatpost;
PATH=/xcatpost:$PATH
export PATH
chmod +x /xcatpost/*;
/xcatpost/getpostscript.awk | sed -e 's/<[^>]*>//g'|egrep -v '^ *$'|sed -e 's/^ *//' > /tmp/mypostscript;
MYCONT=`cat /tmp/mypostscript`
while [ -z "$MYCONT" ]; do
let SLI=$RANDOM%10
let SLI=10+$SLI
sleep $SLI
/xcatpost/getpostscript.awk | sed -e 's/<[^>]*>//g'|egrep -v '^ *$'|sed -e 's/^ *//' > /tmp/mypostscript;
MYCONT=`cat /tmp/mypostscript`
done
chmod +x /tmp/mypostscript
if [ -x /tmp/mypostscript ];then
/tmp/mypostscript
fi
rm -f /tmp/mypostscript
killall stunnel
rm -rf /etc/stunnel