#!/bin/bash

if [ $# -lt 1 ] ; then
    echo -e "\nNeed mapping file\n"
    echo -e "e.g. $(basename $0) mapping.csv\n"
    exit 1
fi

MAPPING=$1

if [ ! -e $MAPPING ] ; then
    echo -e "\nMapping file $MAPPING does not exist\n"
    exit 1
fi

if [ ! -d profiles ] ; then
	mkdir profiles
fi

echo -e "#!/bin/bash\n" > profiles/addall.sh

for profile in $(cat $MAPPING | grep -v ^MAC) ; do

    MAC=$(echo $profile | cut -d "," -f 1 )
    HOSTNAME=$(echo $profile | cut -d "," -f 2 )
    IPADDR=$(echo $profile | cut -d "," -f 3 )
    OUTFILE=${HOSTNAME}.sh

    cat template.sh \
    | sed -e "s/^HOSTNAME=/HOSTNAME=\"$HOSTNAME\"/" \
    -e "s/^IPADDR=/IPADDR=\"$IPADDR\"/" \
    -e "s/^MAC=/MAC=\"$MAC\"/" > profiles/$OUTFILE

    echo "./$OUTFILE" >> profiles/addall.sh

    chmod 755 profiles/$OUTFILE

done

echo -e "\ncobbler sync\n" >> profiles/addall.sh

chmod 755 profiles/addall.sh