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

Unified Diff: tools/push-to-trunk/git_recipes.py

Issue 540973002: Add cwd to all shell commands in auto roll scripts. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 3 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 | « tools/push-to-trunk/common_includes.py ('k') | tools/push-to-trunk/push_to_trunk.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/push-to-trunk/git_recipes.py
diff --git a/tools/push-to-trunk/git_recipes.py b/tools/push-to-trunk/git_recipes.py
index 4ea3b825e36171610c19104a4b0845ac9f375d14..0f8fcef26d05fc08611974059a095a7d9c6a306c 100644
--- a/tools/push-to-trunk/git_recipes.py
+++ b/tools/push-to-trunk/git_recipes.py
@@ -94,54 +94,55 @@ def Quoted(s):
class GitRecipesMixin(object):
- def GitIsWorkdirClean(self):
- return self.Git("status -s -uno").strip() == ""
+ def GitIsWorkdirClean(self, **kwargs):
+ return self.Git("status -s -uno", **kwargs).strip() == ""
@Strip
- def GitBranch(self):
- return self.Git("branch")
+ def GitBranch(self, **kwargs):
+ return self.Git("branch", **kwargs)
- def GitCreateBranch(self, name, branch=""):
+ def GitCreateBranch(self, name, branch="", **kwargs):
assert name
- self.Git(MakeArgs(["checkout -b", name, branch]))
+ self.Git(MakeArgs(["checkout -b", name, branch]), **kwargs)
- def GitDeleteBranch(self, name):
+ def GitDeleteBranch(self, name, **kwargs):
assert name
- self.Git(MakeArgs(["branch -D", name]))
+ self.Git(MakeArgs(["branch -D", name]), **kwargs)
- def GitReset(self, name):
+ def GitReset(self, name, **kwargs):
assert name
- self.Git(MakeArgs(["reset --hard", name]))
+ self.Git(MakeArgs(["reset --hard", name]), **kwargs)
- def GitStash(self):
- self.Git(MakeArgs(["stash"]))
+ def GitStash(self, **kwargs):
+ self.Git(MakeArgs(["stash"]), **kwargs)
- def GitRemotes(self):
- return map(str.strip, self.Git(MakeArgs(["branch -r"])).splitlines())
+ def GitRemotes(self, **kwargs):
+ return map(str.strip,
+ self.Git(MakeArgs(["branch -r"]), **kwargs).splitlines())
- def GitCheckout(self, name):
+ def GitCheckout(self, name, **kwargs):
assert name
- self.Git(MakeArgs(["checkout -f", name]))
+ self.Git(MakeArgs(["checkout -f", name]), **kwargs)
- def GitCheckoutFile(self, name, branch_or_hash):
+ def GitCheckoutFile(self, name, branch_or_hash, **kwargs):
assert name
assert branch_or_hash
- self.Git(MakeArgs(["checkout -f", branch_or_hash, "--", name]))
+ self.Git(MakeArgs(["checkout -f", branch_or_hash, "--", name]), **kwargs)
- def GitCheckoutFileSafe(self, name, branch_or_hash):
+ def GitCheckoutFileSafe(self, name, branch_or_hash, **kwargs):
try:
- self.GitCheckoutFile(name, branch_or_hash)
+ self.GitCheckoutFile(name, branch_or_hash, **kwargs)
except GitFailedException: # pragma: no cover
# The file doesn't exist in that revision.
return False
return True
- def GitChangedFiles(self, git_hash):
+ def GitChangedFiles(self, git_hash, **kwargs):
assert git_hash
try:
files = self.Git(MakeArgs(["diff --name-only",
git_hash,
- "%s^" % git_hash]))
+ "%s^" % git_hash]), **kwargs)
return map(str.strip, files.splitlines())
except GitFailedException: # pragma: no cover
# Git fails using "^" at branch roots.
@@ -149,15 +150,15 @@ class GitRecipesMixin(object):
@Strip
- def GitCurrentBranch(self):
- for line in self.Git("status -s -b -uno").strip().splitlines():
+ def GitCurrentBranch(self, **kwargs):
+ for line in self.Git("status -s -b -uno", **kwargs).strip().splitlines():
match = re.match(r"^## (.+)", line)
if match: return match.group(1)
raise Exception("Couldn't find curent branch.") # pragma: no cover
@Strip
def GitLog(self, n=0, format="", grep="", git_hash="", parent_hash="",
- branch="", reverse=False):
+ branch="", reverse=False, **kwargs):
assert not (git_hash and parent_hash)
args = ["log"]
if n > 0:
@@ -173,27 +174,27 @@ class GitRecipesMixin(object):
if parent_hash:
args.append("%s^" % parent_hash)
args.append(branch)
- return self.Git(MakeArgs(args))
+ return self.Git(MakeArgs(args), **kwargs)
- def GitGetPatch(self, git_hash):
+ def GitGetPatch(self, git_hash, **kwargs):
assert git_hash
- return self.Git(MakeArgs(["log", "-1", "-p", git_hash]))
+ return self.Git(MakeArgs(["log", "-1", "-p", git_hash]), **kwargs)
# TODO(machenbach): Unused? Remove.
- def GitAdd(self, name):
+ def GitAdd(self, name, **kwargs):
assert name
- self.Git(MakeArgs(["add", Quoted(name)]))
+ self.Git(MakeArgs(["add", Quoted(name)]), **kwargs)
- def GitApplyPatch(self, patch_file, reverse=False):
+ def GitApplyPatch(self, patch_file, reverse=False, **kwargs):
assert patch_file
args = ["apply --index --reject"]
if reverse:
args.append("--reverse")
args.append(Quoted(patch_file))
- self.Git(MakeArgs(args))
+ self.Git(MakeArgs(args), **kwargs)
def GitUpload(self, reviewer="", author="", force=False, cq=False,
- bypass_hooks=False):
+ bypass_hooks=False, **kwargs):
args = ["cl upload --send-mail"]
if author:
args += ["--email", Quoted(author)]
@@ -207,9 +208,9 @@ class GitRecipesMixin(object):
args.append("--bypass-hooks")
# TODO(machenbach): Check output in forced mode. Verify that all required
# base files were uploaded, if not retry.
- self.Git(MakeArgs(args), pipe=False)
+ self.Git(MakeArgs(args), pipe=False, **kwargs)
- def GitCommit(self, message="", file_name="", author=None):
+ def GitCommit(self, message="", file_name="", author=None, **kwargs):
assert message or file_name
args = ["commit"]
if file_name:
@@ -218,28 +219,29 @@ class GitRecipesMixin(object):
args += ["-am", Quoted(message)]
if author:
args += ["--author", "\"%s <%s>\"" % (author, author)]
- self.Git(MakeArgs(args))
+ self.Git(MakeArgs(args), **kwargs)
- def GitPresubmit(self):
- self.Git("cl presubmit", "PRESUBMIT_TREE_CHECK=\"skip\"")
+ def GitPresubmit(self, **kwargs):
+ self.Git("cl presubmit", "PRESUBMIT_TREE_CHECK=\"skip\"", **kwargs)
- def GitDCommit(self):
- self.Git("cl dcommit -f --bypass-hooks", retry_on=lambda x: x is None)
+ def GitDCommit(self, **kwargs):
+ self.Git(
+ "cl dcommit -f --bypass-hooks", retry_on=lambda x: x is None, **kwargs)
- def GitDiff(self, loc1, loc2):
- return self.Git(MakeArgs(["diff", loc1, loc2]))
+ def GitDiff(self, loc1, loc2, **kwargs):
+ return self.Git(MakeArgs(["diff", loc1, loc2]), **kwargs)
- def GitPull(self):
- self.Git("pull")
+ def GitPull(self, **kwargs):
+ self.Git("pull", **kwargs)
- def GitFetchOrigin(self):
- self.Git("fetch origin")
+ def GitFetchOrigin(self, **kwargs):
+ self.Git("fetch origin", **kwargs)
- def GitConvertToSVNRevision(self, git_hash):
- result = self.Git(MakeArgs(["rev-list", "-n", "1", git_hash]))
+ def GitConvertToSVNRevision(self, git_hash, **kwargs):
+ result = self.Git(MakeArgs(["rev-list", "-n", "1", git_hash]), **kwargs)
if not result or not SHA1_RE.match(result):
raise GitFailedException("Git hash %s is unknown." % git_hash)
- log = self.GitLog(n=1, format="%B", git_hash=git_hash)
+ log = self.GitLog(n=1, format="%B", git_hash=git_hash, **kwargs)
for line in reversed(log.splitlines()):
match = ROLL_DEPS_GIT_SVN_ID_RE.match(line.strip())
if match:
@@ -248,7 +250,7 @@ class GitRecipesMixin(object):
@Strip
# Copied from bot_update.py and modified for svn-like numbers only.
- def GetCommitPositionNumber(self, git_hash):
+ def GetCommitPositionNumber(self, git_hash, **kwargs):
"""Dumps the 'git' log for a specific revision and parses out the commit
position number.
@@ -257,7 +259,7 @@ class GitRecipesMixin(object):
Otherwise, we will search for a 'git-svn' metadata entry. If one is found,
its SVN revision value is returned.
"""
- git_log = self.GitLog(format='%B', n=1, git_hash=git_hash)
+ git_log = self.GitLog(format='%B', n=1, git_hash=git_hash, **kwargs)
footer_map = GetCommitMessageFooterMap(git_log)
# Search for commit position metadata
@@ -277,29 +279,31 @@ class GitRecipesMixin(object):
### Git svn stuff
- def GitSVNFetch(self):
- self.Git("svn fetch")
+ def GitSVNFetch(self, **kwargs):
+ self.Git("svn fetch", **kwargs)
- def GitSVNRebase(self):
- self.Git("svn rebase")
+ def GitSVNRebase(self, **kwargs):
+ self.Git("svn rebase", **kwargs)
# TODO(machenbach): Unused? Remove.
@Strip
- def GitSVNLog(self):
- return self.Git("svn log -1 --oneline")
+ def GitSVNLog(self, **kwargs):
+ return self.Git("svn log -1 --oneline", **kwargs)
@Strip
- def GitSVNFindGitHash(self, revision, branch=""):
+ def GitSVNFindGitHash(self, revision, branch="", **kwargs):
assert revision
- return self.Git(MakeArgs(["svn find-rev", "r%s" % revision, branch]))
+ return self.Git(
+ MakeArgs(["svn find-rev", "r%s" % revision, branch]), **kwargs)
@Strip
- def GitSVNFindSVNRev(self, git_hash, branch=""):
- return self.Git(MakeArgs(["svn find-rev", git_hash, branch]))
+ def GitSVNFindSVNRev(self, git_hash, branch="", **kwargs):
+ return self.Git(MakeArgs(["svn find-rev", git_hash, branch]), **kwargs)
- def GitSVNDCommit(self):
- return self.Git("svn dcommit 2>&1", retry_on=lambda x: x is None)
+ def GitSVNDCommit(self, **kwargs):
+ return self.Git("svn dcommit 2>&1", retry_on=lambda x: x is None, **kwargs)
- def GitSVNTag(self, version):
+ def GitSVNTag(self, version, **kwargs):
self.Git(("svn tag %s -m \"Tagging version %s\"" % (version, version)),
- retry_on=lambda x: x is None)
+ retry_on=lambda x: x is None,
+ **kwargs)
« no previous file with comments | « tools/push-to-trunk/common_includes.py ('k') | tools/push-to-trunk/push_to_trunk.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698