Add force option to app install command

Signed-off-by: Maxopoly <max@dermax.org>
This commit is contained in:
Maxopoly 2021-03-22 23:49:13 +01:00 committed by backportbot[bot]
parent c5e0d912c5
commit 0f64b7cd0d
1 changed files with 8 additions and 1 deletions

View File

@ -50,11 +50,18 @@ class Install extends Command {
InputOption::VALUE_NONE, InputOption::VALUE_NONE,
'don\'t enable the app afterwards' 'don\'t enable the app afterwards'
) )
->addOption(
'force',
'f',
InputOption::VALUE_NONE,
'install the app regardless of the Nextcloud version requirement'
)
; ;
} }
protected function execute(InputInterface $input, OutputInterface $output): int { protected function execute(InputInterface $input, OutputInterface $output): int {
$appId = $input->getArgument('app-id'); $appId = $input->getArgument('app-id');
$forceEnable = (bool) $input->getOption('force');
if (\OC_App::getAppPath($appId)) { if (\OC_App::getAppPath($appId)) {
$output->writeln($appId . ' already installed'); $output->writeln($appId . ' already installed');
@ -65,7 +72,7 @@ class Install extends Command {
/** @var Installer $installer */ /** @var Installer $installer */
$installer = \OC::$server->query(Installer::class); $installer = \OC::$server->query(Installer::class);
$installer->downloadApp($appId); $installer->downloadApp($appId);
$result = $installer->installApp($appId); $result = $installer->installApp($appId, $forceEnable);
} catch (\Exception $e) { } catch (\Exception $e) {
$output->writeln('Error: ' . $e->getMessage()); $output->writeln('Error: ' . $e->getMessage());
return 1; return 1;