
#!/bin/sh
# File  : netapp_all_create-update.sh
# By    : Maarten.deBoer@Atos.net, 211019
# Subject       : Script to run several ansible-playbook's
#
SSH=" /usr/bin/ssh -n"
RCFILE="${HOME}/local/etc/netapp_all_create-update.rc"
PLAYBOOKS="${HOME}/local/playbooks-dev"

VERBOSE="-vvvv"

https_proxy=""

CLUSTER="nlnaf103"
SVM_IP="10.192.109.91"
AGGR_NAME="n02a4001"
VOL_SUFFIX="vol01001"
VOL_SIZE="1024"  # (in MB)
EXPORT_MATCH="10.192.109.0/24"
QTREE_NAME="ansible13"
QUOTA_SIZE="800MB"

if [ -f ${RCFILE} ]; then
  echo "  RCFILE (${RCFILE}) found. Reading"
  . ${RCFILE}
fi

echo "CLUSTER=${CLUSTER}"
echo "SVM_NAME=${SVM_NAME}"
echo "SVM_PART=${SVM_PART}"
echo "SVM_IP=${SVM_IP}"
echo "AGGR_NAME=${AGGR_NAME}"
echo "VOL_NAME=${VOL_NAME}"
echo "VOL_SIZE=${VOL_SIZE}"
echo "SIZE_UNIT=${SIZE_UNIT}"
echo "EXPORT_MATCH=${EXPORT_MATCH}"
echo "QTREE_NAME=${QTREE_NAME}"
echo "QUOTA_SIZE=${QUOTA_SIZE}"
sleep 1

cd ${PLAYBOOKS}

if [ "${VOL_NAME}" != "" ]; then
  echo "- Volume (${VOL_NAME}, ${VOL_SIZE}MB) :"
  ansible-playbook ${VERBOSE} ${PLAYBOOKS}/netapp-ontap_volume_create-update.yml -e na_clustername=${CLUSTER} -e na_svm_name=${SVM_NAME} -e na_vol_aggr_name=${AGGR_NAME} -e na_vol_name=${VOL_NAME} -e na_vol_size=${VOL_SIZE} -e na_vol_size_unit="${SIZE_UNIT}"
  ${SSH} ${CLUSTER} "volume show -vserver ${SVM_NAME}"
fi

if [ "${EXPORT_MATCH}" != "" ]; then
#! When NFS, then create NFS 1st
  echo "- NFS export-rule (${EXPORT_MATCH})  1st :"
  ansible-playbook ${VERBOSE} ${PLAYBOOKS}/netapp-ontap_nfs-export_create-update.yml -e na_clustername=${CLUSTER} -e na_svm_name=${SVM_NAME} -e na_export_policy_name=${EXPORT_POLICY} -e na_export_policy_client_match=${EXPORT_MATCH}
  ${SSH} ${CLUSTER} "export-policy rule show -vserver ${SVM_NAME}"
fi

if [ "${QTREE_NAME}" != "" ]; then
  echo "- Qtree (${QTREE_NAME}) :"
  ansible-playbook ${VERBOSE} ${PLAYBOOKS}/netapp-ontap_qtree_create-update.yml -e na_clustername=${CLUSTER} -e na_svm_name=${SVM_NAME} -e na_vol_name=${VOL_NAME} -e na_qtree_name=${QTREE_NAME}
  ${SSH} ${CLUSTER} "qtree show -vserver ${SVM_NAME} -qtree ${QTREE_NAME}"
fi

if [ "${QUOTA_SIZE}" != "" ]; then
  echo "- Quota (${QTREE_NAME} = ${QUOTA_SIZE}):"
  ansible-playbook ${VERBOSE} ${PLAYBOOKS}/netapp-ontap_quota_create-update.yml -e na_clustername=${CLUSTER} -e na_svm_name=${SVM_NAME} -e na_vol_name=${VOL_NAME} -e na_qtree_name=${QTREE_NAME} -e na_quota_disk_limit=${QUOTA_SIZE}
  ${SSH} ${CLUSTER} "quota report -vserver ${SVM_PART} -tree ${QTREE_NAME} "
fi

echo "CHECK:"
echo "$ sudo mount ${SVM_IP}:/${VOL_NAME}/${QTREE_NAME} /mnt/${QTREE_NAME}"
echo "$ df -h /mnt/${QTREE_NAME}"

exit 0

