#!/usr/bin/bash

SATELLITE_CLONE_PATH="${SATELLITE_CLONE_PATH:-/usr/share/satellite-clone}"
DEFAULT_PLAYBOOK_FILE="${SATELLITE_CLONE_PATH}/satellite-clone-playbook.yml"
INVENTORY_PATH="${SATELLITE_CLONE_PATH}/inventory"
ANSIBLE_CONFIG="${SATELLITE_CLONE_PATH}/ansible.production.cfg"
export ANSIBLE_CONFIG

usage() {
  echo "usage: satellite-clone [-h] [-y]

options:
  -h, --help        show this help message and exit
  -y, --assume-yes  Assume yes for each question"
}

if [[ ! -d "${SATELLITE_CLONE_PATH}" ]]; then
  echo "It looks like satellite-clone has not been installed properly, ${SATELLITE_CLONE_PATH} does not exist."
  exit 1
fi

if [[ "$1" == "--help" ]] || [[ "$1" == "-h" ]]; then
  usage
  exit 0
fi

if [[ "$1" == "--assume-yes" ]] || [[ "$1" == "-y" ]]; then
  CONFIRM=true
  shift
else
  CONFIRM=false
fi

if [[ "${CONFIRM}" != "true" ]]; then
  read -r -p "This will initiate satellite-clone. Do you want to proceed? (y/N): " result
  if [[ "${result}" != y* ]]; then
    exit 1
  fi
fi

exec -- ansible-playbook -i "${INVENTORY_PATH}" "${DEFAULT_PLAYBOOK_FILE}" "$@"
