Merge branch '1.9.1' of dev.sourcefabric.org:airtime into 1.9.1
This commit is contained in:
commit
1ec4359982
6 changed files with 47 additions and 28 deletions
4
CREDITS
4
CREDITS
|
@ -1,6 +1,10 @@
|
||||||
=======
|
=======
|
||||||
CREDITS
|
CREDITS
|
||||||
=======
|
=======
|
||||||
|
Version 1.9.4
|
||||||
|
-------------
|
||||||
|
Same as previous version.
|
||||||
|
|
||||||
Version 1.9.3
|
Version 1.9.3
|
||||||
-------------
|
-------------
|
||||||
Same as previous version.
|
Same as previous version.
|
||||||
|
|
16
Changelog
16
Changelog
|
@ -1,10 +1,24 @@
|
||||||
|
1.9.4 - Sept 13, 2011
|
||||||
|
*Improvements
|
||||||
|
-"airtime-import" command-line utility now offers better help when invalid parameters have
|
||||||
|
been passed.
|
||||||
|
*Fixes
|
||||||
|
-Fixed "Show Contents" displaying full-length of tracks, even if cue-points had been set.
|
||||||
|
-Fixed start date of show not updating after dragging and dropping.
|
||||||
|
-Fixed audio preview still playing after deleting a file in the Playlist Builder.
|
||||||
|
-Fixed uploads via the web-interface while using Internet Explorer failing when tracks contained "+" or
|
||||||
|
whitespace characters.
|
||||||
|
-Fixed issue where deleting a file from the Playlist Builder wouldn't always refresh the list to
|
||||||
|
remove the file.
|
||||||
|
-Fixed issue where upgrading from any previous Airtime would set "Toronto/America" as the default timezone
|
||||||
|
|
||||||
1.9.3 - August 26th, 2011
|
1.9.3 - August 26th, 2011
|
||||||
*Improvements
|
*Improvements
|
||||||
-It is now possible to upgrade your system while a show is playing.
|
-It is now possible to upgrade your system while a show is playing.
|
||||||
Playout will be temporarily interrupted for about 5-10 seconds and then
|
Playout will be temporarily interrupted for about 5-10 seconds and then
|
||||||
playout will resume. Previously playout would not resume until the next
|
playout will resume. Previously playout would not resume until the next
|
||||||
scheduled show.
|
scheduled show.
|
||||||
*fixes
|
*Fixes
|
||||||
-Fixed bug where playout system did not work with mono files.
|
-Fixed bug where playout system did not work with mono files.
|
||||||
-Fixed bug where sometimes audio files could be played out of order.
|
-Fixed bug where sometimes audio files could be played out of order.
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@ $PORT = 5672;
|
||||||
$USER = 'guest';
|
$USER = 'guest';
|
||||||
$PASS = 'guest';
|
$PASS = 'guest';
|
||||||
$VHOST = '/';
|
$VHOST = '/';
|
||||||
$EXCHANGE = 'router';
|
$EXCHANGE = 'airtime-schedule';
|
||||||
$QUEUE = 'msgs';
|
$QUEUE = 'msgs';
|
||||||
$CONSUMER_TAG = 'consumer';
|
$CONSUMER_TAG = 'consumer';
|
||||||
|
|
||||||
|
@ -23,7 +23,7 @@ $ch = $conn->channel();
|
||||||
$ch->access_request($VHOST, false, false, true, true);
|
$ch->access_request($VHOST, false, false, true, true);
|
||||||
|
|
||||||
$ch->queue_declare($QUEUE);
|
$ch->queue_declare($QUEUE);
|
||||||
$ch->exchange_declare($EXCHANGE, 'direct', false, false, false);
|
$ch->exchange_declare($EXCHANGE, 'direct', false, true);
|
||||||
$ch->queue_bind($QUEUE, $EXCHANGE);
|
$ch->queue_bind($QUEUE, $EXCHANGE);
|
||||||
|
|
||||||
function process_message($msg) {
|
function process_message($msg) {
|
||||||
|
|
|
@ -13,15 +13,16 @@ $PORT = 5672;
|
||||||
$USER = 'guest';
|
$USER = 'guest';
|
||||||
$PASS = 'guest';
|
$PASS = 'guest';
|
||||||
$VHOST = '/';
|
$VHOST = '/';
|
||||||
$EXCHANGE = 'router';
|
$EXCHANGE = 'airtime-schedule';
|
||||||
$QUEUE = 'msgs';
|
$QUEUE = 'msgs';
|
||||||
|
|
||||||
$conn = new AMQPConnection($HOST, $PORT, $USER, $PASS);
|
$conn = new AMQPConnection($HOST, $PORT, $USER, $PASS);
|
||||||
$ch = $conn->channel();
|
$ch = $conn->channel();
|
||||||
$ch->access_request($VHOST, false, false, true, true);
|
$ch->access_request($VHOST, false, false, true, true);
|
||||||
$ch->exchange_declare($EXCHANGE, 'direct', false, false, false);
|
$ch->exchange_declare($EXCHANGE, 'direct', false, true);
|
||||||
|
|
||||||
$msg_body = implode(' ', array_slice($argv, 1));
|
$msg_body = json_encode(array("event_type"=>"get_status", "id"=>time()));
|
||||||
|
//$msg_body = '{"schedule":{"status":{"range":{"start":"2011-09-12 20:45:22","end":"2011-09-13 20:45:22"},"version":"1.1"},"playlists":[],"check":1,"stream_metadata":{"format":"","station_name":""}},"event_type":"update_schedule"}';
|
||||||
$msg = new AMQPMessage($msg_body, array('content_type' => 'text/plain'));
|
$msg = new AMQPMessage($msg_body, array('content_type' => 'text/plain'));
|
||||||
|
|
||||||
$ch->basic_publish($msg, $EXCHANGE);
|
$ch->basic_publish($msg, $EXCHANGE);
|
||||||
|
@ -29,4 +30,5 @@ $ch->basic_publish($msg, $EXCHANGE);
|
||||||
echo "Sent message '".$msg_body."'\n";
|
echo "Sent message '".$msg_body."'\n";
|
||||||
$ch->close();
|
$ch->close();
|
||||||
$conn->close();
|
$conn->close();
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -7,8 +7,7 @@ exec > >(tee install_log.txt)
|
||||||
exec 2>&1
|
exec 2>&1
|
||||||
|
|
||||||
if [ "$(id -u)" != "0" ]; then
|
if [ "$(id -u)" != "0" ]; then
|
||||||
echo "You need admin previlege to run this script"
|
echo "You need root privileges to run this script"
|
||||||
echo "Syntaxe: sudo $0"
|
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -24,10 +23,10 @@ echo " 1. Install Packages"
|
||||||
echo "----------------------------------------------------"
|
echo "----------------------------------------------------"
|
||||||
|
|
||||||
# Updated package list
|
# Updated package list
|
||||||
sudo apt-get -y install tar gzip curl apache2 php5-pgsql libapache2-mod-php5 \
|
apt-get -y install tar gzip curl apache2 php5-pgsql libapache2-mod-php5 \
|
||||||
php-pear php5-gd postgresql odbc-postgresql python2.6 lame libsoundtouch-ocaml \
|
php-pear php5-gd postgresql odbc-postgresql python2.6 lame libsoundtouch-ocaml \
|
||||||
libvorbis-ocaml-dev libmp3lame-dev libtaglib-ocaml libao-ocaml libmad-ocaml \
|
libvorbis-ocaml-dev libmp3lame-dev libtaglib-ocaml libao-ocaml libmad-ocaml \
|
||||||
libesd0 icecast2 sudo libportaudio2 libsamplerate0 libcamomile-ocaml-dev \
|
libesd0 icecast2 libportaudio2 libsamplerate0 libcamomile-ocaml-dev \
|
||||||
ecasound php5-curl mpg123 rabbitmq-server monit python-virtualenv
|
ecasound php5-curl mpg123 rabbitmq-server monit python-virtualenv
|
||||||
|
|
||||||
if [ "$?" -ne "0" ]; then
|
if [ "$?" -ne "0" ]; then
|
||||||
|
@ -38,19 +37,19 @@ if [ "$?" -ne "0" ]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Install phing
|
# Install phing
|
||||||
sudo pear channel-discover pear.phing.info
|
pear channel-discover pear.phing.info
|
||||||
sudo pear install phing/phing-2.4.2
|
pear install phing/phing-2.4.2
|
||||||
|
|
||||||
# Apache Config File
|
# Apache Config File
|
||||||
echo "----------------------------------------------------"
|
echo "----------------------------------------------------"
|
||||||
echo "2. Apache Config File"
|
echo "2. Apache Config File"
|
||||||
echo "----------------------------------------------------"
|
echo "----------------------------------------------------"
|
||||||
if [ ! -f /etc/apache2/sites-available/airtime ]; then
|
if [ ! -f /etc/apache2/sites-available/airtime ]; then
|
||||||
sudo cp $SCRIPTPATH/../apache/airtime-vhost /etc/apache2/sites-available/airtime
|
cp $SCRIPTPATH/../apache/airtime-vhost /etc/apache2/sites-available/airtime
|
||||||
sudo rm -rf /etc/apache2/sites-enabled/000-default
|
rm -rf /etc/apache2/sites-enabled/000-default
|
||||||
sudo ln -s /etc/apache2/sites-available/airtime /etc/apache2/sites-enabled/airtime
|
ln -s /etc/apache2/sites-available/airtime /etc/apache2/sites-enabled/airtime
|
||||||
sudo a2enmod rewrite php5
|
a2enmod rewrite php5
|
||||||
sudo service apache2 restart
|
service apache2 restart
|
||||||
else
|
else
|
||||||
echo "Apache config for Airtime already exists..."
|
echo "Apache config for Airtime already exists..."
|
||||||
fi
|
fi
|
||||||
|
@ -60,8 +59,8 @@ echo "----------------------------------------------------"
|
||||||
echo "3. Enable Icecast"
|
echo "3. Enable Icecast"
|
||||||
echo "----------------------------------------------------"
|
echo "----------------------------------------------------"
|
||||||
cd /etc/default/
|
cd /etc/default/
|
||||||
sudo sed -i 's/ENABLE=false/ENABLE=true/g' icecast2
|
sed -i 's/ENABLE=false/ENABLE=true/g' icecast2
|
||||||
sudo service icecast2 start
|
service icecast2 start
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
# Enable Monit
|
# Enable Monit
|
||||||
|
@ -69,22 +68,22 @@ echo "----------------------------------------------------"
|
||||||
echo "4. Enable Monit"
|
echo "4. Enable Monit"
|
||||||
echo "----------------------------------------------------"
|
echo "----------------------------------------------------"
|
||||||
cd /etc/default/
|
cd /etc/default/
|
||||||
sudo sed -i 's/startup=0/startup=1/g' monit
|
sed -i 's/startup=0/startup=1/g' monit
|
||||||
sudo cp $SCRIPTPATH/../../python_apps/monit/airtime-monit.cfg /etc/monit/conf.d
|
cp $SCRIPTPATH/../../python_apps/monit/airtime-monit.cfg /etc/monit/conf.d
|
||||||
|
|
||||||
grep -q "include /etc/monit/conf.d" /etc/monit/monitrc
|
grep -q "include /etc/monit/conf.d" /etc/monit/monitrc
|
||||||
RETVAL=$?
|
RETVAL=$?
|
||||||
if [ $RETVAL -ne 0 ] ; then
|
if [ $RETVAL -ne 0 ] ; then
|
||||||
sudo echo "include /etc/monit/conf.d/*" >> /etc/monit/monitrc
|
echo "include /etc/monit/conf.d/*" >> /etc/monit/monitrc
|
||||||
fi
|
fi
|
||||||
|
|
||||||
sudo service monit start
|
service monit start
|
||||||
|
|
||||||
# Run Airtime Install
|
# Run Airtime Install
|
||||||
echo "----------------------------------------------------"
|
echo "----------------------------------------------------"
|
||||||
echo "5. Run Airtime Install"
|
echo "5. Run Airtime Install"
|
||||||
echo "----------------------------------------------------"
|
echo "----------------------------------------------------"
|
||||||
cd $SCRIPTPATH/../../install_minimal
|
cd $SCRIPTPATH/../../install_minimal
|
||||||
sudo ./airtime-install
|
./airtime-install
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -27,18 +27,18 @@ if [ ! -d "$VIRTUAL_ENV_DIR" ]; then
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
if [ $EXTRAOPTION -eq "0" ]; then
|
if [ $EXTRAOPTION -eq "0" ]; then
|
||||||
sudo virtualenv --extra-search-dir=${SCRIPTPATH}/3rd_party --no-site-package -p /usr/bin/python2.6 /usr/lib/airtime/airtime_virtualenv
|
virtualenv --extra-search-dir=${SCRIPTPATH}/3rd_party --no-site-package -p /usr/bin/python2.6 /usr/lib/airtime/airtime_virtualenv
|
||||||
else
|
else
|
||||||
# copy distribute-0.6.10.tar.gz to /usr/share/python-virtualenv/
|
# copy distribute-0.6.10.tar.gz to /usr/share/python-virtualenv/
|
||||||
# this is due to the bug in virtualenv 1.4.9
|
# this is due to the bug in virtualenv 1.4.9
|
||||||
if [ -d "$VIRTUAL_ENV_SHARE" ]; then
|
if [ -d "$VIRTUAL_ENV_SHARE" ]; then
|
||||||
cp ${SCRIPTPATH}/3rd_party/distribute-0.6.10.tar.gz /usr/share/python-virtualenv/
|
cp ${SCRIPTPATH}/3rd_party/distribute-0.6.10.tar.gz /usr/share/python-virtualenv/
|
||||||
fi
|
fi
|
||||||
sudo virtualenv --no-site-package -p /usr/bin/python2.6 /usr/lib/airtime/airtime_virtualenv
|
virtualenv --no-site-package -p /usr/bin/python2.6 /usr/lib/airtime/airtime_virtualenv
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo -e "\n*** Installing Python Libraries ***"
|
echo -e "\n*** Installing Python Libraries ***"
|
||||||
sudo /usr/lib/airtime/airtime_virtualenv/bin/pip install ${SCRIPTPATH}/airtime_virtual_env.pybundle -E /usr/lib/airtime/airtime_virtualenv
|
/usr/lib/airtime/airtime_virtualenv/bin/pip install ${SCRIPTPATH}/airtime_virtual_env.pybundle -E /usr/lib/airtime/airtime_virtualenv
|
||||||
|
|
||||||
echo -e "\n*** Patching Python Libraries ***"
|
echo -e "\n*** Patching Python Libraries ***"
|
||||||
PACHES=${SCRIPTPATH}/patches/*
|
PACHES=${SCRIPTPATH}/patches/*
|
||||||
|
@ -47,7 +47,7 @@ if [ ! -d "$VIRTUAL_ENV_DIR" ]; then
|
||||||
DIRNAME=$(basename $file)
|
DIRNAME=$(basename $file)
|
||||||
echo -e "\n ---Applying Patches for $DIRNAME---"
|
echo -e "\n ---Applying Patches for $DIRNAME---"
|
||||||
else
|
else
|
||||||
sudo patch -N -p0 -i $file
|
patch -N -p0 -i $file
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
else
|
else
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue