Skip to content

Commit 40148b3

Browse files
mazhalaieddielau
authored andcommitted
MAGETWO-31850: [GITHUB] install.log can not be created with open_basedir restriction #796
- CR changes
1 parent 999d538 commit 40148b3

File tree

2 files changed

+15
-4
lines changed

2 files changed

+15
-4
lines changed

setup/module/Magento/Setup/src/Controller/DatabaseCheck.php

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
namespace Magento\Setup\Controller;
66

77
use Magento\Setup\Model\InstallerFactory;
8+
use Magento\Setup\Model\WebLogger;
89
use Zend\Json\Json;
910
use Zend\Mvc\Controller\AbstractActionController;
1011
use Zend\View\Model\JsonModel;
@@ -18,14 +19,23 @@ class DatabaseCheck extends AbstractActionController
1819
*/
1920
private $installerFactory;
2021

22+
/**
23+
* WebLogger to access log
24+
*
25+
* @var WebLogger
26+
*/
27+
private $webLogger;
28+
2129
/**
2230
* Constructor
2331
*
2432
* @param InstallerFactory $installerFactory
33+
* @param WebLogger $webLogger
2534
*/
26-
public function __construct(InstallerFactory $installerFactory)
35+
public function __construct(InstallerFactory $installerFactory, WebLogger $webLogger)
2736
{
2837
$this->installerFactory = $installerFactory;
38+
$this->webLogger = $webLogger;
2939
}
3040

3141
/**
@@ -37,7 +47,7 @@ public function indexAction()
3747
{
3848
$params = Json::decode($this->getRequest()->getContent(), Json::TYPE_ARRAY);
3949
try {
40-
$installer = $this->installerFactory->create();
50+
$installer = $this->installerFactory->create($this->webLogger);
4151
$password = isset($params['password']) ? $params['password'] : '';
4252
$installer->checkDatabaseConnection($params['name'], $params['host'], $params['user'], $password);
4353
return new JsonModel(['success' => true]);

setup/module/Magento/Setup/src/Model/InstallerFactory.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,10 @@ public function __construct(ServiceLocatorInterface $serviceLocator)
2929
/**
3030
* Factory method for installer object
3131
*
32+
* @param LoggerInterface $log
3233
* @return Installer
3334
*/
34-
public function create()
35+
public function create(LoggerInterface $log)
3536
{
3637
return new Installer(
3738
$this->serviceLocator->get('Magento\Setup\Model\FilePermissions'),
@@ -42,7 +43,7 @@ public function create()
4243
$this->serviceLocator->get('Magento\Framework\Module\ModuleList\Loader'),
4344
$this->serviceLocator->get('Magento\Framework\App\Filesystem\DirectoryList'),
4445
$this->serviceLocator->get('Magento\Setup\Model\AdminAccountFactory'),
45-
new WebLogger($this->serviceLocator->get('Magento\Framework\Filesystem')),
46+
$log,
4647
$this->serviceLocator->get('Magento\Framework\Math\Random'),
4748
$this->serviceLocator->get('Magento\Setup\Module\ConnectionFactory'),
4849
$this->serviceLocator->get('Magento\Framework\App\MaintenanceMode'),

0 commit comments

Comments
 (0)