#!/bin/bash

#### functions #####
function usage()
{
	        cat <<EOF
usage : prep_iscsi_boot.sh [-d </path/to/iboot>]
EOF
        exit $1
}

function error_exit()
{
 	if [ $1 -ne 0 ]
	then
		echo -e "\033[31m[Failed]\033[37m"
		echo
		echo "ERROR: Post install failed."
		echo "***************************************************"
		echo "tail /root/iSCSI_boot.log"
		echo "***************************************************"
		tail /root/iSCSI_boot.log
		echo "***************************************************"
		echo
		echo "Please look at /root/iSCSI_boot.log for more information."
		echo -n "Press <ENTER> to Abort"
		chvt 3
		read n
		exit 1
	fi
	echo -e "\033[32m[Done]\033[37m"
}

####  main #######

# Default values.
BASE_PATH=.
SYSTEM_NAME="localhost"
BOOT_LOADER="grub"
LOG_FILE=/root/iSCSI_boot.log

# do argument parsing

while [ $# -gt 0 ]; do
	case $1 in
		--directory|-d)
			if [ -z "$2" ]; then
				usage 1
			else
				BASE_PATH=$2
			fi
			shift 2
			;;
		*)
			usage 1
			;;
	esac
done

echo
echo "Preparing target disk for iSCSI Boot." | tee -a $LOG_FILE
echo -n "Gathering System Configuration... "
$BASE_PATH/scripts/configure $BASE_PATH $SYSTEM_NAME $BOOT_LOADER
error_exit $?
cp $BASE_PATH/iboot.conf /etc/iboot.conf
echo -n "Removing Temporary files... "
#rm -rf $BASE_PATH/scripts $BASE_PATH/srpms
rm -rf $BASE_PATH/srpms $BASE_PATH/bin $BASE_PATH/utils
error_exit $?
echo "Successfully prepared target disk for iSCSI Boot" | tee -a $LOG_FILE
exit 0
