Page MenuHomePhabricator

D12253.diff
No OneTemporary

D12253.diff

diff --git a/src/applications/repository/management/PhabricatorRepositoryManagementUpdateWorkflow.php b/src/applications/repository/management/PhabricatorRepositoryManagementUpdateWorkflow.php
--- a/src/applications/repository/management/PhabricatorRepositoryManagementUpdateWorkflow.php
+++ b/src/applications/repository/management/PhabricatorRepositoryManagementUpdateWorkflow.php
@@ -58,38 +58,42 @@
$lock = PhabricatorGlobalLock::newLock($lock_name);
$lock->lock();
+ try {
+ $no_discovery = $args->getArg('no-discovery');
- $no_discovery = $args->getArg('no-discovery');
+ id(new PhabricatorRepositoryPullEngine())
+ ->setRepository($repository)
+ ->setVerbose($this->getVerbose())
+ ->pullRepository();
- id(new PhabricatorRepositoryPullEngine())
- ->setRepository($repository)
- ->setVerbose($this->getVerbose())
- ->pullRepository();
+ if ($no_discovery) {
+ $lock->unlock();
+ return;
+ }
- if ($no_discovery) {
- $lock->unlock();
- return;
- }
+ // TODO: It would be nice to discover only if we pulled something, but
+ // this isn't totally trivial. It's slightly more complicated with
+ // hosted repositories, too.
- // TODO: It would be nice to discover only if we pulled something, but
- // this isn't totally trivial. It's slightly more complicated with hosted
- // repositories, too.
-
- $repository->writeStatusMessage(
- PhabricatorRepositoryStatusMessage::TYPE_NEEDS_UPDATE,
- null);
+ $repository->writeStatusMessage(
+ PhabricatorRepositoryStatusMessage::TYPE_NEEDS_UPDATE,
+ null);
- $this->discoverRepository($repository);
+ $this->discoverRepository($repository);
- $this->checkIfRepositoryIsFullyImported($repository);
+ $this->checkIfRepositoryIsFullyImported($repository);
- $this->updateRepositoryRefs($repository);
+ $this->updateRepositoryRefs($repository);
- $this->mirrorRepository($repository);
+ $this->mirrorRepository($repository);
- $repository->writeStatusMessage(
- PhabricatorRepositoryStatusMessage::TYPE_FETCH,
- PhabricatorRepositoryStatusMessage::CODE_OKAY);
+ $repository->writeStatusMessage(
+ PhabricatorRepositoryStatusMessage::TYPE_FETCH,
+ PhabricatorRepositoryStatusMessage::CODE_OKAY);
+ } catch (Exception $ex) {
+ $lock->unlock();
+ throw $ex;
+ }
} catch (Exception $ex) {
$repository->writeStatusMessage(
PhabricatorRepositoryStatusMessage::TYPE_FETCH,
@@ -98,8 +102,6 @@
'message' => pht(
'Error updating working copy: %s', $ex->getMessage()),
));
-
- $lock->unlock();
throw $ex;
}

File Metadata

Mime Type
text/plain
Expires
Fri, May 10, 11:30 PM (3 w, 6 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
6284369
Default Alt Text
D12253.diff (2 KB)

Event Timeline