Diff
Modified: trunk/Tools/ChangeLog (139577 => 139578)
--- trunk/Tools/ChangeLog 2013-01-14 00:57:57 UTC (rev 139577)
+++ trunk/Tools/ChangeLog 2013-01-14 02:18:08 UTC (rev 139578)
@@ -1,5 +1,30 @@
2013-01-13 Alan Cutter <[email protected]>
+ State who told sheriffbot to roll the Chromium deps and to what revision
+ https://bugs.webkit.org/show_bug.cgi?id=106626
+
+ Reviewed by Eric Seidel.
+
+ Added optional argument to post-chromium-deps-roll so Sheriffbot can specify ChangeLog message.
+
+ * Scripts/webkitpy/tool/bot/irc_command.py:
+ (RollChromiumDEPS._expand_irc_nickname):
+ (RollChromiumDEPS.execute):
+ * Scripts/webkitpy/tool/bot/irc_command_unittest.py:
+ (IRCCommandTest.test_roll_chromium_deps):
+ * Scripts/webkitpy/tool/bot/sheriff.py:
+ (Sheriff.post_chromium_deps_roll):
+ * Scripts/webkitpy/tool/commands/roll.py:
+ (RollChromiumDEPS._prepare_state):
+ (PostChromiumDEPSRoll):
+ (PostChromiumDEPSRoll._prepare_state):
+ * Scripts/webkitpy/tool/commands/roll_unittest.py:
+ (PostRollCommandsTest.test_prepare_state):
+ * Scripts/webkitpy/tool/steps/preparechangelogfordepsroll.py:
+ (PrepareChangeLogForDEPSRoll.run):
+
+2013-01-13 Alan Cutter <[email protected]>
+
Add Alan Cutter as contributor
https://bugs.webkit.org/show_bug.cgi?id=106747
Modified: trunk/Tools/Scripts/webkitpy/tool/bot/irc_command.py (139577 => 139578)
--- trunk/Tools/Scripts/webkitpy/tool/bot/irc_command.py 2013-01-14 00:57:57 UTC (rev 139577)
+++ trunk/Tools/Scripts/webkitpy/tool/bot/irc_command.py 2013-01-14 02:18:08 UTC (rev 139578)
@@ -185,14 +185,21 @@
return
return revision
+ def _expand_irc_nickname(self, nick):
+ contributor = CommitterList().contributor_by_irc_nickname(nick)
+ if contributor:
+ return str(contributor)
+ return nick
+
def execute(self, nick, args, tool, sheriff):
revision = self._parse_args(args)
roll_target = "r%s" % revision if revision else "last-known good revision"
tool.irc().post("%s: Rolling Chromium DEPS to %s" % (nick, roll_target))
+ changelog_message = "Unreviewed. Rolled Chromium DEPS to %s. Requested by %s via sheriffbot.\n\n" % (roll_target, self._expand_irc_nickname(nick))
try:
- bug_id = sheriff.post_chromium_deps_roll(revision, roll_target)
+ bug_id = sheriff.post_chromium_deps_roll(revision, roll_target, changelog_message)
bug_url = tool.bugs.bug_url_for_bug_id(bug_id)
tool.irc().post("%s: Created DEPS roll: %s" % (nick, bug_url))
except ScriptError, e:
Modified: trunk/Tools/Scripts/webkitpy/tool/bot/irc_command_unittest.py (139577 => 139578)
--- trunk/Tools/Scripts/webkitpy/tool/bot/irc_command_unittest.py 2013-01-14 00:57:57 UTC (rev 139577)
+++ trunk/Tools/Scripts/webkitpy/tool/bot/irc_command_unittest.py 2013-01-14 02:18:08 UTC (rev 139578)
@@ -99,6 +99,8 @@
roll = RollChromiumDEPS()
self.assertEqual(None, roll._parse_args([]))
self.assertEqual("1234", roll._parse_args(["1234"]))
+ self.assertEqual('"Alan Cutter" <[email protected]>', roll._expand_irc_nickname("alancutter"))
+ self.assertEqual("unknown_irc_nickname", roll._expand_irc_nickname("unknown_irc_nickname"))
def test_rollout_updates_working_copy(self):
rollout = Rollout()
Modified: trunk/Tools/Scripts/webkitpy/tool/bot/sheriff.py (139577 => 139578)
--- trunk/Tools/Scripts/webkitpy/tool/bot/sheriff.py 2013-01-14 00:57:57 UTC (rev 139577)
+++ trunk/Tools/Scripts/webkitpy/tool/bot/sheriff.py 2013-01-14 02:18:08 UTC (rev 139578)
@@ -88,7 +88,7 @@
])
return urls.parse_bug_id(output)
- def post_chromium_deps_roll(self, revision, revision_name):
+ def post_chromium_deps_roll(self, revision, revision_name, changelog_message):
args = [
"post-chromium-deps-roll",
"--force-clean",
@@ -96,7 +96,7 @@
"--parent-command=sheriff-bot",
]
# revision can be None, but revision_name is always something meaningful.
- args += [revision, revision_name]
+ args += [revision, revision_name, changelog_message]
output = self._sheriffbot.run_webkit_patch(args)
return urls.parse_bug_id(output)
Modified: trunk/Tools/Scripts/webkitpy/tool/commands/roll.py (139577 => 139578)
--- trunk/Tools/Scripts/webkitpy/tool/commands/roll.py 2013-01-14 00:57:57 UTC (rev 139577)
+++ trunk/Tools/Scripts/webkitpy/tool/commands/roll.py 2013-01-14 02:18:08 UTC (rev 139578)
@@ -31,6 +31,8 @@
from webkitpy.tool import steps
+default_changelog_message = "Unreviewed. Rolled DEPS.\n\n"
+
class RollChromiumDEPS(AbstractSequencedCommand):
name = "roll-chromium-deps"
help_text = "Updates Chromium DEPS (defaults to the last-known good revision of Chromium)"
@@ -45,13 +47,14 @@
def _prepare_state(self, options, args, tool):
return {
"chromium_revision": (args and args[0]),
+ "changelog_message": default_changelog_message,
}
class PostChromiumDEPSRoll(AbstractSequencedCommand):
name = "post-chromium-deps-roll"
help_text = "Posts a patch to update Chromium DEPS (revision defaults to the last-known good revision of Chromium)"
- argument_names = "CHROMIUM_REVISION CHROMIUM_REVISION_NAME"
+ argument_names = "CHROMIUM_REVISION CHROMIUM_REVISION_NAME [CHANGELOG_MESSAGE]"
steps = [
steps.CleanWorkingDirectory,
steps.Update,
@@ -67,8 +70,10 @@
chromium_revision = args[0]
chromium_revision_name = args[1]
+ changelog_message = args[2] if len(args) >= 3 else default_changelog_message
return {
"chromium_revision": chromium_revision,
+ "changelog_message": changelog_message,
"bug_title": "Roll Chromium DEPS to %s" % chromium_revision_name,
"bug_description": "A DEPS roll a day keeps the build break away.",
}
Modified: trunk/Tools/Scripts/webkitpy/tool/commands/roll_unittest.py (139577 => 139578)
--- trunk/Tools/Scripts/webkitpy/tool/commands/roll_unittest.py 2013-01-14 00:57:57 UTC (rev 139577)
+++ trunk/Tools/Scripts/webkitpy/tool/commands/roll_unittest.py 2013-01-14 02:18:08 UTC (rev 139578)
@@ -59,6 +59,8 @@
lkgr_state = postroll._prepare_state(options, [None, "last-known good revision"], tool)
self.assertEqual(None, lkgr_state["chromium_revision"])
self.assertEqual("Roll Chromium DEPS to last-known good revision", lkgr_state["bug_title"])
- revision_state = postroll._prepare_state(options, ["1234", "r1234"], tool)
+ self.assertEqual("Unreviewed. Rolled DEPS.\n\n", lkgr_state["changelog_message"])
+ revision_state = postroll._prepare_state(options, ["1234", "r1234", "test message"], tool)
self.assertEqual("1234", revision_state["chromium_revision"])
self.assertEqual("Roll Chromium DEPS to r1234", revision_state["bug_title"])
+ self.assertEqual("test message", revision_state["changelog_message"])
Modified: trunk/Tools/Scripts/webkitpy/tool/steps/preparechangelogfordepsroll.py (139577 => 139578)
--- trunk/Tools/Scripts/webkitpy/tool/steps/preparechangelogfordepsroll.py 2013-01-14 00:57:57 UTC (rev 139577)
+++ trunk/Tools/Scripts/webkitpy/tool/steps/preparechangelogfordepsroll.py 2013-01-14 02:18:08 UTC (rev 139578)
@@ -35,4 +35,4 @@
self._tool.executive.run_and_throw_if_fail(self._tool.deprecated_port().prepare_changelog_command())
changelog_paths = self._tool.checkout().modified_changelogs(git_commit=None)
for changelog_path in changelog_paths:
- ChangeLog(changelog_path).update_with_unreviewed_message("Unreviewed. Rolled DEPS.\n\n")
+ ChangeLog(changelog_path).update_with_unreviewed_message(state["changelog_message"])