diff options
| -rw-r--r-- | breezy/git/remote.py | 4 | ||||
| -rw-r--r-- | breezy/plugins/propose/github.py | 4 | 
2 files changed, 5 insertions, 3 deletions
| diff --git a/breezy/git/remote.py b/breezy/git/remote.py index e62705ee5c..3fc03fe0ee 100644 --- a/breezy/git/remote.py +++ b/breezy/git/remote.py @@ -203,8 +203,8 @@ def parse_git_error(url, message):  base_url, _ = urlutils.split_segment_parameters(url)  return HeadUpdateFailed(base_url)  if message.startswith('access denied or repository not exported:'): - extra, path = message.split(': ', 1) - return PermissionDenied(path, extra) + extra, path = message.split(':', 1) + return PermissionDenied(path.strip(), extra)  if message.endswith('You are not allowed to push code to this project.'):  return PermissionDenied(url, message)  if message.endswith(' does not appear to be a git repository'): diff --git a/breezy/plugins/propose/github.py b/breezy/plugins/propose/github.py index 68545ab0af..3197d0e42a 100644 --- a/breezy/plugins/propose/github.py +++ b/breezy/plugins/propose/github.py @@ -43,7 +43,7 @@ from ... import (  version_string as breezy_version,  )  from ...config import AuthenticationConfig, GlobalStack -from ...errors import InvalidHttpResponse +from ...errors import InvalidHttpResponse, PermissionDenied  from ...git.urls import git_url_to_bzr_url  from ...i18n import gettext  from ...sixish import PY3 @@ -278,6 +278,8 @@ class GitHub(Hoster):  response = self._api_request(  'POST', path, body=json.dumps(data).encode('utf-8')) + if response.status == 403: + raise PermissionDenied(path, response.text)  if response.status != 201:  raise InvalidHttpResponse(path, 'req is invalid %d %r: %r' % (response.status, data, response.text))  return json.loads(response.text) | 
