From c4a3b5ffe400c5619f98d953005d6f7585138cea Mon Sep 17 00:00:00 2001 From: Kwadz Date: Fri, 6 Sep 2019 21:37:03 +0200 Subject: [PATCH] Add --default option to database:add (#4143) This option allows to set the database as the default one instead of adding a new database in addition to the default one. See: https://github.com/hechoendrupal/drupal-console/issues/4142 --- src/Command/Database/AddCommand.php | 6 ++++++ src/Generator/DatabaseSettingsGenerator.php | 6 +++++- templates/database/add-default.php.twig | 10 ++++++++++ 3 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 templates/database/add-default.php.twig diff --git a/src/Command/Database/AddCommand.php b/src/Command/Database/AddCommand.php index 82449351d..a0527de16 100644 --- a/src/Command/Database/AddCommand.php +++ b/src/Command/Database/AddCommand.php @@ -83,6 +83,12 @@ protected function configure() InputOption::VALUE_OPTIONAL, $this->trans('commands.database.add.options.driver') ) + ->addOption( + 'default', + null, + InputOption::VALUE_NONE, + $this->trans('commands.database.query.options.default') + ) ->setHelp($this->trans('commands.database.add.help')) ->setAliases(['dba']); } diff --git a/src/Generator/DatabaseSettingsGenerator.php b/src/Generator/DatabaseSettingsGenerator.php index 9572ac696..08ac1a036 100644 --- a/src/Generator/DatabaseSettingsGenerator.php +++ b/src/Generator/DatabaseSettingsGenerator.php @@ -26,8 +26,12 @@ public function generate(array $parameters) if (!is_writable($settingsFile)) { return false; } + $template = 'database/add.php.twig'; + if ($parameters['default']) { + $template = 'database/add-default.php.twig'; + } return $this->renderFile( - 'database/add.php.twig', + $template, $settingsFile, $parameters, FILE_APPEND diff --git a/templates/database/add-default.php.twig b/templates/database/add-default.php.twig new file mode 100644 index 000000000..175c133d4 --- /dev/null +++ b/templates/database/add-default.php.twig @@ -0,0 +1,10 @@ + +$databases['default']['default'] = [ + 'database' => '{{ database }}', + 'username' => '{{ username }}', + 'password' => '{{ password }}', + 'host' => '{{ host }}', + 'port' => '{{ port }}', + 'driver' => '{{ driver }}', + 'prefix' => '{{ prefix }}', +];