mirror of
https://github.com/facebook/sapling.git
synced 2024-10-06 23:07:18 +03:00
sshpeer: add a configurable hint for the ssh error message
Adding a possibility to configure error hint to be shown in the case of problems with SSH. Example of such hint can be "Please see http://company/internalwiki/ssh.html". Test Plan: - Ran hg pull with broken link and verified the output has no hint by default: ``` pulling from ssh://brokenrepository.com//repo remote: ssh: Could not resolve hostname brokenrepository.com: Name or service not known abort: no suitable response from remote hg! ``` - Run hg pull --config ui.ssherrorhint="Please see http://company/internalwiki/ssh.html": ``` pulling from ssh://brokenrepository.com//repo remote: ssh: Could not resolve hostname brokenrepository.com: Name or service not known abort: no suitable response from remote hg! (Please see http://company/internalwiki/ssh.html) ``` Differential Revision: https://phab.mercurial-scm.org/D1431
This commit is contained in:
parent
f0bc85352f
commit
344962042e
@ -964,6 +964,9 @@ coreconfigitem('ui', 'slash',
|
||||
coreconfigitem('ui', 'ssh',
|
||||
default='ssh',
|
||||
)
|
||||
coreconfigitem('ui', 'ssherrorhint',
|
||||
default=None,
|
||||
)
|
||||
coreconfigitem('ui', 'statuscopies',
|
||||
default=False,
|
||||
)
|
||||
|
@ -2188,6 +2188,10 @@ User interface controls.
|
||||
``ssh``
|
||||
Command to use for SSH connections. (default: ``ssh``)
|
||||
|
||||
``ssherrorhint``
|
||||
A hint shown to the user in the case of SSH error (e.g.
|
||||
``Please see http://company/internalwiki/ssh.html``)
|
||||
|
||||
``strict``
|
||||
Require exact command names, instead of allowing unambiguous
|
||||
abbreviations. (default: False)
|
||||
|
@ -204,8 +204,9 @@ class sshpeer(wireproto.wirepeer):
|
||||
self._pipeo = doublepipe(self.ui, self._pipeo, self._pipee)
|
||||
|
||||
def badresponse():
|
||||
self._abort(error.RepoError(_('no suitable response from '
|
||||
'remote hg')))
|
||||
msg = _("no suitable response from remote hg")
|
||||
hint = self.ui.config("ui", "ssherrorhint")
|
||||
self._abort(error.RepoError(msg, hint=hint))
|
||||
|
||||
try:
|
||||
# skip any noise generated by remote shell
|
||||
|
@ -578,3 +578,20 @@ abort during pull is properly reported as such
|
||||
remote: abort: this is an exercise
|
||||
abort: pull failed on remote
|
||||
[255]
|
||||
|
||||
abort with no error hint when there is a ssh problem when pulling
|
||||
|
||||
$ hg pull ssh://brokenrepository
|
||||
pulling from ssh://brokenrepository/
|
||||
remote: ssh: Could not resolve hostname brokenrepository: Name or service not known
|
||||
abort: no suitable response from remote hg!
|
||||
[255]
|
||||
|
||||
abort with configured error hint when there is a ssh problem when pulling
|
||||
|
||||
$ hg pull ssh://brokenrepository --config ui.ssherrorhint="Please see http://company/internalwiki/ssh.html"
|
||||
pulling from ssh://brokenrepository/
|
||||
remote: ssh: Could not resolve hostname brokenrepository: Name or service not known
|
||||
abort: no suitable response from remote hg!
|
||||
(Please see http://company/internalwiki/ssh.html)
|
||||
[255]
|
||||
|
Loading…
Reference in New Issue
Block a user