-clean up install script a little...removed some errors.
This commit is contained in:
parent
5a3dbdb671
commit
ea13b32ccf
|
@ -15,40 +15,72 @@ if (isset($arr["DOCUMENT_ROOT"]) && ($arr["DOCUMENT_ROOT"] != "") ) {
|
|||
exit(1);
|
||||
}
|
||||
|
||||
|
||||
require_once(dirname(__FILE__).'/../application/configs/conf.php');
|
||||
require_once(dirname(__FILE__).'/../application/models/GreenBox.php');
|
||||
//require_once(dirname(__FILE__).'/../application/models/cron/Cron.php');
|
||||
require_once(dirname(__FILE__)."/installInit.php");
|
||||
require_once(dirname(__FILE__).'/installInit.php');
|
||||
|
||||
// Need to check that we are superuser before running this.
|
||||
if(exec("whoami") != "root"){
|
||||
echo "Must be root user.\n";
|
||||
exit(1);
|
||||
function checkIfRoot(){
|
||||
// Need to check that we are superuser before running this.
|
||||
if(exec("whoami") != "root"){
|
||||
echo "Must be root user.\n";
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
// Need to check if build.properties project home is set correctly.
|
||||
function setBuildPropertiesPath(){
|
||||
$property = 'project.home';
|
||||
$lines = file('../build/build.properties');
|
||||
foreach ($lines as $key => &$line) {
|
||||
if ($property == substr($line, 0, strlen($property))){
|
||||
$line = $property." = ".realpath(__dir__.'/../')."\n";
|
||||
}
|
||||
}
|
||||
|
||||
$property = 'project.home';
|
||||
$lines = file('../build/build.properties');
|
||||
foreach ($lines as $key => &$line) {
|
||||
if ($property == substr($line, 0, strlen($property))){
|
||||
$line = $property." = ".realpath(__dir__.'/../')."\n";
|
||||
}
|
||||
$fp=fopen('../build/build.properties', 'w');
|
||||
foreach($lines as $key => $line){
|
||||
fwrite($fp, $line);
|
||||
}
|
||||
fclose($fp);
|
||||
}
|
||||
|
||||
$fp=fopen('../build/build.properties', 'w');
|
||||
foreach($lines as $key => $line){
|
||||
fwrite($fp, $line);
|
||||
function directorySetup($CC_CONFIG){
|
||||
//------------------------------------------------------------------------
|
||||
// Install storage directories
|
||||
//------------------------------------------------------------------------
|
||||
echo " *** Directory Setup ***\n";
|
||||
foreach (array('baseFilesDir', 'storageDir') as $d) {
|
||||
$test = file_exists($CC_CONFIG[$d]);
|
||||
if ( $test === FALSE ) {
|
||||
@mkdir($CC_CONFIG[$d], 02775);
|
||||
if (file_exists($CC_CONFIG[$d])) {
|
||||
$rp = realpath($CC_CONFIG[$d]);
|
||||
echo " * Directory $rp created\n";
|
||||
} else {
|
||||
echo " * Failed creating {$CC_CONFIG[$d]}\n";
|
||||
exit(1);
|
||||
}
|
||||
} elseif (is_writable($CC_CONFIG[$d])) {
|
||||
$rp = realpath($CC_CONFIG[$d]);
|
||||
echo " * Skipping directory already exists: $rp\n";
|
||||
} else {
|
||||
$rp = realpath($CC_CONFIG[$d]);
|
||||
echo " * WARNING: Directory already exists, but is not writable: $rp\n";
|
||||
//exit(1);
|
||||
}
|
||||
$CC_CONFIG[$d] = $rp;
|
||||
}
|
||||
}
|
||||
fclose($fp);
|
||||
|
||||
|
||||
|
||||
checkIfRoot();
|
||||
setBuildPropertiesPath();
|
||||
|
||||
echo "******************************** Install Begin *********************************\n";
|
||||
|
||||
echo " *** Database Installation ***\n";
|
||||
|
||||
//sudo -u postgres createuser --no-superuser --no-createdb --no-createrole -A -P myuser
|
||||
|
||||
// Create the database user
|
||||
$command = "sudo -u postgres psql postgres --command \"CREATE USER {$CC_CONFIG['dsn']['username']} "
|
||||
|
@ -86,148 +118,18 @@ if ($langIsInstalled == '0') {
|
|||
echo " * Creating database tables\n";
|
||||
// Put Propel sql files in Database
|
||||
$command = __DIR__."/../library/propel/generator/bin/propel-gen ../build/ insert-sql 2>propel-error.log";
|
||||
//echo $command."\n";
|
||||
@exec($command, $output, $results);
|
||||
|
||||
directorySetup($CC_CONFIG);
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
// Install default data
|
||||
//------------------------------------------------------------------------
|
||||
echo " *** Inserting Default Users ***\n";
|
||||
|
||||
// Add the "Station Preferences" group
|
||||
if (!empty($CC_CONFIG['StationPrefsGr'])) {
|
||||
if (!Subjects::GetSubjId('scheduler')) {
|
||||
echo " * Creating group '".$CC_CONFIG['StationPrefsGr']."'...";
|
||||
$stPrefGr = Subjects::AddSubj($CC_CONFIG['StationPrefsGr']);
|
||||
Subjects::AddSubjectToGroup('root', $CC_CONFIG['StationPrefsGr']);
|
||||
echo "done.\n";
|
||||
} else {
|
||||
echo " * Skipping: group already exists: '".$CC_CONFIG['StationPrefsGr']."'\n";
|
||||
}
|
||||
}
|
||||
|
||||
// Add the root user if it doesnt exist yet.
|
||||
//$rootUid = Subjects::GetSubjId('root');
|
||||
//if (!$rootUid) {
|
||||
// echo " * Creating user 'root'...";
|
||||
// $rootUid = BasicStor::addSubj("root", $CC_CONFIG['tmpRootPass']);
|
||||
|
||||
// Add root user to the admin group
|
||||
//$r = Subjects::AddSubjectToGroup('root', $CC_CONFIG['AdminsGr']);
|
||||
//if (PEAR::isError($r)) {
|
||||
//return $r;
|
||||
//}
|
||||
// echo "done.\n";
|
||||
//} else {
|
||||
// echo " * Skipping: user already exists: 'root'\n";
|
||||
//}
|
||||
|
||||
// Create the user named 'scheduler'.
|
||||
if (!Subjects::GetSubjId('scheduler')) {
|
||||
echo " * Creating user 'scheduler'...";
|
||||
$subid = Subjects::AddSubj('scheduler', $CC_CONFIG['schedulerPass']);
|
||||
$res = Alib::AddPerm($subid, 'read', '0', 'A');
|
||||
//$r = Subjects::AddSubjectToGroup('scheduler', $CC_CONFIG['AllGr']);
|
||||
echo "done.\n";
|
||||
} else {
|
||||
echo " * Skipping: user already exists: 'scheduler'\n";
|
||||
}
|
||||
|
||||
// Need to add 'scheduler' to group StationPrefs
|
||||
Subjects::AddSubjectToGroup('scheduler', $CC_CONFIG['StationPrefsGr']);
|
||||
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
// Install storage directories
|
||||
//------------------------------------------------------------------------
|
||||
echo " *** Directory Setup ***\n";
|
||||
foreach (array('baseFilesDir', 'storageDir') as $d) {
|
||||
$test = file_exists($CC_CONFIG[$d]);
|
||||
if ( $test === FALSE ) {
|
||||
@mkdir($CC_CONFIG[$d], 02775);
|
||||
if (file_exists($CC_CONFIG[$d])) {
|
||||
$rp = realpath($CC_CONFIG[$d]);
|
||||
echo " * Directory $rp created\n";
|
||||
} else {
|
||||
echo " * Failed creating {$CC_CONFIG[$d]}\n";
|
||||
exit(1);
|
||||
}
|
||||
} elseif (is_writable($CC_CONFIG[$d])) {
|
||||
$rp = realpath($CC_CONFIG[$d]);
|
||||
echo " * Skipping directory already exists: $rp\n";
|
||||
} else {
|
||||
$rp = realpath($CC_CONFIG[$d]);
|
||||
echo " * WARNING: Directory already exists, but is not writable: $rp\n";
|
||||
//exit(1);
|
||||
}
|
||||
$CC_CONFIG[$d] = $rp;
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
// Storage directory writability test
|
||||
//------------------------------------------------------------------------
|
||||
|
||||
//echo " * Testing writability of ".$CC_CONFIG['storageDir']."...";
|
||||
//if (!($fp = @fopen($CC_CONFIG['storageDir']."/_writeTest", 'w'))) {
|
||||
// echo "\nPlease make directory {$CC_CONFIG['storageDir']} writeable by your webserver".
|
||||
// "\nand run install again\n\n";
|
||||
// exit(1);
|
||||
//} else {
|
||||
// fclose($fp);
|
||||
// unlink($CC_CONFIG['storageDir']."/_writeTest");
|
||||
//}
|
||||
//echo "done.\n";
|
||||
|
||||
|
||||
//
|
||||
// Make sure the Smarty Templates Compiled directory has the right perms
|
||||
//
|
||||
echo " * Setting dir permissions...\n";
|
||||
//install_setDirPermissions($CC_CONFIG["smartyTemplateCompiled"]);
|
||||
install_setDirPermissions($CC_CONFIG["storageDir"]);
|
||||
//install_setDirPermissions($CC_CONFIG["bufferDir"]);
|
||||
//install_setDirPermissions($CC_CONFIG["transDir"]);
|
||||
//install_setDirPermissions($CC_CONFIG["accessDir"]);
|
||||
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
// Install Cron job
|
||||
//------------------------------------------------------------------------
|
||||
//$m = '*/2';
|
||||
//$h ='*';
|
||||
//$dom = '*';
|
||||
//$mon = '*';
|
||||
//$dow = '*';
|
||||
//$command = realpath("{$CC_CONFIG['cronDir']}/transportCron.php");
|
||||
//$old_regex = '/transportCron\.php/';
|
||||
//echo " * Install storageServer cron job...\n";
|
||||
//
|
||||
//$cron = new Cron();
|
||||
//$access = $cron->openCrontab('write');
|
||||
//if ($access != 'write') {
|
||||
// do {
|
||||
// $r = $cron->forceWriteable();
|
||||
// } while ($r);
|
||||
//}
|
||||
//
|
||||
//foreach ($cron->ct->getByType(CRON_CMD) as $id => $line) {
|
||||
// if (preg_match($old_regex, $line['command'])) {
|
||||
// echo " * Removing old entry: ".$line['command']."\n";
|
||||
// $cron->ct->delEntry($id);
|
||||
// }
|
||||
//}
|
||||
//echo " * Adding new entry: ".$command."\n";
|
||||
//$cron->ct->addCron($m, $h, $dom, $mon, $dow, $command);
|
||||
//$cron->closeCrontab();
|
||||
//echo " Done.\n";
|
||||
|
||||
echo " * Importing sample audio clips \n";
|
||||
$command = __DIR__."/../utils/airtime-import --copy ../audio_samples/ > /dev/null";
|
||||
@exec($command, $output, $results);
|
||||
|
||||
$command = "python ".__DIR__."/../pypo/install/pypo-install.py";
|
||||
|
||||
system($command);
|
||||
echo "******************************* Install Complete *******************************\n";
|
||||
?>
|
||||
|
|
|
@ -3,9 +3,8 @@ if (!function_exists('pg_connect')) {
|
|||
trigger_error("PostgreSQL PHP extension required and not found.", E_USER_ERROR);
|
||||
exit(2);
|
||||
}
|
||||
//require_once('DB.php');
|
||||
|
||||
require_once(dirname(__FILE__).'/../library/pear/DB.php');
|
||||
//require_once('File/Find.php');
|
||||
|
||||
function camp_db_table_exists($p_name)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue