Improve visibility of repository credential errors
Summary:
Fixes T7310. We have a whole mechanism for surfacing update errors, but only surface actual update errors, not pull errors.
Instead, surface pull errors too.
Then format them a little more nicely.
Test Plan: {F309769}
Reviewers: btrahan
Reviewed By: btrahan
Subscribers: epriestley
Maniphest Tasks: T7310
Differential Revision: https://secure.phabricator.com/D11821
This commit is contained in:
@@ -963,11 +963,34 @@ final class DiffusionRepositoryEditMainController
|
||||
if ($message) {
|
||||
switch ($message->getStatusCode()) {
|
||||
case PhabricatorRepositoryStatusMessage::CODE_ERROR:
|
||||
$message = $message->getParameter('message');
|
||||
|
||||
$suggestion = null;
|
||||
if (preg_match('/Permission denied \(publickey\)./', $message)) {
|
||||
$suggestion = pht(
|
||||
'Public Key Error: This error usually indicates that the '.
|
||||
'keypair you have configured does not have permission to '.
|
||||
'access the repository.');
|
||||
}
|
||||
|
||||
$message = phutil_escape_html_newlines($message);
|
||||
|
||||
if ($suggestion !== null) {
|
||||
$message = array(
|
||||
phutil_tag('strong', array(), $suggestion),
|
||||
phutil_tag('br'),
|
||||
phutil_tag('br'),
|
||||
phutil_tag('em', array(), pht('Raw Error')),
|
||||
phutil_tag('br'),
|
||||
$message,
|
||||
);
|
||||
}
|
||||
|
||||
$view->addItem(
|
||||
id(new PHUIStatusItemView())
|
||||
->setIcon(PHUIStatusItemView::ICON_WARNING, 'red')
|
||||
->setTarget(pht('Update Error'))
|
||||
->setNote($message->getParameter('message')));
|
||||
->setNote($message));
|
||||
return $view;
|
||||
case PhabricatorRepositoryStatusMessage::CODE_OKAY:
|
||||
$ago = (PhabricatorTime::getNow() - $message->getEpoch());
|
||||
|
||||
Reference in New Issue
Block a user