From ed8d247b174b7a9e738c53f45b0245b380e02e19 Mon Sep 17 00:00:00 2001 From: martin Date: Tue, 12 Jul 2011 12:18:29 -0400 Subject: [PATCH] CC-2514: new airtime-import -airtime-import for install and upgrade scripts --- install/include/AirtimeInstall.php | 2 +- .../upgrades/airtime-1.9/airtime-upgrade.php | 27 ++++++++++++++++--- utils/airtime-import/airtime-import | 17 ++++++++++++ .../airtime-import}/airtime-import.py | 1 - 4 files changed, 41 insertions(+), 6 deletions(-) create mode 100755 utils/airtime-import/airtime-import rename {python_apps => utils/airtime-import}/airtime-import.py (99%) diff --git a/install/include/AirtimeInstall.php b/install/include/AirtimeInstall.php index 8a9168f2a..f48305f18 100644 --- a/install/include/AirtimeInstall.php +++ b/install/include/AirtimeInstall.php @@ -309,7 +309,7 @@ class AirtimeInstall AirtimeInstall::RemoveSymlinks(); echo "* Installing airtime-import".PHP_EOL; - $dir = AirtimeInstall::CONF_DIR_BINARIES."/utils/airtime-import"; + $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; diff --git a/install/upgrades/airtime-1.9/airtime-upgrade.php b/install/upgrades/airtime-1.9/airtime-upgrade.php index 8dd265a15..86ddc5117 100644 --- a/install/upgrades/airtime-1.9/airtime-upgrade.php +++ b/install/upgrades/airtime-1.9/airtime-upgrade.php @@ -38,7 +38,7 @@ function MigrateTablesToVersion($version) system($command); } -function InstallPhpCode($phpDir) +function InstallAirtimePhpServerCode($phpDir) { global $CC_CONFIG; @@ -49,7 +49,7 @@ function InstallPhpCode($phpDir) exec("cp -R ".$AIRTIME_SRC."/* ".$phpDir); } -function InstallBinaries() +function CopyUtils() { $utilsSrc = __DIR__."/../../../utils"; @@ -58,6 +58,8 @@ function InstallBinaries() exec("cp -R ".$utilsSrc." ".CONF_DIR_BINARIES); } +/* Removes pypo, media-monitor, show-recorder and utils from system. These will + be reinstalled by the main airtime-upgrade script. */ function UninstallBinaries() { echo "* Removing Airtime binaries from ".CONF_DIR_BINARIES.PHP_EOL; @@ -65,6 +67,16 @@ function UninstallBinaries() } +function removeOldAirtimeImport(){ + exec('rm -f "/usr/lib/airtime/utils/airtime-import"'); + exec('rm -f "/usr/lib/airtime/utils/airtime-import.php"'); +} + +function updateAirtimeImportSymLink(){ + $dir = "/usr/lib/airtime/utils/airtime-import/airtime-import"; + exec("ln -s $dir /usr/bin/airtime-import"); +} + /* In version 1.9.0 we have have switched from daemontools to more traditional * init.d daemon system. Let's remove all the daemontools files */ @@ -103,8 +115,15 @@ foreach ($pathnames as $pn){ $values = parse_ini_file(CONF_FILE_AIRTIME, true); $phpDir = $values['general']['airtime_dir']; -InstallPhpCode($phpDir); +InstallAirtimePhpServerCode($phpDir); //update utils (/usr/lib/airtime) folder UninstallBinaries(); -InstallBinaries(); +CopyUtils(); + +removeOldAirtimeImport(); +updateAirtimeImportSymLink(); + + +//need to change database because old format had full path while new database has partial paths +//also need to add new column diff --git a/utils/airtime-import/airtime-import b/utils/airtime-import/airtime-import new file mode 100755 index 000000000..6a1dc5a65 --- /dev/null +++ b/utils/airtime-import/airtime-import @@ -0,0 +1,17 @@ +#!/bin/sh + +# Location of pypo_cli.py Python script +airtime_import_path="/usr/lib/airtime/utils/airtime-import/" +airtime_import_script="airtime-import.py" + +api_client_path="/usr/lib/airtime/pypo/" +cd ${airtime_import_path} + +exec 2>&1 + +export PYTHONPATH=${api_client_path} + +# Note the -u when calling python! we need it to get unbuffered binary stdout and stderr +exec python -u ${airtime_import_path}${airtime_import_script} $@ + +# EOF diff --git a/python_apps/airtime-import.py b/utils/airtime-import/airtime-import.py similarity index 99% rename from python_apps/airtime-import.py rename to utils/airtime-import/airtime-import.py index 6a88240d2..067e2398f 100644 --- a/python_apps/airtime-import.py +++ b/utils/airtime-import/airtime-import.py @@ -166,7 +166,6 @@ if ("-c" in sys.argv or "-copy" in sys.argv or "-l" in sys.argv or "-link" in sy args = parser.parse_args(['-h']) else: args = parser.parse_args() -print args #format args.path if(hasattr(args,'path')): if(args.path[-1] != '/'):