Don't play with config values ...

This commit is contained in:
Thomas Müller 2015-03-11 15:47:24 +01:00
parent cba3ec2c7f
commit 96b223676d
2 changed files with 12 additions and 8 deletions

View File

@ -40,9 +40,8 @@ class Install extends Command {
protected function execute(InputInterface $input, OutputInterface $output) {
// validate the environment
$this->config->setSystemValue('supportedDatabases', ['sqlite', 'mysql', 'pgsql', 'oci']);
$setupHelper = new Setup($this->config, \OC::$server->getIniWrapper(), \OC::$server->getL10N('lib'), new \OC_Defaults());
$sysInfo = $setupHelper->getSystemInfo();
$sysInfo = $setupHelper->getSystemInfo(true);
$errors = $sysInfo['errors'];
if (count($errors) > 0) {
$this->printErrors($output, $errors);

View File

@ -68,10 +68,11 @@ class Setup {
/**
* Get the available and supported databases of this instance
*
* @throws Exception
* @param bool $allowAllDatabases
* @return array
* @throws Exception
*/
public function getSupportedDatabases() {
public function getSupportedDatabases($allowAllDatabases = false) {
$availableDatabases = array(
'sqlite' => array(
'type' => 'class',
@ -99,8 +100,12 @@ class Setup {
'name' => 'MS SQL'
)
);
$configuredDatabases = $this->config->getSystemValue('supportedDatabases',
array('sqlite', 'mysql', 'pgsql'));
if ($allowAllDatabases) {
$configuredDatabases = array_keys($availableDatabases);
} else {
$configuredDatabases = $this->config->getSystemValue('supportedDatabases',
array('sqlite', 'mysql', 'pgsql'));
}
if(!is_array($configuredDatabases)) {
throw new Exception('Supported databases are not properly configured.');
}
@ -131,8 +136,8 @@ class Setup {
* @return array of system info, including an "errors" value
* in case of errors/warnings
*/
public function getSystemInfo() {
$databases = $this->getSupportedDatabases();
public function getSystemInfo($allowAllDatabases = false) {
$databases = $this->getSupportedDatabases($allowAllDatabases);
$dataDir = $this->config->getSystemValue('datadirectory', \OC::$SERVERROOT.'/data');