#!/bin/sh
# Change the Etherboot sequence for the lab
# First argument, is the configuration you wish to use

######
## Setup Names and Paths here:
######

#Where to put the config files
DHCPCONFIG_PATH="/etc/dhcp3/dhcpd.conf"
GRUBCONFIG_NAME="grub.lst"
GRUBCONFIG_PATH="/tftproot/grubconfigs/"$GRUBCONFIG_NAME

#Names of PXE images to boot
PXEIMAGE_GRUB="pxegrub3c90xVSI"
PXEIMAGE_ETHERBOOT="etherboot3c90x"

#Names of Etherboot images to boot
ETHERBOOTIMAGE_UDPCAST_HDA="UDPdevhdaAUTO.img"
ETHERBOOTIMAGE_UDPCAST_HDA1="UDPdevhda1AUTO.img"
ETHERBOOTIMAGE_UDPCAST_HDA3="UDPdevhda3AUTO.img"
ETHERBOOTIMAGE_UDPCAST_HDA6="UDPdevhda6AUTO.img"

######
## Boot Configurations:
######

#If no Config specified, use this:

PXE_CLIENT_FNAME=$PXEIMAGE_GRUB
ETHERBOOT_CLIENT_FNAME=$ETHERBOOTIMAGE_UDPCAST_HDA1
GRUB_DEFAULTOS="0"

case "$1" in
	windows)
		PXE_CLIENT_FNAME=$PXEIMAGE_GRUB
		GRUB_DEFAULTOS="3"
	;;
	linux)
		PXE_CLIENT_FNAME=$PXEIMAGE_GRUB
		GRUB_DEFAULTOS="0"
	;;
	hda)
		PXE_CLIENT_FNAME=$PXEIMAGE_ETHERBOOT
		ETHERBOOT_CLIENT_FNAME=$ETHERBOOTIMAGE_UDPCAST_HDA
	;;
	hda1)
		PXE_CLIENT_FNAME=$PXEIMAGE_ETHERBOOT
		ETHERBOOT_CLIENT_FNAME=$ETHERBOOTIMAGE_UDPCAST_HDA1
	;;
	hda3)
		PXE_CLIENT_FNAME=$PXEIMAGE_ETHERBOOT
		ETHERBOOT_CLIENT_FNAME=$ETHERBOOTIMAGE_UDPCAST_HDA3
	;;
	hda6)
		PXE_CLIENT_FNAME=$PXEIMAGE_ETHERBOOT
		ETHERBOOT_CLIENT_FNAME=$ETHERBOOTIMAGE_UDPCAST_HDA6
	;;
	*)
		echo "No boot configuration specified, using default"
esac

######
## GRUB/DHCP scripts called, dhcp rebooted:
######

echo "Building Configuration with Params:
DHCP output:		$DHCPCONFIG_PATH
GRUB output:		$GRUBCONFIG_PATH
PXE image: 		$PXE_CLIENT_FNAME
Etherboot image:	$ETHERBOOT_CLIENT_FNAME
Grub Default OS:	$GRUB_DEFAULTOS
"

PATH_TO_SCRIPTS=/home/images/script

$PATH_TO_SCRIPTS/dhcpgen.sh $DHCPCONFIG_PATH eth1 /images/$PXE_CLIENT_FNAME /grubconfigs/$GRUBCONFIG_NAME /images/$ETHERBOOT_CLIENT_FNAME
$PATH_TO_SCRIPTS/grubgen.sh $GRUBCONFIG_PATH $PATH_TO_SCRIPTS/grub.lst $GRUB_DEFAULTOS

echo "Configuration Built, restarting DHCP..."
/etc/init.d/dhcp3-server restart
echo "Have a nice day."

