Merge branch 'cc-5709-airtime-analyzer-saas' of github.com:sourcefabric/Airtime into cc-5709-airtime-analyzer-saas

This commit is contained in:
Albert Santoni 2014-05-05 12:42:49 -04:00
commit e963157a22
8 changed files with 6 additions and 145 deletions

View File

@ -36,37 +36,6 @@ class UpgradeController extends Zend_Controller_Action
$diskUsage = shell_exec("du -sb $storDir | awk '{print $1}'");
Application_Model_Preference::setDiskUsage($diskUsage);
//update application.ini
$iniFile = isset($_SERVER['AIRTIME_BASE']) ? $_SERVER['AIRTIME_BASE']."application.ini" : "/usr/share/airtime/application/configs/application.ini";
$newLines = "resources.frontController.moduleDirectory = APPLICATION_PATH \"/modules\"\n".
"resources.frontController.plugins.putHandler = \"Zend_Controller_Plugin_PutHandler\"\n".
";load everything in the modules directory including models\n".
"resources.modules[] = \"\"\n";
$currentIniFile = file_get_contents($iniFile);
/* We want to add the new lines after a specific line. So we must find read the file
* into an array, find the key to which our desired line belongs, and use the key
* to split the file in two halves, $beginning and $end.
* The $newLines will go inbetween $beginning and $end
*/
$lines = explode("\n", $currentIniFile);
$key = array_search("resources.layout.layoutPath = APPLICATION_PATH \"/layouts/scripts/\"", $lines);
if (!$key) {
throw new Exception('Upgrade to Airtime 2.5.3 FAILED. Could not upgrade application.ini');
}
$beginning = implode("\n", array_slice($lines, 0, $key));
$end = implode("\n", array_slice($lines, $key));
if (!is_writeable($iniFile)) {
throw new Exception('Upgrade to Airtime 2.5.3 FAILED. Could not upgrade application.ini - Permission denied.');
}
$file = new SplFileObject($iniFile, "w");
$file->fwrite($beginning."\n".$newLines.$end);
//TODO: clear out the cache

View File

@ -1440,7 +1440,8 @@ class Application_Model_Preference
public static function getDiskUsage()
{
return self::getValue("disk_usage");
$val = self::getValue("disk_usage");
return (strlen($val) == 0) ? 0 : $val;
}
public static function setDiskUsage($value)

View File

