The new 2.0 setup is under way...

SVN:trunk[2182]
This commit is contained in:
Romain Quetiez
2012-09-12 15:54:37 +00:00
parent 10aaa3f9bf
commit 6052e5c848

View File

@@ -40,11 +40,11 @@ class ApplicationInstaller
const WARNING = 3;
const INFO = 4;
protected $sXMLResponseFile;
protected $oParams;
public function __construct($sXMLResponseFile)
public function __construct($oParams)
{
$this->sXMLResponseFile = $sXMLResponseFile;
$this->oParams = $oParams;
}
/**
@@ -131,11 +131,15 @@ class ApplicationInstaller
break;
case 'compile':
$oParams = new XMLParameters($this->sXMLResponseFile);
$aSelectedModules = $oParams->Get('selected_modules');
$sSourceDir = $oParams->Get('source_dir', 'datamodel');
$sTargetDir = $oParams->Get('target_dir', 'env-setup-test');
$sWorkspaceDir = $oParams->Get('workspace_dir', 'workspace');
$aSelectedModules = $this->oParams->Get('selected_modules');
$sSourceDir = $this->oParams->Get('source_dir', 'datamodel');
$sTargetEnvironment = $this->oParams->Get('target_env', '');
if ($sTargetEnvironment == '')
{
$sTargetEnvironment = 'production';
}
$sTargetDir = 'env-'.$sTargetEnvironment;
$sWorkspaceDir = $this->oParams->Get('workspace_dir', 'workspace');
self::DoCompile($aSelectedModules, $sSourceDir, $sTargetDir, $sWorkspaceDir);
@@ -149,16 +153,20 @@ class ApplicationInstaller
break;
case 'db-schema':
$oParams = new XMLParameters($this->sXMLResponseFile);
$sMode = $oParams->Get('mode');
$sTargetDir = $oParams->Get('target_dir', 'env-setup-test');
$sDBServer = $oParams->Get('db_server', '');
$sDBUser = $oParams->Get('db_user', '');
$sDBPwd = $oParams->Get('db_pwd', '');
$sDBName = $oParams->Get('db_name', '');
$sDBNewName = $oParams->Get('db_new_name', '');
$sDBPrefix = $oParams->Get('db_prefix', '');
$sTargetEnvironment = $oParams->Get('target_env', '');
$sMode = $this->oParams->Get('mode');
$sTargetEnvironment = $this->oParams->Get('target_env', '');
if ($sTargetEnvironment == '')
{
$sTargetEnvironment = 'production';
}
$sTargetDir = 'env-'.$sTargetEnvironment;
$aDBParams = $this->oParams->Get('database');
$sDBServer = $aDBParams['server'];
$sDBUser = $aDBParams['user'];
$sDBPwd = $aDBParams['pwd'];
$sDBName = $aDBParams['name'];
$sDBNewName = $aDBParams['new_name'];
$sDBPrefix = $aDBParams['prefix'];
self::DoUpdateDBSchema($sMode, $sTargetDir, $sDBServer, $sDBUser, $sDBPwd, $sDBName, $sDBNewName, $sDBPrefix, $sTargetEnvironment);
@@ -172,22 +180,28 @@ class ApplicationInstaller
break;
case 'after-db-create':
$oParams = new XMLParameters($this->sXMLResponseFile);
$sMode = $oParams->Get('mode');
$sTargetDir = $oParams->Get('target_dir', 'env-setup-test');
$sDBServer = $oParams->Get('db_server', '');
$sDBUser = $oParams->Get('db_user', '');
$sDBPwd = $oParams->Get('db_pwd', '');
$sDBName = $oParams->Get('db_name', '');
$sDBNewName = $oParams->Get('db_new_name', '');
$sDBPrefix = $oParams->Get('db_prefix', '');
$sAdminUser = $oParams->Get('admin_user', '');
$sAdminPwd = $oParams->Get('admin_pwd', '');
$sLanguage = $oParams->Get('language', '');
$aSelectedModules = $oParams->Get('selected_modules', array());
$sTargetEnvironment = $oParams->Get('target_env', '');
$sMode = $this->oParams->Get('mode');
$sTargetEnvironment = $this->oParams->Get('target_env', '');
if ($sTargetEnvironment == '')
{
$sTargetEnvironment = 'production';
}
$sTargetDir = 'env-'.$sTargetEnvironment;
$aDBParams = $this->oParams->Get('database');
$sDBServer = $aDBParams['server'];
$sDBUser = $aDBParams['user'];
$sDBPwd = $aDBParams['pwd'];
$sDBName = $aDBParams['name'];
$sDBNewName = $aDBParams['new_name'];
$sDBPrefix = $aDBParams['prefix'];
$aAdminParams = $this->oParams->Get('admin_account');
$sAdminUser = $aAdminParams['user'];
$sAdminPwd = $aAdminParams['pwd'];
$sAdminLanguage = $aAdminParams['language'];
$sLanguage = $this->oParams->Get('language');
$aSelectedModules = $this->oParams->Get('selected_modules', array());
self::AfterDBCreate($sMode, $sTargetDir, $sDBServer, $sDBUser, $sDBPwd, $sDBName, $sDBNewName, $sDBPrefix, $sAdminUser, $sAdminPwd, $sLanguage, $aSelectedModules, $sTargetEnvironment);
self::AfterDBCreate($sMode, $sTargetDir, $sDBServer, $sDBUser, $sDBPwd, $sDBName, $sDBNewName, $sDBPrefix, $sAdminUser, $sAdminPwd, $sAdminLanguage, $sLanguage, $aSelectedModules, $sTargetEnvironment);
$aResult = array(
'status' => self::OK,
@@ -199,17 +213,21 @@ class ApplicationInstaller
break;
case 'sample-data':
$oParams = new XMLParameters($this->sXMLResponseFile);
$sMode = $oParams->Get('mode');
$sTargetDir = $oParams->Get('target_dir', 'env-setup-test');
$sDBServer = $oParams->Get('db_server', '');
$sDBUser = $oParams->Get('db_user', '');
$sDBPwd = $oParams->Get('db_pwd', '');
$sDBName = $oParams->Get('db_name', '');
$sDBNewName = $oParams->Get('db_new_name', '');
$sDBPrefix = $oParams->Get('db_prefix', '');
$aFiles = $oParams->Get('files', array());
$sTargetEnvironment = $oParams->Get('target_env', '');
$sMode = $this->oParams->Get('mode');
$sTargetEnvironment = $this->oParams->Get('target_env', '');
if ($sTargetEnvironment == '')
{
$sTargetEnvironment = 'production';
}
$sTargetDir = 'env-'.$sTargetEnvironment;
$aDBParams = $this->oParams->Get('database');
$sDBServer = $aDBParams['server'];
$sDBUser = $aDBParams['user'];
$sDBPwd = $aDBParams['pwd'];
$sDBName = $aDBParams['name'];
$sDBNewName = $aDBParams['new_name'];
$sDBPrefix = $aDBParams['prefix'];
$aFiles = $this->oParams->Get('files', array());
self::DoLoadFiles($aFiles, $sTargetDir, $sDBServer, $sDBUser, $sDBPwd, $sDBName, $sDBPrefix, $sTargetEnvironment);
@@ -223,19 +241,23 @@ class ApplicationInstaller
break;
case 'create-config':
$oParams = new XMLParameters($this->sXMLResponseFile);
$sMode = $oParams->Get('mode');
$sTargetDir = $oParams->Get('target_dir', 'env-setup-test');
$sDBServer = $oParams->Get('db_server', '');
$sDBUser = $oParams->Get('db_user', '');
$sDBPwd = $oParams->Get('db_pwd', '');
$sDBName = $oParams->Get('db_name', '');
$sDBNewName = $oParams->Get('db_new_name', '');
$sDBPrefix = $oParams->Get('db_prefix', '');
$sUrl = $oParams->Get('url', '');
$sLanguage = $oParams->Get('language', '');
$aSelectedModules = $oParams->Get('selected_modules', array());
$sTargetEnvironment = $oParams->Get('target_env', '');
$sMode = $this->oParams->Get('mode');
$sTargetEnvironment = $this->oParams->Get('target_env', '');
if ($sTargetEnvironment == '')
{
$sTargetEnvironment = 'production';
}
$sTargetDir = 'env-'.$sTargetEnvironment;
$aDBParams = $this->oParams->Get('database');
$sDBServer = $aDBParams['server'];
$sDBUser = $aDBParams['user'];
$sDBPwd = $aDBParams['pwd'];
$sDBName = $aDBParams['name'];
$sDBNewName = $aDBParams['new_name'];
$sDBPrefix = $aDBParams['prefix'];
$sUrl = $this->oParams->Get('url', '');
$sLanguage = $this->oParams->Get('language', '');
$aSelectedModules = $this->oParams->Get('selected_modules', array());
self::DoCreateConfig($sMode, $sTargetDir, $sDBServer, $sDBUser, $sDBPwd, $sDBName, $sDBPrefix, $sUrl, $sLanguage, $aSelectedModules, $sTargetEnvironment);
@@ -364,7 +386,7 @@ class ApplicationInstaller
SetupPage::log_info("Database Schema Successfully Updated for environment '$sTargetEnvironment'.");
}
protected static function AfterDBCreate($sMode, $sModulesDir, $sDBServer, $sDBUser, $sDBPwd, $sDBName, $sDBNewName, $sDBPrefix, $sAdminUser, $sAdminPwd, $sLanguage, $aSelectedModules, $sTargetEnvironment = '')
protected static function AfterDBCreate($sMode, $sModulesDir, $sDBServer, $sDBUser, $sDBPwd, $sDBName, $sDBNewName, $sDBPrefix, $sAdminUser, $sAdminPwd, $sAdminLanguage, $sLanguage, $aSelectedModules, $sTargetEnvironment = '')
{
SetupPage::log_info('After Database Creation');
@@ -459,7 +481,7 @@ class ApplicationInstaller
if($sMode == 'install')
{
if (!self::CreateAdminAccount(MetaModel::GetConfig(), $sAdminUser, $sAdminPwd, $sLanguage))
if (!self::CreateAdminAccount(MetaModel::GetConfig(), $sAdminUser, $sAdminPwd, $sAdminLanguage))
{
throw(new Exception("Failed to create the administrator account '$sAdminUser'"));
}