CC-2279: Upgrade script for converting stor directory to new format

-further fixes
This commit is contained in:
martin 2011-07-14 16:39:18 -04:00
parent e529a16bdb
commit 9f3218b8d9
3 changed files with 7 additions and 5 deletions

View File

@ -19,14 +19,15 @@ class Version20110629143017 extends AbstractMigration
$cc_music_dirs->addColumn('directory', 'text', array('unique' => true)); $cc_music_dirs->addColumn('directory', 'text', array('unique' => true));
$cc_music_dirs->setPrimaryKey(array('id')); $cc_music_dirs->setPrimaryKey(array('id'));
//end create cc_music_dirs table //end create cc_music_dirs table
//start cc_files modifications //start cc_files modifications
$cc_files = $schema->getTable('cc_files'); $cc_files = $schema->getTable('cc_files');
$cc_files->addColumn('directory', 'integer'); $cc_files->addColumn('directory', 'integer', array('default'=> -1));
$cc_files->addNamedForeignKeyConstraint('cc_music_dirs_folder_fkey', $cc_music_dirs, array('directory'), array('id'), array('onDelete' => 'CASCADE')); //$cc_files->addNamedForeignKeyConstraint('cc_music_dirs_folder_fkey', $cc_music_dirs, array('directory'), array('id'), array('onDelete' => 'CASCADE'));
//end cc_files modifications //end cc_files modifications
} }

View File

@ -81,7 +81,6 @@ function execSqlQuery($sql){
global $CC_DBC; global $CC_DBC;
$result = $CC_DBC->query($sql); $result = $CC_DBC->query($sql);
echo $sql.PHP_EOL;
if (PEAR::isError($result)) { if (PEAR::isError($result)) {
echo "* Failed sql query: $sql".PHP_EOL; echo "* Failed sql query: $sql".PHP_EOL;
echo "* Message {$result->getMessage()}".PHP_EOL; echo "* Message {$result->getMessage()}".PHP_EOL;
@ -409,9 +408,10 @@ execSqlQuery($sql);
//create cron file for phone home stat //create cron file for phone home stat
AirtimeInstall::CreateCronFile(); AirtimeInstall::CreateCronFile();
$stor_dir = realpath($values['general']['base_dir']."/stor")."/"; $stor_dir = realpath($values['general']['base_files_dir']."/stor")."/";
echo "* Inserting stor directory location $stor_dir into music_dirs table".PHP_EOL; echo "* Inserting stor directory location $stor_dir into music_dirs table".PHP_EOL;
$sql = "INSERT INTO cc_music_dirs (directory, type) VALUES ('$stor_dir', 'stor')"; $sql = "INSERT INTO cc_music_dirs (directory, type) VALUES ('$stor_dir', 'stor')";
echo $sql.PHP_EOL;
execSqlQuery($sql); execSqlQuery($sql);
//old database had a "fullpath" column that stored the absolute path of each track. We have to //old database had a "fullpath" column that stored the absolute path of each track. We have to
@ -430,6 +430,7 @@ foreach ($oldAndNewFileNames as $pair){
$relPathNew = substr($pair[1], 0, strlen($stor_dir)); $relPathNew = substr($pair[1], 0, strlen($stor_dir));
$absPathOld = $pair[0]; $absPathOld = $pair[0];
$sql = "UPDATE cc_music_dirs SET filepath = \"$relPathNew\", directory=1 WHERE filepath = \"$absPathOld\""; $sql = "UPDATE cc_music_dirs SET filepath = \"$relPathNew\", directory=1 WHERE filepath = \"$absPathOld\"";
echo $sql.PHP_EOL;
execSqlQuery($sql); execSqlQuery($sql);
} }

View File

@ -21,7 +21,7 @@ mmconfig = AirtimeMediaConfig(logger)
#get stor folder location from /etc/airtime/airtime.conf #get stor folder location from /etc/airtime/airtime.conf
config = ConfigParser.RawConfigParser() config = ConfigParser.RawConfigParser()
config.read('/etc/airtime/airtime.conf') config.read('/etc/airtime/airtime.conf')
stor_dir = config.get('general', 'base_dir') stor_dir = config.get('general', 'base_files_dir')
mmconfig.storage_directory = os.path.normpath(stor_dir) mmconfig.storage_directory = os.path.normpath(stor_dir)
mmconfig.imported_directory = os.path.normpath(stor_dir + '/imported') mmconfig.imported_directory = os.path.normpath(stor_dir + '/imported')