@ -219,6 +219,9 @@ class Application_Model_Systemstatus
$totalSpace = Application_Model_Preference::GetDiskQuota();
$usedSpace = Application_Model_Preference::getDiskUsage();
if (empty($usedSpace)) {
$usedSpace = 0;
}
/* $path = $_SERVER['AIRTIME_BASE']."etc/airtime/num_bytes.ini";
$arr = parse_ini_file($path);
@ -240,7 +243,7 @@ class Application_Model_Systemstatus
$diskInfo = self::GetDiskInfo();
$diskInfo = $diskInfo[0];
$diskUsage = $diskInfo->totalSpace - $diskInfo->totalFreeSpace;
if ($diskUsage >= $diskInfo->totalSpace) {
if ($diskUsage > 0 && $diskUsage >= $diskInfo->totalSpace) {
return true;
}

View File

@ -340,10 +340,6 @@ class AirtimeInstall
$dir = AirtimeInstall::CONF_DIR_BINARIES."/utils/airtime-import/airtime-import";
exec("ln -s $dir /usr/bin/airtime-import");
echo "* Installing airtime-update-db-settings".PHP_EOL;
$dir = AirtimeInstall::CONF_DIR_BINARIES."/utils/airtime-update-db-settings";
exec("ln -s $dir /usr/bin/airtime-update-db-settings");
echo "* Installing airtime-check-system".PHP_EOL;
$dir = AirtimeInstall::CONF_DIR_BINARIES."/utils/airtime-check-system";
exec("ln -s $dir /usr/bin/airtime-check-system");
@ -360,7 +356,6 @@ class AirtimeInstall
public static function RemoveSymlinks()
{
exec("rm -f /usr/bin/airtime-import");
exec("rm -f /usr/bin/airtime-update-db-settings");
exec("rm -f /usr/bin/airtime-check-system");
exec("rm -f /usr/bin/airtime-user");
exec("rm -f /usr/bin/airtime-log");

View File

@ -80,7 +80,6 @@ cp -R $AIRTIMEROOT/python_apps/std_err_override /usr/lib/airtime
echo "* Creating symbolic links in /usr/bin"
#create symbolic links
ln -sf /usr/lib/airtime/utils/airtime-import/airtime-import /usr/bin/airtime-import
ln -sf /usr/lib/airtime/utils/airtime-update-db-settings /usr/bin/airtime-update-db-settings
ln -sf /usr/lib/airtime/utils/airtime-check-system /usr/bin/airtime-check-system
ln -sf /usr/lib/airtime/utils/airtime-log /usr/bin/airtime-log
ln -sf /usr/lib/airtime/utils/airtime-test-soundcard /usr/bin/airtime-test-soundcard

View File

@ -31,7 +31,6 @@ python $AIRTIMEROOT/python_apps/media-monitor/install/media-monitor-remove-files
#remove symlinks
rm -f /usr/bin/airtime-import
rm -f /usr/bin/airtime-update-db-settings
rm -f /usr/bin/airtime-check-system
rm -f /usr/bin/airtime-log
rm -f /usr/bin/airtime-test-soundcard

View File

@ -1,18 +0,0 @@
#!/bin/bash
#-------------------------------------------------------------------------------
# Determine directories, files
#-------------------------------------------------------------------------------
virtualenv_bin="/usr/lib/airtime/airtime_virtualenv/bin/"
. ${virtualenv_bin}activate
# Absolute path to this script
SCRIPT=`readlink -f $0`
# Absolute directory this script is in
SCRIPTPATH=`dirname $SCRIPT`
#-------------------------------------------------------------------------------
# Do import
#-------------------------------------------------------------------------------
invokePwd=$PWD
cd $SCRIPTPATH && python airtime-update-db-settings.py

View File

@ -1,87 +0,0 @@
"""
The purpose of this script is to consolidate into one location where
we need to update database host, dbname, username and password.
This script reads from /etc/airtime/airtime.conf.
"""
import os
import sys
import ConfigParser
import xml.dom.minidom
from xml.dom.minidom import Node
if os.geteuid() != 0:
print "Please run this as root."
sys.exit(1)
airtime_conf = '/etc/airtime/airtime.conf'
#Read the universal values
parser = ConfigParser.SafeConfigParser()
parser.read(airtime_conf)
host = 'resources.db.params.host'
dbname = 'resources.db.params.dbname'
username = 'resources.db.params.username'
password = 'resources.db.params.password'
airtime_dir = parser.get('general', 'airtime_dir')
if os.path.exists(airtime_dir):
print 'Airtime root folder found at %s' % airtime_dir
else:
print 'Could not find Airtime root folder specified by "airtime_dir" in %s' % airtime_conf
sys.exit(1)
print ("Updating %s/application/configs/application.ini" % airtime_dir)
f = file('%s/application/configs/application.ini' % airtime_dir,'r')
file_lines = []
for line in f:
if line[0:len(host)] == host:
line= '%s = "%s"\n' % (host, parser.get('database', 'host'))
elif line[0:len(dbname)] == dbname:
line= '%s = "%s"\n' % (dbname, parser.get('database', 'dbname'))
elif line[0:len(username)] == username:
line= '%s = "%s"\n' % (username, parser.get('database', 'dbuser'))
elif line[0:len(password)] == password:
line= '%s = "%s"\n' % (password, parser.get('database', 'dbpass'))
file_lines.append(line)
f.close()
f = file('%s/application/configs/application.ini' % airtime_dir, 'w')
f.writelines(file_lines)
f.close()
print ("Updating %s/build/build.properties" % airtime_dir)
f = file('%s/build/build.properties' % airtime_dir, 'r')
file_lines = []
db_url = 'propel.database.url'
for line in f:
if line[0:len(db_url)] == db_url:
line = '%s = pgsql:host=%s dbname=%s user=%s password=%s\n' % \
(db_url, parser.get('database', 'host'), parser.get('database', 'dbname'), parser.get('database', 'dbuser'), \
parser.get('database', 'dbpass'))
file_lines.append(line)
f.close()
f = file('%s/build/build.properties' % airtime_dir, 'w')
f.writelines(file_lines)
f.close()
print ("Updating %s/build/runtime-conf.xml" % airtime_dir)
doc = xml.dom.minidom.parse('%s/build/runtime-conf.xml' % airtime_dir)
node = doc.getElementsByTagName("dsn")[0]
node.firstChild.nodeValue = 'pgsql:host=%s;port=5432;dbname=%s;user=%s;password=%s' % (parser.get('database', 'host'), \
parser.get('database', 'dbname'), parser.get('database', 'dbuser'), parser.get('database', 'dbpass'))
xml_file = open('%s/build/runtime-conf.xml' % airtime_dir, "w")
xml_file.writelines(doc.toxml('utf-8'))
xml_file.close()
print "Success!"