Reviewers: tandrii,
Message:
PTAL
Description:
Switch auto push script to git.
BUG=410721
LOG=n
TEST=script_test.py
[email protected]
Please review this at https://codereview.chromium.org/698513002/
Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files (+15, -20 lines):
M tools/push-to-trunk/auto_push.py
M tools/push-to-trunk/test_scripts.py
Index: tools/push-to-trunk/auto_push.py
diff --git a/tools/push-to-trunk/auto_push.py
b/tools/push-to-trunk/auto_push.py
index
fef3b5367b4b758ca6153101c963f308d8ed2d3f..e53fe2fc91643612a63db05c01e3240e658af2d2
100755
--- a/tools/push-to-trunk/auto_push.py
+++ b/tools/push-to-trunk/auto_push.py
@@ -36,7 +36,7 @@ import urllib
from common_includes import *
import push_to_trunk
-PUSH_MESSAGE_RE = re.compile(r".* \(based on bleeding_edge revision
r(\d+)\)$")
+PUSH_MESSAGE_RE = re.compile(r".* \(based on ([a-fA-F0-9]+)\)$")
class Preparation(Step):
MESSAGE = "Preparation."
@@ -94,19 +94,16 @@ class CheckLastPush(Step):
self.Die("Could not retrieve bleeding edge revision for trunk
push %s"
% last_push)
- # TODO(machenbach): This metric counts all revisions. It could be
- # improved by counting only the revisions on bleeding_edge.
- if int(self["lkgr"]) - int(last_push_be) < 10: # pragma: no cover
- # This makes sure the script doesn't push twice in a row when the
cron
- # job retries several times.
- self.Die("Last push too recently: %s" % last_push_be)
+ if self["lkgr"] == last_push_be:
+ print "Already pushed current lkgr %s" % last_push_be
+ return True
-class PushToTrunk(Step):
- MESSAGE = "Pushing to trunk if specified."
+class PushToCandidates(Step):
+ MESSAGE = "Pushing to candidates if specified."
def RunStep(self):
- print "Pushing lkgr %s to trunk." % self["lkgr"]
+ print "Pushing lkgr %s to candidates." % self["lkgr"]
# TODO(machenbach): Update the script before calling it.
if self._options.push:
@@ -144,7 +141,7 @@ class AutoPush(ScriptsBase):
CheckTreeStatus,
FetchLKGR,
CheckLastPush,
- PushToTrunk,
+ PushToCandidates,
]
Index: tools/push-to-trunk/test_scripts.py
diff --git a/tools/push-to-trunk/test_scripts.py
b/tools/push-to-trunk/test_scripts.py
index
0724cf5a451e7e0948c04c5b0e6817295db6472d..d43768929cc880532cbde70c698e63e12b439b09
100644
--- a/tools/push-to-trunk/test_scripts.py
+++ b/tools/push-to-trunk/test_scripts.py
@@ -930,14 +930,12 @@ def get_list():
"\"^Version [[:digit:]]*\.[[:digit:]]*\.[[:digit:]]* (based\" "
"origin/candidates"), "hash2\n"),
Cmd("git log -1 --format=%s hash2",
- "Version 3.4.5 (based on bleeding_edge revision r99)\n"),
+ "Version 3.4.5 (based on abc123)\n"),
])
- self._state["lkgr"] = "101"
-
- self.assertRaises(Exception, lambda: self.RunStep(auto_push.AutoPush,
- CheckLastPush,
- AUTO_PUSH_ARGS))
+ self._state["lkgr"] = "abc123"
+ self.assertEquals(0, self.RunStep(
+ auto_push.AutoPush, CheckLastPush, AUTO_PUSH_ARGS))
def testAutoPush(self):
TextToFile("", os.path.join(TEST_CONFIG["DEFAULT_CWD"], ".git"))
@@ -951,12 +949,12 @@ def get_list():
URL("https://v8-status.appspot.com/current?format=json",
"{\"message\": \"Tree is throttled\"}"),
URL("https://v8-status.appspot.com/lkgr", Exception("Network
problem")),
- URL("https://v8-status.appspot.com/lkgr", "100"),
+ URL("https://v8-status.appspot.com/lkgr", "abc123"),
Cmd(("git log -1 --format=%H --grep=\""
"^Version [[:digit:]]*\.[[:digit:]]*\.[[:digit:]]* (based\""
" origin/candidates"), "push_hash\n"),
Cmd("git log -1 --format=%s push_hash",
- "Version 3.4.5 (based on bleeding_edge revision r79)\n"),
+ "Version 3.4.5 (based on abc101)\n"),
])
auto_push.AutoPush(TEST_CONFIG, self).Run(AUTO_PUSH_ARGS + ["--push"])
@@ -964,7 +962,7 @@ def get_list():
state = json.loads(FileToText("%s-state.json"
% TEST_CONFIG["PERSISTFILE_BASENAME"]))
- self.assertEquals("100", state["lkgr"])
+ self.assertEquals("abc123", state["lkgr"])
def testAutoPushStoppedBySettings(self):
TextToFile("", os.path.join(TEST_CONFIG["DEFAULT_CWD"], ".git"))
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.