More work on monitless installer

This commit is contained in:
Duncan Sommerville 2014-12-16 16:26:58 -05:00
parent bfe9d4f2c5
commit 4043ebfd25
5 changed files with 24 additions and 17 deletions

View File

@ -130,7 +130,7 @@ $result = $r && $database;
} else { } else {
?> ?>
<p> <p>
Your Airtime station is up and running! Your Airtime station is up and running! Get started by logging in with the default username and password: 'admin'/'admin'
</p> </p>
<button onclick="location = location.pathname;">Log in to Airtime!</button> <button onclick="location = location.pathname;">Log in to Airtime!</button>
<?php <?php

View File

@ -316,15 +316,22 @@ fi
loud "\n-----------------------------------------------------" loud "\n-----------------------------------------------------"
loud " * Installing Python Apps * " loud " * Installing Airtime Services * "
loud "-----------------------------------------------------" loud "-----------------------------------------------------"
loudCmd "apt-get -y --force-yes install liquidsoap" loudCmd "apt-get -y --force-yes install liquidsoap python python-virtaulenv"
loudCmd "$AIRTIMEROOT/python_apps/python-virtualenv/virtualenv-install.sh"
verbose "\n * Creating /usr/lib/airtime..." verbose "\n * Creating /usr/lib/airtime..."
mkdir -p /usr/lib/airtime mkdir -p /usr/lib/airtime
verbose "...Done" verbose "...Done"
verbose "\n * Creating /usr/lib/airtime..."
mkdir -p /run/airtime
chmod 755 /run/airtime
chown -R ${web_user}:${web_user} /run/airtime
verbose "...Done"
verbose "\n * Installing API client..." verbose "\n * Installing API client..."
cp -R ${AIRTIMEROOT}/python_apps/api_clients /usr/lib/airtime/api_clients cp -R ${AIRTIMEROOT}/python_apps/api_clients /usr/lib/airtime/api_clients
verbose "...Done" verbose "...Done"
@ -337,9 +344,9 @@ verbose "...Done"
sed -e "s/WEB_USER/${web_user}/g" /usr/lib/airtime/media-monitor/airtime-media-monitor-init-d > /etc/init.d/airtime-media-monitor sed -e "s/WEB_USER/${web_user}/g" /usr/lib/airtime/media-monitor/airtime-media-monitor-init-d > /etc/init.d/airtime-media-monitor
touch /etc/sudoers.d/airtime-media-monitor_${web_user} touch /etc/sudoers.d/airtime-media-monitor_${web_user}
echo "${web_user} ALL = (root) NOPASSWD: /sbin/start airtime-media-monitor, \ echo "${web_user} ALL = (root) NOPASSWD: /sbin/start airtime-media-monitor, \
/sbin/stop airtime-media-monitor, \ /sbin/stop airtime-media-monitor, \
/sbin/restart airtime-media-monitor, \ /sbin/restart airtime-media-monitor, \
/sbin/status airtime-media-monitor" > /etc/sudoers.d/airtime-media-monitor_${web_user} /sbin/status airtime-media-monitor" > /etc/sudoers.d/airtime-media-monitor_${web_user}
verbose "\n * Copying pypo files..." verbose "\n * Copying pypo files..."
mkdir -p /usr/lib/airtime/pypo mkdir -p /usr/lib/airtime/pypo
@ -349,21 +356,21 @@ verbose "...Done"
verbose "\n * Creating init files..." verbose "\n * Creating init files..."
sed -e "s/WEB_USER/${web_user}/g" /usr/lib/airtime/pypo/bin/airtime-playout-init-d > /etc/init.d/airtime-playout sed -e "s/WEB_USER/${web_user}/g" /usr/lib/airtime/pypo/bin/airtime-playout-init-d > /etc/init.d/airtime-playout
touch /etc/sudoers.d/airtime-playout_${web_user} touch /etc/sudoers.d/airtime-playout_${web_user}
echo "${web_user} ALL = (root) NOPASSWD: /sbin/start airtime-playout, \ echo "${web_user} ALL = (root) NOPASSWD: /sbin/start airtime-playout, \
/sbin/stop airtime-playout, \ /sbin/stop airtime-playout, \
/sbin/restart airtime-playout, \ /sbin/restart airtime-playout, \
/sbin/status airtime-playout" > /etc/sudoers.d/airtime-playout_${web_user} /sbin/status airtime-playout" > /etc/sudoers.d/airtime-playout_${web_user}
ln -sf /usr/bin/liquidsoap /usr/bin/airtime-liquidsoap ln -sf /usr/bin/liquidsoap /usr/bin/airtime-liquidsoap
sed -e "s/WEB_USER/${web_user}/g" /usr/lib/airtime/pypo/bin/airtime-liquidsoap-init-d > /etc/init.d/airtime-liquidsoap sed -e "s/WEB_USER/${web_user}/g" /usr/lib/airtime/pypo/bin/airtime-liquidsoap-init-d > /etc/init.d/airtime-liquidsoap
touch /etc/sudoers.d/airtime-liquidsoap_${web_user} touch /etc/sudoers.d/airtime-liquidsoap_${web_user}
echo "${web_user} ALL = (root) NOPASSWD: /sbin/start airtime-liquidsoap, \ echo "${web_user} ALL = (root) NOPASSWD: /sbin/start airtime-liquidsoap, \
/sbin/stop airtime-liquidsoap, \ /sbin/stop airtime-liquidsoap, \
/sbin/restart airtime-liquidsoap, \ /sbin/restart airtime-liquidsoap, \
/sbin/status airtime-liquidsoap" > /etc/sudoers.d/airtime-liquidsoap_${web_user} /sbin/status airtime-liquidsoap" > /etc/sudoers.d/airtime-liquidsoap_${web_user}
verbose "...Done" verbose "...Done"
chmod 700 /etc/init.d/airtime-* chmod 755 /etc/init.d/airtime-*
initctl reload-configuration initctl reload-configuration
# Do we need to run the init scripts for media-monitor and pypo here? # Do we need to run the init scripts for media-monitor and pypo here?

View File

@ -14,7 +14,7 @@ GROUPID=WEB_USER
NAME=Airtime\ Media\ Monitor NAME=Airtime\ Media\ Monitor
DAEMON=/usr/lib/airtime/media-monitor/airtime-media-monitor DAEMON=/usr/lib/airtime/media-monitor/airtime-media-monitor
PIDFILE=/var/run/airtime-media-monitor.pid PIDFILE=/var/run/airtime/airtime-media-monitor.pid
start () { start () {
start-stop-daemon --start --background --quiet --chuid $USERID:$GROUPID \ start-stop-daemon --start --background --quiet --chuid $USERID:$GROUPID \

View File

@ -14,7 +14,7 @@ GROUPID=WEB_USER
NAME="Liquidsoap Playout Engine" NAME="Liquidsoap Playout Engine"
DAEMON=/usr/lib/airtime/pypo/bin/airtime-liquidsoap DAEMON=/usr/lib/airtime/pypo/bin/airtime-liquidsoap
PIDFILE=/var/run/airtime-liquidsoap.pid PIDFILE=/var/run/airtime/airtime-liquidsoap.pid
EXEC='/usr/bin/airtime-liquidsoap' EXEC='/usr/bin/airtime-liquidsoap'
start () { start () {

View File

@ -13,7 +13,7 @@ USERID=WEB_USER
NAME="Airtime Scheduler" NAME="Airtime Scheduler"
DAEMON=/usr/lib/airtime/pypo/bin/airtime-playout DAEMON=/usr/lib/airtime/pypo/bin/airtime-playout
PIDFILE=/var/run/airtime-playout.pid PIDFILE=/var/run/airtime/airtime-playout.pid
start () { start () {
mkdir -p /var/log/airtime/pypo mkdir -p /var/log/airtime/pypo