Merge branch 'master' of dev.sourcefabric.org:airtime

This commit is contained in:
Paul Baranowski 2011-04-12 13:59:13 -04:00
commit 2937fb4ee1
5 changed files with 89 additions and 21 deletions

View File

@ -15,12 +15,15 @@ class Version20110406182005 extends AbstractMigration
$cc_show_instances->addColumn('time_filled', 'time', array('notnull' => false));
//end cc_show_instances modifications
//start cc_show_instances modifications
//start cc_show_rebroadcast modifications
$cc_show_rebroadcast = $schema->getTable('cc_show_rebroadcast');
$cc_show_rebroadcast->dropColumn('start_time');
$cc_show_rebroadcast->addColumn('start_time', 'time', array('notnull' => true));
//end cc_show_instances modifications
$type = $cc_show_rebroadcast->getColumn('start_time')->getType()->getName();
if($type == 'datetime') {
$cc_show_rebroadcast->dropColumn('start_time');
$cc_show_rebroadcast->addColumn('start_time', 'time', array('notnull' => true));
}
//end cc_show_rebroadcast modifications
}
public function down(Schema $schema)
@ -31,10 +34,14 @@ class Version20110406182005 extends AbstractMigration
$cc_show_instances->dropColumn('time_filled');
//end cc_show_instances modifications
//start cc_show_instances modifications
//start cc_show_rebroadcast modifications
$cc_show_rebroadcast = $schema->getTable('cc_show_rebroadcast');
$cc_show_rebroadcast->dropColumn('start_time');
$cc_show_rebroadcast->addColumn('start_time', 'datetime', array('notnull' => 1));
//end cc_show_instances modifications
$type = $cc_show_rebroadcast->getColumn('start_time')->getType()->getName();
if($type == 'datetime') {
$cc_show_rebroadcast->dropColumn('start_time');
$cc_show_rebroadcast->addColumn('start_time', 'datetime', array('notnull' => 1));
}
//end cc_show_rebroadcast modifications
}
}

View File

@ -7,22 +7,13 @@
*/
require_once(dirname(__FILE__).'/include/AirtimeIni.php');
require_once(dirname(__FILE__).'/include/AirtimeInstall.php');
AirtimeIni::ExitIfNotRoot();
echo "******************************** Update Begin *********************************".PHP_EOL;
AirtimeIni::CreateIniFile();
AirtimeIni::UpdateIniFiles();
echo PHP_EOL."*** Updating Database Tables ***".PHP_EOL;
AirtimeInstall::MigrateTables(__DIR__);
echo PHP_EOL."*** Updating Pypo ***".PHP_EOL;
system("python ".__DIR__."/../python_apps/pypo/install/pypo-install.py");
echo PHP_EOL."*** Recorder Installation ***".PHP_EOL;
system("python ".__DIR__."/../python_apps/show-recorder/install/recorder-install.py");
//system("php ".__DIR__."/upgrades/airtime-1.7/airtime-upgrade.php");
system("php ".__DIR__."/upgrades/airtime-1.8/airtime-upgrade.php");
echo "******************************* Update Complete *******************************".PHP_EOL;

View File

@ -161,9 +161,21 @@ class AirtimeInstall {
@exec($command, $output, $results);
}
public static function MigrateTables($dir)
public static function BypassMigrations($dir, $version)
{
$command = "php $dir/../library/doctrine/migrations/doctrine-migrations.phar --configuration=$dir/DoctrineMigrations/migrations.xml --db-configuration=$dir/../library/doctrine/migrations/migrations-db.php --no-interaction migrations:migrate";
$command = "php $dir/../../../library/doctrine/migrations/doctrine-migrations.phar ".
"--configuration=$dir/../../DoctrineMigrations/migrations.xml ".
"--db-configuration=$dir/../../../library/doctrine/migrations/migrations-db.php ".
"--no-interaction --add migrations:version $version";
system($command);
}
public static function MigrateTablesToVersion($dir, $version)
{
$command = "php $dir/../../../library/doctrine/migrations/doctrine-migrations.phar ".
"--configuration=$dir/../../DoctrineMigrations/migrations.xml ".
"--db-configuration=$dir/../../../library/doctrine/migrations/migrations-db.php ".
"--no-interaction migrations:migrate $version";
system($command);
}

View File

@ -0,0 +1,23 @@
<?php
/**
* @package Airtime
* @subpackage StorageServer
* @copyright 2010 Sourcefabric O.P.S.
* @license http://www.gnu.org/licenses/gpl.txt
*/
require_once(dirname(__FILE__).'/../../include/AirtimeIni.php');
require_once(dirname(__FILE__).'/../../include/AirtimeInstall.php');
AirtimeIni::CreateIniFile();
AirtimeIni::UpdateIniFiles();
echo PHP_EOL."*** Updating Database Tables ***".PHP_EOL;
AirtimeInstall::MigrateTablesToVersion(__DIR__, '20110402164819');
echo PHP_EOL."*** Updating Pypo ***".PHP_EOL;
system("python ".__DIR__."/../../../python_apps/pypo/install/pypo-install.py");
echo PHP_EOL."*** Recorder Installation ***".PHP_EOL;
system("python ".__DIR__."/../../../python_apps/show-recorder/install/recorder-install.py");

View File

@ -0,0 +1,35 @@
<?php
/**
* @package Airtime
* @subpackage StorageServer
* @copyright 2010 Sourcefabric O.P.S.
* @license http://www.gnu.org/licenses/gpl.txt
*/
set_include_path(__DIR__.'/../../../library' . PATH_SEPARATOR . get_include_path());
require_once __DIR__.'/../../../application/configs/conf.php';
require_once(dirname(__FILE__).'/../../include/AirtimeInstall.php');
AirtimeInstall::DbConnect(true);
echo PHP_EOL."*** Updating Database Tables ***".PHP_EOL;
if(AirtimeInstall::DbTableExists('doctrine_migration_versions') === false) {
$migrations = array('20110312121200', '20110331111708', '20110402164819');
foreach($migrations as $migration) {
AirtimeInstall::BypassMigrations(__DIR__, $migration);
}
}
AirtimeInstall::MigrateTablesToVersion(__DIR__, '20110406182005');
//setting data for new aggregate show length column.
$sql = "SELECT id FROM cc_show_instances";
$show_instances = $CC_DBC->GetAll($sql);
foreach ($show_instances as $show_instance) {
$sql = "UPDATE cc_show_instances SET time_filled = (SELECT SUM(clip_length) FROM cc_schedule WHERE instance_id = {$show_instance["id"]}) WHERE id = {$show_instance["id"]}";
$CC_DBC->query($sql);
}
//end setting data for new aggregate show length column.