From ffe900c72d358ba0337c607f2ed76f893715f686 Mon Sep 17 00:00:00 2001 From: Marc Alexander Date: Wed, 2 Mar 2016 11:53:20 +0100 Subject: [PATCH] [ticket/14492] Define extensions to install in config not via cli argument PHPBB3-14492 --- phpBB/docs/install-config.sample.yml | 2 ++ phpBB/docs/update-config.sample.yml | 1 + phpBB/language/en/install.php | 1 - .../console/command/install/install.php | 19 ++----------------- .../install/console/command/update/update.php | 3 +++ .../phpbb/install/installer_configuration.php | 4 ++++ phpBB/phpbb/install/updater_configuration.php | 4 ++++ 7 files changed, 16 insertions(+), 18 deletions(-) diff --git a/phpBB/docs/install-config.sample.yml b/phpBB/docs/install-config.sample.yml index 47c0324599..a354e52e2f 100644 --- a/phpBB/docs/install-config.sample.yml +++ b/phpBB/docs/install-config.sample.yml @@ -34,3 +34,5 @@ installer: server_name: localhost server_port: 80 script_path: / + + extensions: ['phpbb/viglink'] diff --git a/phpBB/docs/update-config.sample.yml b/phpBB/docs/update-config.sample.yml index f3b52a8c01..caa1a9ef1e 100644 --- a/phpBB/docs/update-config.sample.yml +++ b/phpBB/docs/update-config.sample.yml @@ -1,2 +1,3 @@ updater: type: all + extensions: ['phpbb/viglink'] diff --git a/phpBB/language/en/install.php b/phpBB/language/en/install.php index 054bc0a182..45ed51f641 100644 --- a/phpBB/language/en/install.php +++ b/phpBB/language/en/install.php @@ -330,7 +330,6 @@ $lang = array_merge($lang, array( $lang = array_merge($lang, array( 'CLI_INSTALL_BOARD' => 'Install phpBB', 'CLI_UPDATE_BOARD' => 'Update phpBB', - 'CLI_INSTALL_EXTENSIONS' => 'Extensions to install. Multiple extensions can be specified using a comma separated list.', 'CLI_INSTALL_SHOW_CONFIG' => 'Show the configuration which will be used', 'CLI_INSTALL_VALIDATE_CONFIG' => 'Validate a configuration file', 'CLI_CONFIG_FILE' => 'Config file to use', diff --git a/phpBB/phpbb/install/console/command/install/install.php b/phpBB/phpbb/install/console/command/install/install.php index 3378f5fdac..52a348fe44 100644 --- a/phpBB/phpbb/install/console/command/install/install.php +++ b/phpBB/phpbb/install/console/command/install/install.php @@ -80,10 +80,6 @@ class install extends \phpbb\console\command\command 'config-file', InputArgument::REQUIRED, $this->language->lang('CLI_CONFIG_FILE')) - ->addArgument( - 'install-extensions', - InputArgument::OPTIONAL, - $this->language->lang('CLI_INSTALL_EXTENSIONS')) ->setDescription($this->language->lang('CLI_INSTALL_BOARD')) ; } @@ -151,11 +147,11 @@ class install extends \phpbb\console\command\command } $this->register_configuration($iohandler, $config); - $this->register_install_extensions($iohandler, $input); try { $this->installer->run(); + return 0; } catch (installer_exception $e) { @@ -208,18 +204,7 @@ class install extends \phpbb\console\command\command $iohandler->set_input('server_port', $config['server']['server_port']); $iohandler->set_input('script_path', $config['server']['script_path']); $iohandler->set_input('submit_server', 'submit'); - } - /** - * Register extensions to install during installation - * - * @param cli_iohandler $iohandler - * @param InputInterface $input - */ - private function register_install_extensions(cli_iohandler $iohandler, InputInterface $input) - { - $install_extensions = $input->getArgument('install-extensions'); - $install_extensions = !empty($install_extensions) ? explode(',', $install_extensions) : array(); - $iohandler->set_input('install-extensions', $install_extensions); + $iohandler->set_input('install-extensions', $config['extensions']); } } diff --git a/phpBB/phpbb/install/console/command/update/update.php b/phpBB/phpbb/install/console/command/update/update.php index 116f42f758..e827761d1c 100644 --- a/phpBB/phpbb/install/console/command/update/update.php +++ b/phpBB/phpbb/install/console/command/update/update.php @@ -151,6 +151,7 @@ class update extends \phpbb\console\command\command try { $this->installer->run(); + return 0; } catch (installer_exception $e) { @@ -175,5 +176,7 @@ class update extends \phpbb\console\command\command $iohandler->set_input('submit_update_file', 'submit'); $iohandler->set_input('submit_continue_file_update', 'submit'); + + $iohandler->set_input('update-extensions', $config['extensions']); } } diff --git a/phpBB/phpbb/install/installer_configuration.php b/phpBB/phpbb/install/installer_configuration.php index c660c99d0f..805140338c 100644 --- a/phpBB/phpbb/install/installer_configuration.php +++ b/phpBB/phpbb/install/installer_configuration.php @@ -136,6 +136,10 @@ class installer_configuration implements ConfigurationInterface ->end() ->end() ->end() + ->arrayNode('extensions') + ->prototype('scalar')->end() + ->defaultValue([]) + ->end() ->end() ; return $treeBuilder; diff --git a/phpBB/phpbb/install/updater_configuration.php b/phpBB/phpbb/install/updater_configuration.php index e992356290..5c1c29f1da 100644 --- a/phpBB/phpbb/install/updater_configuration.php +++ b/phpBB/phpbb/install/updater_configuration.php @@ -32,6 +32,10 @@ class updater_configuration implements ConfigurationInterface ->addDefaultsIfNotSet() ->children() ->enumNode('type')->values(['all','db_only'])->defaultValue('all')->end() + ->arrayNode('extensions') + ->prototype('scalar')->end() + ->defaultValue([]) + ->end() ->end() ;