#!/bin/bash

# Cluster controller registration script
# Registers CC as cluster $1 at IP $2 (on CLC)

# Source common functions
. /usr/share/eucalyptus/registration/common

# Parameter sanitizing
CLUSTERNAME=$1
IP=$2
testip "${IP}"

# Check if cluster isn't already registered
for cc in `euca_conf --list-clusters | tail -n +2 | awk '{ print $1 }'`; do
  if [ "$cc" == "$CLUSTERNAME" ]; then
    reglog "Cluster $CLUSTERNAME is already registered."
    exit 1
  fi
done

SHORT_COMMAND="euca_conf --register-cluster"
REAL_COMMAND="/usr/sbin/euca_conf --no-rsync --skip-scp-hostcheck --register-cluster "${CLUSTERNAME}" "${IP}""
COMMAND_OUTPUT=$(eval $REAL_COMMAND)
STATUS=$?

if [ $STATUS -eq 0 ];then
   reglog "$SHORT_COMMAND returned SUCCESS"
else
   reglog "$SHORT_COMMAND returned FAILURE (error $STATUS): Command attempted was \"$REAL_COMMAND\", and had the following output: \"$COMMAND_OUTPUT\""
fi

