Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(849)

Unified Diff: git-cl-upload-hook

Issue 243118: Alter hooks to call into depot_tools lib.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/depot_tools/
Patch Set: '' Created 11 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | git_cl_hooks.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: git-cl-upload-hook
===================================================================
--- git-cl-upload-hook (revision 28125)
+++ git-cl-upload-hook (working copy)
@@ -4,8 +4,6 @@
# found in the LICENSE file.
import os
-import re
-import subprocess
import sys
# Find depot_tools in PATH, append it to sys.path so we can import.
@@ -16,60 +14,12 @@
sys.path.append(path)
break
-import gclient_scm
-import presubmit_support
+import git_cl_hooks
-def Backquote(cmd, cwd=None):
- """Like running `cmd` in a shell script."""
- return subprocess.Popen(cmd,
- cwd=cwd,
- stdout=subprocess.PIPE).communicate()[0].strip()
-
-
-class ChangeOptions:
- def __init__(self, commit=None, upstream_branch=None):
- self.commit = commit
- self.verbose = None
- self.default_presubmit = None
- self.may_prompt = None
-
- root = os.path.abspath(Backquote(['git', 'rev-parse', '--show-cdup']))
- if not root:
- raise Exception("Could not get root directory.")
- log = Backquote(['git', 'show', '--name-only',
- '--pretty=format:%H%n%s%n%n%b'])
- m = re.match(r'^(\w+)\n(.*)$', log, re.MULTILINE|re.DOTALL)
- if not m:
- raise Exception("Could not parse log message: %s" % log)
- name = m.group(1)
- description = m.group(2)
- files = gclient_scm.CaptureGitStatus([root], upstream_branch)
- issue = Backquote(['git', 'cl', 'status', '--field=id'])
- patchset = None
- self.change = presubmit_support.GitChange(name, description, root, files,
- issue, patchset)
-
-
# Ensure we were called with the necessary number of arguments.
program_name = os.path.basename(sys.argv[0])
-if len(sys.argv) < 2:
+if len(sys.argv) != 2:
raise Exception("usage: %s [upstream branch]" % program_name)
-# Get arguments from how we were called.
-commit = (program_name == 'pre-cl-dcommit')
-upstream_branch = sys.argv[1]
-
-# Create our options based on the command-line args and the current checkout.
-options = ChangeOptions(commit=commit, upstream_branch=upstream_branch)
-
-# Run the presubmit checks.
-if presubmit_support.DoPresubmitChecks(options.change,
- options.commit,
- options.verbose,
- sys.stdout,
- sys.stdin,
- options.default_presubmit,
- options.may_prompt):
- sys.exit(0)
-else:
- sys.exit(1)
+# Run the hooks library with our arguments.
+exec git_cl_hooks.RunHooks(hook_name=program_name, upstream_branch=sys.argv[1])
« no previous file with comments | « no previous file | git_cl_hooks.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698