mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-10 08:52:39 +01:00
Raise a better error for SSH access by users with no permission to use Diffusion
Summary: Fixes T7894. Test Plan: ``` $ git pull phabricator-ssh-exec: You do not have permission to access the Diffusion application, so you can not interact with repositories over SSH. fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. ``` Reviewers: btrahan, chad Reviewed By: chad Subscribers: epriestley Maniphest Tasks: T7894 Differential Revision: https://secure.phabricator.com/D12555
This commit is contained in:
parent
1c2041583c
commit
0ae08b394c
1 changed files with 12 additions and 1 deletions
|
@ -112,12 +112,23 @@ abstract class DiffusionSSHWorkflow extends PhabricatorSSHWorkflow {
|
||||||
final public function execute(PhutilArgumentParser $args) {
|
final public function execute(PhutilArgumentParser $args) {
|
||||||
$this->args = $args;
|
$this->args = $args;
|
||||||
|
|
||||||
|
$viewer = $this->getUser();
|
||||||
|
$have_diffusion = PhabricatorApplication::isClassInstalledForViewer(
|
||||||
|
'PhabricatorDiffusionApplication',
|
||||||
|
$viewer);
|
||||||
|
if (!$have_diffusion) {
|
||||||
|
throw new Exception(
|
||||||
|
pht(
|
||||||
|
'You do not have permission to access the Diffusion application, '.
|
||||||
|
'so you can not interact with repositories over SSH.'));
|
||||||
|
}
|
||||||
|
|
||||||
$repository = $this->identifyRepository();
|
$repository = $this->identifyRepository();
|
||||||
$this->setRepository($repository);
|
$this->setRepository($repository);
|
||||||
|
|
||||||
$is_cluster_request = $this->getIsClusterRequest();
|
$is_cluster_request = $this->getIsClusterRequest();
|
||||||
$uri = $repository->getAlmanacServiceURI(
|
$uri = $repository->getAlmanacServiceURI(
|
||||||
$this->getUser(),
|
$viewer,
|
||||||
$is_cluster_request,
|
$is_cluster_request,
|
||||||
array(
|
array(
|
||||||
'ssh',
|
'ssh',
|
||||||
|
|
Loading…
Reference in a new issue