Upload project option in 'gcl' and 'git cl' uploading commands.



BUG=374398

Review URL: https://codereview.chromium.org/298703003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@276491 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/git_cl.py b/git_cl.py
index fe9fec7..c8c8330 100755
--- a/git_cl.py
+++ b/git_cl.py
@@ -281,6 +281,7 @@
     self.updated = False
     self.is_gerrit = None
     self.git_editor = None
+    self.project = None
 
   def LazyUpdateIfNeeded(self):
     """Updates the settings from a codereview.settings file, if available."""
@@ -442,6 +443,11 @@
     return (self._GetRietveldConfig('cpplint-ignore-regex', error_ok=True) or
             DEFAULT_LINT_IGNORE_REGEX)
 
+  def GetProject(self):
+    if not self.project:
+      self.project = self._GetRietveldConfig('project', error_ok=True)
+    return self.project
+
   def _GetRietveldConfig(self, param, **kwargs):
     return self._GetConfig('rietveld.' + param, **kwargs)
 
@@ -1067,6 +1073,7 @@
   SetProperty('bug-prefix', 'BUG_PREFIX', unset_error_ok=True)
   SetProperty('cpplint-regex', 'LINT_REGEX', unset_error_ok=True)
   SetProperty('cpplint-ignore-regex', 'LINT_IGNORE_REGEX', unset_error_ok=True)
+  SetProperty('project', 'PROJECT', unset_error_ok=True)
 
   if 'GERRIT_HOST' in keyvals:
     RunGit(['config', 'gerrit.host', keyvals['GERRIT_HOST']])
@@ -1619,6 +1626,10 @@
   if remote_url:
     upload_args.extend(['--base_url', remote_url])
 
+  project = settings.GetProject()
+  if project:
+    upload_args.extend(['--project', project])
+
   try:
     upload_args = ['upload'] + upload_args + args
     logging.info('upload.RealMain(%s)', upload_args)