upload: Allow review.HOST.username to override email
Some users might need to use a different login name than the local
part of their email address for their Gerrit Code Review user
account. Allow it to be overridden with the review.HOST.username
configuration variable.
Change-Id: I714469142ac7feadf09fee9c26680c0e09076b75
Signed-off-by: Shawn O. Pearce <sop@google.com>
diff --git a/git_config.py b/git_config.py
index dc209ba..1382d5d 100644
--- a/git_config.py
+++ b/git_config.py
@@ -531,8 +531,11 @@
def SshReviewUrl(self, userEmail):
if self.ReviewProtocol != 'ssh':
return None
+ username = self._config.GetString('review.%s.username' % self.review)
+ if username is None:
+ username = userEmail.split("@")[0]
return 'ssh://%s@%s:%s/%s' % (
- userEmail.split("@")[0],
+ username,
self._review_host,
self._review_port,
self.projectname)
diff --git a/subcmds/upload.py b/subcmds/upload.py
index 569e31c..b47b37b 100644
--- a/subcmds/upload.py
+++ b/subcmds/upload.py
@@ -92,6 +92,11 @@
who you always want copied on all uploads with a non-empty --re
argument.
+review.URL.username:
+
+Override the username used to connect to Gerrit Code Review.
+By default the local part of the email address is used.
+
The URL must match the review URL listed in the manifest XML file,
or in the .git/config within the project. For example: