mirror of
https://we.phorge.it/source/arcanist.git
synced 2024-11-26 00:32:41 +01:00
Detect repo for 'browse'; don't require project ID
Test Plan: Ran 'arc browse' in a repo that contains a .arcconfig and one without. Reviewers: epriestley, #blessed_reviewers Reviewed By: epriestley CC: Korvin, epriestley, aran Differential Revision: https://secure.phabricator.com/D8173
This commit is contained in:
parent
7c46000527
commit
c3fe03db08
2 changed files with 18 additions and 12 deletions
|
@ -1527,7 +1527,7 @@ abstract class ArcanistBaseWorkflow extends Phobject {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the PHID of the Phabricator repository this working copy corresponds
|
* Get the PHID of the Phabricator repository this working copy corresponds
|
||||||
* to. Returns `null` no repository can be identified.
|
* to. Returns `null` if no repository can be identified.
|
||||||
*
|
*
|
||||||
* @return phid|null Repository PHID, or null if no repository can be
|
* @return phid|null Repository PHID, or null if no repository can be
|
||||||
* identified.
|
* identified.
|
||||||
|
@ -1541,7 +1541,7 @@ abstract class ArcanistBaseWorkflow extends Phobject {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the callsign of the Phabricator repository this working copy
|
* Get the callsign of the Phabricator repository this working copy
|
||||||
* corresponds to. Returns `null` no repository can be identified.
|
* corresponds to. Returns `null` if no repository can be identified.
|
||||||
*
|
*
|
||||||
* @return string|null Repository callsign, or null if no repository can be
|
* @return string|null Repository callsign, or null if no repository can be
|
||||||
* identified.
|
* identified.
|
||||||
|
@ -1553,6 +1553,20 @@ abstract class ArcanistBaseWorkflow extends Phobject {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the URI of the Phabricator repository this working copy
|
||||||
|
* corresponds to. Returns `null` if no repository can be identified.
|
||||||
|
*
|
||||||
|
* @return string|null Repository URI, or null if no repository can be
|
||||||
|
* identified.
|
||||||
|
*
|
||||||
|
* @task phabrep
|
||||||
|
*/
|
||||||
|
protected function getRepositoryURI() {
|
||||||
|
return idx($this->getRepositoryInformation(), 'uri');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get human-readable reasoning explaining how `arc` evaluated which
|
* Get human-readable reasoning explaining how `arc` evaluated which
|
||||||
* Phabricator repository corresponds to this working copy. Used by
|
* Phabricator repository corresponds to this working copy. Used by
|
||||||
|
|
|
@ -108,18 +108,10 @@ EOTEXT
|
||||||
}
|
}
|
||||||
|
|
||||||
private function getBaseURI() {
|
private function getBaseURI() {
|
||||||
$conduit = $this->getConduit();
|
$repo_uri = $this->getRepositoryURI();
|
||||||
$project_id = $this->getWorkingCopy()->getProjectID();
|
|
||||||
$project_info = $this->getConduit()->callMethodSynchronous(
|
|
||||||
'arcanist.projectinfo',
|
|
||||||
array(
|
|
||||||
'name' => $project_id,
|
|
||||||
));
|
|
||||||
|
|
||||||
$repo_info = $project_info['repository'];
|
|
||||||
$branch = $this->getArgument('branch', 'master');
|
$branch = $this->getArgument('branch', 'master');
|
||||||
|
|
||||||
return $repo_info['uri'].'browse/'.$branch.'/';
|
return $repo_uri.'browse/'.$branch.'/';
|
||||||
}
|
}
|
||||||
|
|
||||||
private function getBrowserCommand() {
|
private function getBrowserCommand() {
|
||||||
|
|
Loading…
Reference in a new issue