More work on web installer

This commit is contained in:
Duncan Sommerville 2014-12-09 17:48:16 -05:00
parent 9fed113f74
commit f5b4928538
23 changed files with 728 additions and 186 deletions

View file

@ -9,22 +9,50 @@ fi
showhelp () {
echo "Usage: airtime-install [options]
--help|-h Displays usage information.
--apache|-a Installs apache and deploys a basic configuration for Airtime."
-h, --help Displays usage information.
-w, --web-user=WEB_USER Set the default apache web user.
-a, --apache Installs apache and deploys a basic configuration for Airtime."
exit 0
}
web_user="www-data"
apache="f"
while [ $# -gt 0 ]
do
while :; do
case "$1" in
(-h|--help) showhelp; exit 0;;
(-a|--apache) apache="t";;
(--) shift; break;;
(-*) echo "$0: error - unrecognized option $1" 1>&2; exit 1;;
(*) break;;
-h|-\?|--help)
showhelp
exit
;;
-a|--apache)
apache="t"
;;
-w|--web-user)
if [ "$2" ]; then
web_user=$2
shift 2
continue
else
echo 'ERROR: Must specify a non-empty "--web-user WEB_USER" argument.' >&2
exit 1
fi
;;
--web-user=?*)
web_user=${1#*=} # Delete everything up to "=" and assign the remainder.
;;
--web-user=)
echo 'ERROR: Must specify a non-empty "--web-user WEB_USER" argument.' >&2
exit 1
;;
--)
shift
break
;;
-?*)
echo "$0: error - unrecognized option $1" 1>&2;
;;
*)
break
esac
shift
done
@ -136,14 +164,26 @@ EXCHANGES="airtime-pypo|pypo-fetch|airtime-media-monitor|media-monitor"
rabbitmqctl list_vhosts | grep -w ${RABBITMQ_VHOST}
RESULT="$?"
# Only run these if the user doesn't exist
if [ ${RESULT} != "0" ]; then
echo " ## Creating RabbitMQ user $RABBITMQ_USER"
echo " ## Creating RabbitMQ user ${RABBITMQ_USER}..."
rabbitmqctl add_vhost ${RABBITMQ_VHOST}
rabbitmqctl add_user ${RABBITMQ_USER} ${RABBITMQ_PASSWORD}
rabbitmqctl set_permissions -p ${RABBITMQ_VHOST} ${RABBITMQ_USER} "$EXCHANGES" "$EXCHANGES" "$EXCHANGES"
else
echo "RabbitMQ user already exists, skipping creation"
fi
echo " ## Setting RabbitMQ user permissions..."
rabbitmqctl set_permissions -p ${RABBITMQ_VHOST} ${RABBITMQ_USER} "$EXCHANGES" "$EXCHANGES" "$EXCHANGES"
echo -e "\n-----------------------------------------------------"
echo " * Installing Airtime * "
echo "-----------------------------------------------------"
mkdir /etc/airtime
chown -R ${web_user}:${web_user} /etc/airtime
echo -e "\n-----------------------------------------------------"
echo " * Basic Setup DONE! * "
echo " "