Adaptations to potentially run the setup from the CLI

SVN:trunk[2178]
This commit is contained in:
Denis Flaven
2012-09-12 13:28:49 +00:00
parent 949a4639e2
commit 4cfeae9ca0
2 changed files with 35 additions and 26 deletions

View File

@@ -708,10 +708,12 @@ class Config
$this->Verify();
}
// Application root url: set a default value, then normalize it
$sAppRootUrl = trim($this->Get('app_root_url'));
// Application root url: set a default value, then normalize it
/*
* Does not work in CLI/unattended mode
$sAppRootUrl = trim($this->Get('app_root_url'));
if (strlen($sAppRootUrl) == 0)
{
{
$sAppRootUrl = utils::GetDefaultUrlAppRoot();
}
if (substr($sAppRootUrl, -1, 1) != '/')
@@ -719,6 +721,7 @@ class Config
$sAppRootUrl .= '/';
}
$this->Set('app_root_url', $sAppRootUrl);
*/
}
protected function CheckFile($sPurpose, $sFileName)

View File

@@ -4283,22 +4283,25 @@ abstract class MetaModel
public static function Startup($config, $bModelOnly = false, $bAllowCache = true, $bTraceSourceFiles = false)
{
define('MODULESROOT', APPROOT.'env-'.utils::GetCurrentEnvironment().'/');
self::$m_bTraceSourceFiles = $bTraceSourceFiles;
// $config can be either a filename, or a Configuration object (volatile!)
if ($config instanceof Config)
if (!defined('MODULESROOT'))
{
self::LoadConfig($config, $bAllowCache);
define('MODULESROOT', APPROOT.'env-'.utils::GetCurrentEnvironment().'/');
self::$m_bTraceSourceFiles = $bTraceSourceFiles;
// $config can be either a filename, or a Configuration object (volatile!)
if ($config instanceof Config)
{
self::LoadConfig($config, $bAllowCache);
}
else
{
self::LoadConfig(new Config($config), $bAllowCache);
}
if ($bModelOnly) return;
}
else
{
self::LoadConfig(new Config($config), $bAllowCache);
}
if ($bModelOnly) return;
CMDBSource::SelectDB(self::$m_sDBName);
foreach(get_declared_classes() as $sPHPClass)
@@ -4949,17 +4952,20 @@ abstract class MetaModel
{
$sEnvironment = MetaModel::GetEnvironmentId();
}
$aCacheUserData = apc_cache_info('user');
$sPrefix = 'itop-'.$sEnvironment.'-';
$aEntries = array();
foreach($aCacheUserData['cache_list'] as $i => $aEntry)
{
$sEntryKey = $aEntry['info'];
if (strpos($sEntryKey, $sPrefix) === 0)
$aCacheUserData = @apc_cache_info('user');
if (is_array($aCacheUserData))
{
$sPrefix = 'itop-'.$sEnvironment.'-';
foreach($aCacheUserData['cache_list'] as $i => $aEntry)
{
$sCleanKey = substr($sEntryKey, strlen($sPrefix));
$aEntries[$sCleanKey] = $aEntry;
$sEntryKey = $aEntry['info'];
if (strpos($sEntryKey, $sPrefix) === 0)
{
$sCleanKey = substr($sEntryKey, strlen($sPrefix));
$aEntries[$sCleanKey] = $aEntry;
}
}
}
return $aEntries;