mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-17 23:13:15 +00:00
Merge pull request #2500 from aynsix/PHRAS-1832-port-1776-to-master
PHRAS-1832 port 1776 to master - databox create
This commit is contained in:
@@ -13,6 +13,8 @@ namespace Alchemy\Phrasea\Command\Developer;
|
||||
use Alchemy\Phrasea\Command\Command;
|
||||
use Alchemy\Phrasea\Core\Version;
|
||||
use Alchemy\Phrasea\Exception\RuntimeException;
|
||||
use Alchemy\Phrasea\Utilities\StringHelper;
|
||||
use Doctrine\DBAL\Connection;
|
||||
use Symfony\Component\Console\Input\ArrayInput;
|
||||
use Symfony\Component\Console\Input\InputInterface;
|
||||
use Symfony\Component\Console\Output\OutputInterface;
|
||||
@@ -112,11 +114,15 @@ class IniReset extends Command
|
||||
// get data paths
|
||||
$dataPath = $this->container['conf']->get(['main', 'storage', 'subdefs'], $this->container['root.path'].'/datas');
|
||||
|
||||
$schema = $this->container['orm.em']->getConnection()->getSchemaManager();
|
||||
/** @var Connection $connection */
|
||||
$connection = $this->container['orm.em']->getConnection();
|
||||
$schema = $connection->getSchemaManager();
|
||||
|
||||
$output->writeln('Creating database "'.$dbs['ab'].'"...<info>OK</info>');
|
||||
$schema->dropAndCreateDatabase($dbs['ab']);
|
||||
$schema->dropAndCreateDatabase(StringHelper::SqlQuote($dbs['ab'], StringHelper::SQL_IDENTIFIER));
|
||||
|
||||
$output->writeln('Creating database "'.$dbName.'"...<info>OK</info>');
|
||||
$schema->dropAndCreateDatabase($dbName);
|
||||
$schema->dropAndCreateDatabase(StringHelper::SqlQuote($dbName, StringHelper::SQL_IDENTIFIER));
|
||||
|
||||
// inject v3.1 fixtures
|
||||
if ($input->getOption('run-patches')) {
|
||||
@@ -212,7 +218,7 @@ class IniReset extends Command
|
||||
} else {
|
||||
$output->write(sprintf('Upgrading... from version <info>%s</info> to <info>%s</info>', $this->app->getApplicationBox()->get_version(), $version->getNumber()), true);
|
||||
}
|
||||
|
||||
|
||||
$cmd = 'php ' . __DIR__ . '/../../../../../bin/setup system:upgrade -y -f -v';
|
||||
$process = new Process($cmd);
|
||||
$process->setTimeout(600);
|
||||
|
@@ -13,6 +13,8 @@ namespace Alchemy\Phrasea\Command\Developer;
|
||||
|
||||
use Alchemy\Phrasea\Command\Command;
|
||||
use Alchemy\Phrasea\Exception\RuntimeException;
|
||||
use Alchemy\Phrasea\Utilities\StringHelper;
|
||||
use Doctrine\DBAL\Connection;
|
||||
use Symfony\Component\Console\Input\ArrayInput;
|
||||
use Symfony\Component\Console\Input\InputInterface;
|
||||
use Symfony\Component\Console\Output\OutputInterface;
|
||||
@@ -44,20 +46,30 @@ class SetupTestsDbs extends Command
|
||||
$dbs[] = $settings['database']['ab_name'];
|
||||
$dbs[] = $settings['database']['db_name'];
|
||||
|
||||
$schema = $this->container['orm.em']->getConnection()->getSchemaManager();
|
||||
/** @var Connection $connection */
|
||||
$connection = $this->container['orm.em']->getConnection();
|
||||
$schema = $connection->getSchemaManager();
|
||||
|
||||
foreach($dbs as $name) {
|
||||
$output->writeln('Creating database "'.$name.'"...<info>OK</info>');
|
||||
$name = StringHelper::SqlQuote($name, StringHelper::SQL_IDENTIFIER); // quote as `identifier`
|
||||
$schema->dropAndCreateDatabase($name);
|
||||
}
|
||||
|
||||
$this->container['orm.em']->getConnection()->executeUpdate('
|
||||
GRANT ALL PRIVILEGES ON '.$settings['database']['ab_name'].'.* TO \''.$settings['database']['user'].'\'@\''.$settings['database']['host'].'\' IDENTIFIED BY \''.$settings['database']['password'].'\' WITH GRANT OPTION
|
||||
');
|
||||
$user = StringHelper::SqlQuote($settings['database']['user'], StringHelper::SQL_VALUE); // quote as 'value'
|
||||
$host = StringHelper::SqlQuote($settings['database']['host'], StringHelper::SQL_VALUE);
|
||||
$pass = StringHelper::SqlQuote($settings['database']['password'], StringHelper::SQL_VALUE);
|
||||
|
||||
$this->container['orm.em']->getConnection()->executeUpdate('
|
||||
GRANT ALL PRIVILEGES ON '.$settings['database']['db_name'].'.* TO \''.$settings['database']['user'].'\'@\''.$settings['database']['host'].'\' IDENTIFIED BY \''.$settings['database']['password'].'\' WITH GRANT OPTION
|
||||
');
|
||||
$ab_name = StringHelper::SqlQuote($settings['database']['ab_name'], StringHelper::SQL_IDENTIFIER);
|
||||
$db_name = StringHelper::SqlQuote($settings['database']['db_name'], StringHelper::SQL_IDENTIFIER);
|
||||
|
||||
$this->container['orm.em']->getConnection()->executeUpdate(
|
||||
'GRANT ALL PRIVILEGES ON '.$ab_name.'.* TO '.$user.'@'.$host.' IDENTIFIED BY '.$pass.' WITH GRANT OPTION'
|
||||
);
|
||||
|
||||
$this->container['orm.em']->getConnection()->executeUpdate(
|
||||
'GRANT ALL PRIVILEGES ON '.$db_name.'.* TO '.$user.'@'.$host.' IDENTIFIED BY '.$pass.' WITH GRANT OPTION'
|
||||
);
|
||||
|
||||
$this->container['orm.em']->getConnection()->executeUpdate('SET @@global.sql_mode= ""');
|
||||
|
||||
|
Reference in New Issue
Block a user