From 9904e7b72a656f693c26c56a942c151d1ca5aaf7 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Mon, 20 Feb 2023 14:33:06 +0100 Subject: [PATCH] Fail the repair command when an error happened Signed-off-by: Joas Schilling --- core/Command/Maintenance/Repair.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/Command/Maintenance/Repair.php b/core/Command/Maintenance/Repair.php index 01e62f2cd32..a1d97476f94 100644 --- a/core/Command/Maintenance/Repair.php +++ b/core/Command/Maintenance/Repair.php @@ -53,6 +53,7 @@ class Repair extends Command { private ProgressBar $progress; private OutputInterface $output; private IAppManager $appManager; + protected bool $errored = false; public function __construct(\OC\Repair $repair, IConfig $config, IEventDispatcher $dispatcher, IAppManager $appManager) { $this->repair = $repair; @@ -104,6 +105,8 @@ class Repair extends Command { } } + + $maintenanceMode = $this->config->getSystemValueBool('maintenance'); $this->config->setSystemValue('maintenance', true); @@ -120,7 +123,7 @@ class Repair extends Command { $this->repair->run(); $this->config->setSystemValue('maintenance', $maintenanceMode); - return 0; + return $this->errored ? 1 : 0; } public function handleRepairFeedBack(Event $event): void { @@ -139,6 +142,7 @@ class Repair extends Command { $this->output->writeln(' - WARNING: ' . $event->getMessage() . ''); } elseif ($event instanceof RepairErrorEvent) { $this->output->writeln(' - ERROR: ' . $event->getMessage() . ''); + $this->errored = true; } } }