diff options
-rw-r--r-- | core/command/upgrade.php | 14 | ||||
-rw-r--r-- | core/register_command.php | 2 | ||||
-rw-r--r-- | lib/private/templatelayout.php | 2 | ||||
-rw-r--r-- | lib/private/updater.php | 20 | ||||
-rw-r--r-- | tests/lib/updater.php | 2 |
5 files changed, 23 insertions, 17 deletions
diff --git a/core/command/upgrade.php b/core/command/upgrade.php index 0f1b828ba25..5d4819f6baf 100644 --- a/core/command/upgrade.php +++ b/core/command/upgrade.php @@ -30,6 +30,7 @@ namespace OC\Core\Command; use OC\Console\TimestampFormatter; use OC\Updater; use OCP\IConfig; +use OCP\ILogger; use Symfony\Component\Console\Command\Command; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Output\OutputInterface; @@ -44,17 +45,19 @@ class Upgrade extends Command { const ERROR_INVALID_ARGUMENTS = 4; const ERROR_FAILURE = 5; - /** - * @var IConfig - */ + /** @var IConfig */ private $config; + /** @var ILogger */ + private $logger; + /** * @param IConfig $config */ - public function __construct(IConfig $config) { + public function __construct(IConfig $config, ILogger $logger) { parent::__construct(); $this->config = $config; + $this->logger = $logger; } protected function configure() { @@ -126,7 +129,8 @@ class Upgrade extends Command { $self = $this; $updater = new Updater(\OC::$server->getHTTPHelper(), - $this->config); + $this->config, + $this->logger); $updater->setSimulateStepEnabled($simulateStepEnabled); $updater->setUpdateStepEnabled($updateStepEnabled); diff --git a/core/register_command.php b/core/register_command.php index 460e8626e5e..4044d2d200c 100644 --- a/core/register_command.php +++ b/core/register_command.php @@ -94,7 +94,7 @@ if (\OC::$server->getConfig()->getSystemValue('installed', false)) { $application->add(new OC\Core\Command\Maintenance\Repair(new \OC\Repair(\OC\Repair::getRepairSteps()), \OC::$server->getConfig())); $application->add(new OC\Core\Command\Maintenance\SingleUser(\OC::$server->getConfig())); - $application->add(new OC\Core\Command\Upgrade(\OC::$server->getConfig())); + $application->add(new OC\Core\Command\Upgrade(\OC::$server->getConfig(), \OC::$server->getLogger())); $application->add(new OC\Core\Command\User\Add(\OC::$server->getUserManager(), \OC::$server->getGroupManager())); $application->add(new OC\Core\Command\User\Delete(\OC::$server->getUserManager())); diff --git a/lib/private/templatelayout.php b/lib/private/templatelayout.php index 43c83dea815..7d16823d2a8 100644 --- a/lib/private/templatelayout.php +++ b/lib/private/templatelayout.php @@ -79,7 +79,7 @@ class OC_TemplateLayout extends OC_Template { if($this->config->getSystemValue('updatechecker', true) === true && OC_User::isAdminUser(OC_User::getUser())) { $updater = new \OC\Updater(\OC::$server->getHTTPHelper(), - \OC::$server->getConfig()); + \OC::$server->getConfig(), \OC::$server->getLogger()); $data = $updater->check(); if(isset($data['version']) && $data['version'] != '' and $data['version'] !== Array()) { diff --git a/lib/private/updater.php b/lib/private/updater.php index 8aa8b0703d7..70d68863788 100644 --- a/lib/private/updater.php +++ b/lib/private/updater.php @@ -32,7 +32,6 @@ namespace OC; -use OC\Core\Command\Log\Manage; use OC\Hooks\BasicEmitter; use OC_App; use OC_Installer; @@ -199,15 +198,13 @@ class Updater extends BasicEmitter { $installedVersion = $this->config->getSystemValue('version', '0.0.0'); $currentVersion = implode('.', \OC_Util::getVersion()); - if ($this->log) { - $this->log->debug('starting upgrade from ' . $installedVersion . ' to ' . $currentVersion, array('app' => 'core')); - } + $this->log->debug('starting upgrade from ' . $installedVersion . ' to ' . $currentVersion, array('app' => 'core')); $success = true; try { $this->doUpgrade($currentVersion, $installedVersion); } catch (\Exception $exception) { - \OCP\Util::logException('update', $exception); + $this->log->logException($exception, ['app' => 'core']); $this->emit('\OC\Updater', 'failure', array(get_class($exception) . ': ' .$exception->getMessage())); $success = false; } @@ -235,6 +232,7 @@ class Updater extends BasicEmitter { private function getAllowedPreviousVersion() { // this should really be a JSON file require \OC::$SERVERROOT . '/version.php'; + /** @var array $OC_VersionCanBeUpgradedFrom */ return implode('.', $OC_VersionCanBeUpgradedFrom); } @@ -497,11 +495,15 @@ class Updater extends BasicEmitter { */ private function upgradeAppStoreApps(array $disabledApps) { foreach($disabledApps as $app) { - if (OC_Installer::isUpdateAvailable($app)) { - $ocsId = \OC::$server->getConfig()->getAppValue($app, 'ocsid', ''); + try { + if (OC_Installer::isUpdateAvailable($app)) { + $ocsId = \OC::$server->getConfig()->getAppValue($app, 'ocsid', ''); - $this->emit('\OC\Updater', 'upgradeAppStoreApp', array($app)); - OC_Installer::updateAppByOCSId($ocsId); + $this->emit('\OC\Updater', 'upgradeAppStoreApp', array($app)); + OC_Installer::updateAppByOCSId($ocsId); + } + } catch (\Exception $ex) { + $this->log->logException($ex, ['app' => 'core']); } } } diff --git a/tests/lib/updater.php b/tests/lib/updater.php index 763858acf5d..1651fe1759d 100644 --- a/tests/lib/updater.php +++ b/tests/lib/updater.php @@ -161,7 +161,7 @@ class UpdaterTest extends \Test\TestCase { * @param bool $result */ public function testIsUpgradePossible($oldVersion, $newVersion, $allowedVersion, $result) { - $updater = new Updater($this->httpHelper, $this->config); + $updater = new Updater($this->httpHelper, $this->config, $this->logger); $this->assertSame($result, $updater->isUpgradePossible($oldVersion, $newVersion, $allowedVersion)); } |