(repo|submodule|txt)_roller: Attribute rolls
For single-commit rolls attribute rolls to the original commit author.
Hide this behind a property since the permissions may not be set up on
all necessary gerrit hosts.
Added code to keep track of author, owner, and reviewer names as well as
email addresses, so the name can be used in the attribution as well.
Changed testing code to use the same account for both author and owner
in most cases, since the attribution code wouldn't be used if they
differ. It's possible something relating to one of those and not the
other could regress since they're no longer independently tested, but
unlikely.
Bug: 595
Change-Id: I720b33d9b994bba7b9427b8e64cd21dbf4bb7e4b
Reviewed-on: https://pigweed-review.googlesource.com/c/infra/recipes/+/77760
Reviewed-by: Anthony Fandrianto <atyfto@google.com>
Commit-Queue: Rob Mohr <mohrr@google.com>
diff --git a/recipe_modules/roll_util/api.py b/recipe_modules/roll_util/api.py
index 964033a..d522cb4 100644
--- a/recipe_modules/roll_util/api.py
+++ b/recipe_modules/roll_util/api.py
@@ -84,6 +84,10 @@
REBASE = 'REBASE'
+# Using a namedtuple instead of attrs because this should be hashable.
+Account = collections.namedtuple('Account', 'name email')
+
+
@attr.s
class Commit(object):
hash = attr.ib(type=str)
@@ -125,7 +129,7 @@
log_cmd = [
'log',
- '--pretty=format:%H\n%ae\n%B',
+ '--pretty=format:%H\n%an\n%ae\n%B',
# Separate entries with null bytes since most entries
# will contain newlines ("%B" is the full commit
# message, not just the first line.)
@@ -149,7 +153,8 @@
commits = []
for i, commit in enumerate(commit_log):
- commit_hash, author, message = commit.split('\n', 2)
+ commit_hash, name, email, message = commit.split('\n', 3)
+ author = Account(name, email)
owner = None
reviewers = []
@@ -178,12 +183,24 @@
host=full_host,
test_data=self._api.json.test_api.output(
{
- 'owner': {'email': 'owner@example.com'},
+ 'owner': {
+ 'name': 'author',
+ 'email': 'author@example.com',
+ },
'reviewers': {
'REVIEWER': [
- {'email': 'reviewer@example.com'},
- {'email': 'nobody@google.com'},
- {'email': 'robot@gserviceaccount.com'},
+ {
+ 'name': 'reviewer',
+ 'email': 'reviewer@example.com',
+ },
+ {
+ 'name': 'nobody',
+ 'email': 'nobody@google.com',
+ },
+ {
+ 'name': 'robot',
+ 'email': 'robot@gserviceaccount.com',
+ },
],
},
}
@@ -193,9 +210,13 @@
if step.exc_result.retcode == 0:
details = step.json.output
- owner = details['owner']['email']
+ owner = Account(
+ details['owner']['name'], details['owner']['email']
+ )
for reviewer in details['reviewers']['REVIEWER']:
- reviewers.append(reviewer['email'])
+ reviewers.append(
+ Account(reviewer['name'], reviewer['email']),
+ )
commits.append(
Commit(
@@ -285,6 +306,14 @@
authors.add(commit.owner)
return authors
+ def fake_author(self, author):
+ # Update the author's email address so it can be used for attribution
+ # without literally attributing it to the author's account in Gerrit.
+ return Account(
+ author.name,
+ '{}@pigweed.infra.roller.{}'.format(*author.email.split('@')),
+ )
+
def reviewers(self, *roll):
reviewers = set()
for r in roll:
@@ -303,16 +332,16 @@
email, 'email:{}'.format(email), host=host, test_data=test_data,
).json.output
- def include_cc(self, email, cc_domains, host):
- with self.m.step.nest('cc {}'.format(email)) as pres:
- domain = email.split('@', 1)[1]
+ def include_cc(self, account, cc_domains, host):
+ with self.m.step.nest('cc {}'.format(account.email)) as pres:
+ domain = account.email.split('@', 1)[1]
if domain.endswith('gserviceaccount.com'):
pres.step_summary_text = 'not CCing, robot account'
return False
if cc_domains and domain not in cc_domains:
pres.step_summary_text = 'not CCing, domain excluded'
return False
- if not self.can_cc_on_roll(email, host=host):
+ if not self.can_cc_on_roll(account.email, host=host):
pres.step_summary_text = 'not CCing, no account in Gerrit'
return False
@@ -422,6 +451,9 @@
return '\n\n'.join(texts)
+ def Account(self, name, email):
+ return Account(name, email)
+
def Roll(self, **kwargs):
"""Create a Roll. See Roll class above for details."""
return Roll(api=self.m, **kwargs)
diff --git a/recipe_modules/roll_util/test_api.py b/recipe_modules/roll_util/test_api.py
index 5130106..62e9921 100644
--- a/recipe_modules/roll_util/test_api.py
+++ b/recipe_modules/roll_util/test_api.py
@@ -16,7 +16,9 @@
class RollUtilTestApi(recipe_test_api.RecipeTestApi):
- def commit(self, commit_hash, message=None, author='author@example.com'):
+ def commit(
+ self, commit_hash, message=None, author='author@example.com', name=None,
+ ):
if not message:
message = """
module: Short commit summary
@@ -29,7 +31,11 @@
""".strip().format(
commit_hash=commit_hash
)
- return '\n'.join((commit_hash, author, message))
+
+ if name is None:
+ name = author.split('@')[0]
+
+ return '\n'.join((commit_hash, name, author, message))
def format_prefix(self, p):
if not p:
diff --git a/recipe_modules/roll_util/tests/multiple_rolls.expected/mixed.json b/recipe_modules/roll_util/tests/multiple_rolls.expected/mixed.json
index 1c76a42..a25102d 100644
--- a/recipe_modules/roll_util/tests/multiple_rolls.expected/mixed.json
+++ b/recipe_modules/roll_util/tests/multiple_rolls.expected/mixed.json
@@ -35,7 +35,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..4444444444444444444444444444444444444444"
],
@@ -180,18 +180,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -240,7 +244,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"9999999999999999999999999999999999999999..cccccccccccccccccccccccccccccccccccccccc"
],
@@ -298,18 +302,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -370,18 +378,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -442,18 +454,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -502,7 +518,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"5555555555555555555555555555555555555555..8888888888888888888888888888888888888888"
],
@@ -560,18 +576,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -632,18 +652,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
diff --git a/recipe_modules/roll_util/tests/multiple_rolls.expected/multiple_commits.json b/recipe_modules/roll_util/tests/multiple_rolls.expected/multiple_commits.json
index a6ee8b5..4fc07d6 100644
--- a/recipe_modules/roll_util/tests/multiple_rolls.expected/multiple_commits.json
+++ b/recipe_modules/roll_util/tests/multiple_rolls.expected/multiple_commits.json
@@ -35,7 +35,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..4444444444444444444444444444444444444444"
],
@@ -180,18 +180,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -252,18 +256,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -324,18 +332,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -384,7 +396,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"9999999999999999999999999999999999999999..cccccccccccccccccccccccccccccccccccccccc"
],
@@ -442,18 +454,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -514,18 +530,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -586,18 +606,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -646,7 +670,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"5555555555555555555555555555555555555555..8888888888888888888888888888888888888888"
],
@@ -704,18 +728,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -776,18 +804,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -848,18 +880,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
diff --git a/recipe_modules/roll_util/tests/multiple_rolls.expected/single_commits.json b/recipe_modules/roll_util/tests/multiple_rolls.expected/single_commits.json
index 8fdecb4..60db5ae 100644
--- a/recipe_modules/roll_util/tests/multiple_rolls.expected/single_commits.json
+++ b/recipe_modules/roll_util/tests/multiple_rolls.expected/single_commits.json
@@ -35,7 +35,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..4444444444444444444444444444444444444444"
],
@@ -180,18 +180,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -240,7 +244,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"9999999999999999999999999999999999999999..cccccccccccccccccccccccccccccccccccccccc"
],
@@ -298,18 +302,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -358,7 +366,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"5555555555555555555555555555555555555555..8888888888888888888888888888888888888888"
],
@@ -416,18 +424,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
diff --git a/recipe_modules/roll_util/tests/single_roll.expected/frombranch.json b/recipe_modules/roll_util/tests/single_roll.expected/frombranch.json
index 470eee5..9ebccdc 100644
--- a/recipe_modules/roll_util/tests/single_roll.expected/frombranch.json
+++ b/recipe_modules/roll_util/tests/single_roll.expected/frombranch.json
@@ -70,7 +70,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"--max-count",
"5",
@@ -217,18 +217,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -289,18 +293,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -361,18 +369,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -433,18 +445,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -505,18 +521,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -548,7 +568,6 @@
"name": "emails",
"~followup_annotations": [
"@@@STEP_LOG_LINE@authors@author@example.com@@@",
- "@@@STEP_LOG_LINE@authors@owner@example.com@@@",
"@@@STEP_LOG_END@authors@@@",
"@@@STEP_LOG_LINE@reviewers@nobody@google.com@@@",
"@@@STEP_LOG_LINE@reviewers@reviewer@example.com@@@",
diff --git a/recipe_modules/roll_util/tests/single_roll.expected/multicommit.json b/recipe_modules/roll_util/tests/single_roll.expected/multicommit.json
index 9c05fec..2957709 100644
--- a/recipe_modules/roll_util/tests/single_roll.expected/multicommit.json
+++ b/recipe_modules/roll_util/tests/single_roll.expected/multicommit.json
@@ -70,7 +70,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"0000000000000000000000000000000000000000..4444444444444444444444444444444444444444"
],
@@ -215,18 +215,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -287,18 +291,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -359,18 +367,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -431,18 +443,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -474,7 +490,6 @@
"name": "emails",
"~followup_annotations": [
"@@@STEP_LOG_LINE@authors@author@example.com@@@",
- "@@@STEP_LOG_LINE@authors@owner@example.com@@@",
"@@@STEP_LOG_END@authors@@@",
"@@@STEP_LOG_LINE@reviewers@nobody@google.com@@@",
"@@@STEP_LOG_LINE@reviewers@reviewer@example.com@@@",
diff --git a/recipe_modules/roll_util/tests/single_roll.expected/rebase.json b/recipe_modules/roll_util/tests/single_roll.expected/rebase.json
index 67efd37..6105837 100644
--- a/recipe_modules/roll_util/tests/single_roll.expected/rebase.json
+++ b/recipe_modules/roll_util/tests/single_roll.expected/rebase.json
@@ -70,7 +70,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"--max-count",
"5",
@@ -217,18 +217,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -289,18 +293,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -361,18 +369,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -433,18 +445,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -505,18 +521,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -548,7 +568,6 @@
"name": "emails",
"~followup_annotations": [
"@@@STEP_LOG_LINE@authors@author@example.com@@@",
- "@@@STEP_LOG_LINE@authors@owner@example.com@@@",
"@@@STEP_LOG_END@authors@@@",
"@@@STEP_LOG_LINE@reviewers@nobody@google.com@@@",
"@@@STEP_LOG_LINE@reviewers@reviewer@example.com@@@",
diff --git a/recipe_modules/roll_util/tests/single_roll.expected/singlecommit_multiline.json b/recipe_modules/roll_util/tests/single_roll.expected/singlecommit_multiline.json
index b601d6b..aca1634 100644
--- a/recipe_modules/roll_util/tests/single_roll.expected/singlecommit_multiline.json
+++ b/recipe_modules/roll_util/tests/single_roll.expected/singlecommit_multiline.json
@@ -70,7 +70,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"0000000000000000000000000000000000000000..1111111111111111111111111111111111111111"
],
@@ -215,18 +215,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -258,7 +262,6 @@
"name": "emails",
"~followup_annotations": [
"@@@STEP_LOG_LINE@authors@author@example.com@@@",
- "@@@STEP_LOG_LINE@authors@owner@example.com@@@",
"@@@STEP_LOG_END@authors@@@",
"@@@STEP_LOG_LINE@reviewers@nobody@google.com@@@",
"@@@STEP_LOG_LINE@reviewers@reviewer@example.com@@@",
diff --git a/recipe_modules/roll_util/tests/single_roll.expected/singlecommit_singleline.json b/recipe_modules/roll_util/tests/single_roll.expected/singlecommit_singleline.json
index 8585663..6a67415 100644
--- a/recipe_modules/roll_util/tests/single_roll.expected/singlecommit_singleline.json
+++ b/recipe_modules/roll_util/tests/single_roll.expected/singlecommit_singleline.json
@@ -70,7 +70,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"0000000000000000000000000000000000000000..1111111111111111111111111111111111111111"
],
@@ -215,18 +215,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -258,7 +262,6 @@
"name": "emails",
"~followup_annotations": [
"@@@STEP_LOG_LINE@authors@author@example.com@@@",
- "@@@STEP_LOG_LINE@authors@owner@example.com@@@",
"@@@STEP_LOG_END@authors@@@",
"@@@STEP_LOG_LINE@reviewers@nobody@google.com@@@",
"@@@STEP_LOG_LINE@reviewers@reviewer@example.com@@@",
diff --git a/recipe_modules/roll_util/tests/single_roll.py b/recipe_modules/roll_util/tests/single_roll.py
index 5e7721a..fb0a574 100644
--- a/recipe_modules/roll_util/tests/single_roll.py
+++ b/recipe_modules/roll_util/tests/single_roll.py
@@ -59,8 +59,12 @@
steplog('gerrit_name', roll.gerrit_name)
with api.step.nest('emails') as pres:
- pres.logs['authors'] = sorted(api.roll_util.authors(roll))
- pres.logs['reviewers'] = sorted(api.roll_util.reviewers(roll))
+ pres.logs['authors'] = sorted(
+ x.email for x in api.roll_util.authors(roll)
+ )
+ pres.logs['reviewers'] = sorted(
+ x.email for x in api.roll_util.reviewers(roll)
+ )
api.roll_util.message(roll)
@@ -72,14 +76,26 @@
api.roll_util.can_cc_on_roll('email@example.com', host)
api.roll_util.can_cc_on_roll('nobody@google.com', host)
+ Account = api.roll_util.Account
+ user = Account('user', 'user@example.com')
+
+ assert (
+ api.roll_util.fake_author(user).email
+ == 'user@pigweed.infra.roller.example.com'
+ )
+
with api.step.nest('CCing'):
- api.roll_util.include_cc('user@example.com', ('example.com',), host)
+ api.roll_util.include_cc(user, ('example.com',), host)
with api.step.nest('not CCing, domain excluded'):
- api.roll_util.include_cc('user@example.com', ('google.com',), host)
+ api.roll_util.include_cc(user, ('google.com',), host)
with api.step.nest('not CCing, robot account'):
- api.roll_util.include_cc('robot@gserviceaccount.com', (), host)
+ api.roll_util.include_cc(
+ Account('robot', 'robot@gserviceaccount.com'), (), host,
+ )
with api.step.nest('not CCing, no account in Gerrit'):
- api.roll_util.include_cc('nobody@google.com', (), host)
+ api.roll_util.include_cc(
+ Account('nobody', 'nobody@google.com'), (), host,
+ )
def GenTests(api): # pylint: disable=invalid-name
diff --git a/recipes/multiple_submodule_roller.expected/partial_noop.json b/recipes/multiple_submodule_roller.expected/partial_noop.json
index 76c6aad..3cca674 100644
--- a/recipes/multiple_submodule_roller.expected/partial_noop.json
+++ b/recipes/multiple_submodule_roller.expected/partial_noop.json
@@ -581,7 +581,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2222222222222222222222222222222222222222"
],
@@ -726,18 +726,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
diff --git a/recipes/multiple_submodule_roller.expected/success.json b/recipes/multiple_submodule_roller.expected/success.json
index 692a824..019a9fe 100644
--- a/recipes/multiple_submodule_roller.expected/success.json
+++ b/recipes/multiple_submodule_roller.expected/success.json
@@ -581,7 +581,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2222222222222222222222222222222222222222"
],
@@ -726,18 +726,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -876,7 +880,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2222222222222222222222222222222222222222"
],
@@ -934,18 +938,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -996,42 +1004,6 @@
},
{
"cmd": [],
- "name": "cc owner@example.com",
- "~followup_annotations": [
- "@@@STEP_SUMMARY_TEXT@CCing@@@"
- ]
- },
- {
- "cmd": [
- "[START_DIR]/cipd_tool/path/to/gerrit/version%3Apinned-version/gerrit",
- "account-query",
- "-host",
- "https://pigweed-review.googlesource.com",
- "-input",
- "{\"params\": {\"q\": \"email:owner@example.com\"}}",
- "-output",
- "/path/to/tmp/json"
- ],
- "name": "cc owner@example.com.owner@example.com",
- "timeout": 600,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@json.output@[@@@",
- "@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"_account_id\": 123@@@",
- "@@@STEP_LOG_LINE@json.output@ }@@@",
- "@@@STEP_LOG_LINE@json.output@]@@@",
- "@@@STEP_LOG_END@json.output@@@",
- "@@@STEP_LOG_LINE@json.input@{@@@",
- "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@",
- "@@@STEP_LOG_LINE@json.input@ \"q\": \"email:owner@example.com\"@@@",
- "@@@STEP_LOG_LINE@json.input@ }@@@",
- "@@@STEP_LOG_LINE@json.input@}@@@",
- "@@@STEP_LOG_END@json.input@@@"
- ]
- },
- {
- "cmd": [],
"name": "roll message"
},
{
@@ -1219,7 +1191,7 @@
"--push-option",
"nokeycheck",
"origin",
- "HEAD:refs/for/main%l=Commit-Queue+1,cc=author@example.com,cc=owner@example.com"
+ "HEAD:refs/for/main%l=Commit-Queue+1,cc=author@example.com"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/multiple_submodule_roller.py b/recipes/multiple_submodule_roller.py
index 2e84f3b..952e6f6 100644
--- a/recipes/multiple_submodule_roller.py
+++ b/recipes/multiple_submodule_roller.py
@@ -184,9 +184,9 @@
roll_kwargs = {}
if always_cc:
- roll_kwargs['cc'] = cc
+ roll_kwargs['cc'] = [x.email for x in cc]
else:
- roll_kwargs['cc_on_failure'] = cc
+ roll_kwargs['cc_on_failure'] = [x.email for x in cc]
change = api.auto_roller.attempt_roll(
gerrit_host=api.checkout.gerrit_host(),
diff --git a/recipes/repo_roller.expected/dotdot-prefix.json b/recipes/repo_roller.expected/dotdot-prefix.json
index 7324100..4e2692d 100644
--- a/recipes/repo_roller.expected/dotdot-prefix.json
+++ b/recipes/repo_roller.expected/dotdot-prefix.json
@@ -1632,7 +1632,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"--max-count",
"5",
@@ -1851,18 +1851,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1877,6 +1881,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
diff --git a/recipes/repo_roller.expected/equivalent.json b/recipes/repo_roller.expected/equivalent.json
index c511d6a..fe671db 100644
--- a/recipes/repo_roller.expected/equivalent.json
+++ b/recipes/repo_roller.expected/equivalent.json
@@ -1691,7 +1691,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"2222222222222222222222222222222222222222..2d72510e447ab60a9728aeea2362d8be2cbd7789"
],
@@ -1908,18 +1908,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -2033,6 +2037,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
diff --git a/recipes/repo_roller.expected/host-dot-dot.json b/recipes/repo_roller.expected/host-dot-dot.json
index 75b234f..3222134 100644
--- a/recipes/repo_roller.expected/host-dot-dot.json
+++ b/recipes/repo_roller.expected/host-dot-dot.json
@@ -1632,7 +1632,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"--max-count",
"5",
@@ -1851,18 +1851,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1877,6 +1881,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
diff --git a/recipes/repo_roller.expected/host-prefix.json b/recipes/repo_roller.expected/host-prefix.json
index e865201..ec4785e 100644
--- a/recipes/repo_roller.expected/host-prefix.json
+++ b/recipes/repo_roller.expected/host-prefix.json
@@ -1632,7 +1632,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"--max-count",
"5",
@@ -1851,18 +1851,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1877,6 +1881,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
diff --git a/recipes/repo_roller.expected/no-trigger-with-revision-branch.json b/recipes/repo_roller.expected/no-trigger-with-revision-branch.json
index 6aab6e0..8c29e49 100644
--- a/recipes/repo_roller.expected/no-trigger-with-revision-branch.json
+++ b/recipes/repo_roller.expected/no-trigger-with-revision-branch.json
@@ -982,7 +982,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"--max-count",
"5",
@@ -1129,18 +1129,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1155,6 +1159,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
diff --git a/recipes/repo_roller.expected/no-trigger-with-upstream.json b/recipes/repo_roller.expected/no-trigger-with-upstream.json
index 8c50d7d..598bc99 100644
--- a/recipes/repo_roller.expected/no-trigger-with-upstream.json
+++ b/recipes/repo_roller.expected/no-trigger-with-upstream.json
@@ -1017,7 +1017,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..hash-from-special-checkout"
],
@@ -1162,18 +1162,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1188,6 +1192,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
diff --git a/recipes/repo_roller.expected/success.json b/recipes/repo_roller.expected/success.json
index f1b13ca..45c3213 100644
--- a/recipes/repo_roller.expected/success.json
+++ b/recipes/repo_roller.expected/success.json
@@ -1691,7 +1691,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2d72510e447ab60a9728aeea2362d8be2cbd7789"
],
@@ -1908,18 +1908,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1982,50 +1986,9 @@
},
{
"cmd": [],
- "name": "cc owner@example.com",
+ "name": "authors",
"~followup_annotations": [
- "@@@STEP_SUMMARY_TEXT@CCing@@@"
- ]
- },
- {
- "cmd": [
- "[START_DIR]/cipd_tool/path/to/gerrit/version%3Apinned-version/gerrit",
- "account-query",
- "-host",
- "https://host-review.googlesource.com",
- "-input",
- "{\"params\": {\"q\": \"email:owner@example.com\"}}",
- "-output",
- "/path/to/tmp/json"
- ],
- "luci_context": {
- "realm": {
- "name": "project:ci"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cc owner@example.com.owner@example.com",
- "timeout": 600,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@json.output@[@@@",
- "@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"_account_id\": 123@@@",
- "@@@STEP_LOG_LINE@json.output@ }@@@",
- "@@@STEP_LOG_LINE@json.output@]@@@",
- "@@@STEP_LOG_END@json.output@@@",
- "@@@STEP_LOG_LINE@json.input@{@@@",
- "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@",
- "@@@STEP_LOG_LINE@json.input@ \"q\": \"email:owner@example.com\"@@@",
- "@@@STEP_LOG_LINE@json.input@ }@@@",
- "@@@STEP_LOG_LINE@json.input@}@@@",
- "@@@STEP_LOG_END@json.input@@@"
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
]
},
{
@@ -2274,7 +2237,7 @@
"--push-option",
"nokeycheck",
"origin",
- "HEAD:refs/for/main%l=Commit-Queue+1,cc=author@example.com,cc=owner@example.com"
+ "HEAD:refs/for/main%l=Commit-Queue+1,cc=author@example.com"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/repo_roller.expected/upstream-not-set.json b/recipes/repo_roller.expected/upstream-not-set.json
index b8cf5ab..66722ba 100644
--- a/recipes/repo_roller.expected/upstream-not-set.json
+++ b/recipes/repo_roller.expected/upstream-not-set.json
@@ -1632,7 +1632,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"--max-count",
"5",
@@ -1851,18 +1851,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1877,6 +1881,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
diff --git a/recipes/repo_roller.proto b/recipes/repo_roller.proto
index 5c3d7a9..2e1d638 100644
--- a/recipes/repo_roller.proto
+++ b/recipes/repo_roller.proto
@@ -20,9 +20,6 @@
// The "path" attribute of the project to update. Required.
string path_to_update = 1;
- // The revision hash to update to. Default: get from buildbucket.
- string new_revision = 2;
-
// Don't do anything that has external effects.
bool dry_run = 3;
@@ -44,4 +41,8 @@
// Vote Bot-Commit+1 instead of Code-Review+2.
bool bot_commit = 8;
+
+ // Forge the author so rolls of single commits are attributed to the original
+ // commit author.
+ bool forge_author = 9;
}
diff --git a/recipes/repo_roller.py b/recipes/repo_roller.py
index 440cac2..99cad2f 100644
--- a/recipes/repo_roller.py
+++ b/recipes/repo_roller.py
@@ -226,8 +226,9 @@
)
cc = set()
+ authors = api.roll_util.authors(roll)
if cc_authors_on_rolls:
- cc.update(api.roll_util.authors(roll))
+ cc.update(authors)
if cc_reviewers_on_rolls:
cc.update(api.roll_util.reviewers(roll))
@@ -242,9 +243,17 @@
roll_kwargs = {}
if always_cc:
- roll_kwargs['cc'] = cc
+ roll_kwargs['cc'] = [x.email for x in cc]
else:
- roll_kwargs['cc_on_failure'] = cc
+ roll_kwargs['cc_on_failure'] = [x.email for x in cc]
+
+ author_override = None
+ with api.step.nest('authors') as pres:
+ pres.step_summary_text = repr(authors)
+ if len(authors) == 1 and props.forge_author:
+ author_override = api.roll_util.fake_author(
+ next(iter(authors))
+ )._asdict()
change = api.auto_roller.attempt_roll(
gerrit_host=api.checkout.gerrit_host(),
@@ -270,6 +279,7 @@
remote='https://host.googlesource.com/manifest',
equivalent_remotes=equivalent_remotes,
)
+ props['forge_author'] = True
props['path_to_update'] = path
props['dry_run'] = dry_run
props.update(**kwargs)
diff --git a/recipes/submodule_roller.expected/failure-cc-authors.json b/recipes/submodule_roller.expected/failure-cc-authors.json
index 09c113e..8107563 100644
--- a/recipes/submodule_roller.expected/failure-cc-authors.json
+++ b/recipes/submodule_roller.expected/failure-cc-authors.json
@@ -981,7 +981,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2d72510e447ab60a9728aeea2362d8be2cbd7789"
],
@@ -1198,18 +1198,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1510,50 +1514,9 @@
},
{
"cmd": [],
- "name": "cc owner@example.com",
+ "name": "authors",
"~followup_annotations": [
- "@@@STEP_SUMMARY_TEXT@CCing@@@"
- ]
- },
- {
- "cmd": [
- "[START_DIR]/cipd_tool/path/to/gerrit/version%3Apinned-version/gerrit",
- "account-query",
- "-host",
- "https://pigweed-review.googlesource.com",
- "-input",
- "{\"params\": {\"q\": \"email:owner@example.com\"}}",
- "-output",
- "/path/to/tmp/json"
- ],
- "luci_context": {
- "realm": {
- "name": "project:ci"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cc owner@example.com.owner@example.com",
- "timeout": 600,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@json.output@[@@@",
- "@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"_account_id\": 123@@@",
- "@@@STEP_LOG_LINE@json.output@ }@@@",
- "@@@STEP_LOG_LINE@json.output@]@@@",
- "@@@STEP_LOG_END@json.output@@@",
- "@@@STEP_LOG_LINE@json.input@{@@@",
- "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@",
- "@@@STEP_LOG_LINE@json.input@ \"q\": \"email:owner@example.com\"@@@",
- "@@@STEP_LOG_LINE@json.input@ }@@@",
- "@@@STEP_LOG_LINE@json.input@}@@@",
- "@@@STEP_LOG_END@json.input@@@"
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
]
},
{
@@ -1778,7 +1741,9 @@
"commit",
"-m",
"[roll a1] foo\nbar\n\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\na1 Rolled-Commits: 111111111111111..2d72510e447ab60\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
@@ -1899,7 +1864,7 @@
"-host",
"https://pigweed-review.googlesource.com",
"-input",
- "{\"change_id\": \"pigweed/pigweed~main~I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8\", \"input\": {\"reviewers\": [{\"reviewer\": \"author@example.com\", \"state\": \"CC\"}, {\"reviewer\": \"owner@example.com\", \"state\": \"CC\"}]}, \"revision_id\": \"current\"}",
+ "{\"change_id\": \"pigweed/pigweed~main~I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8\", \"input\": {\"reviewers\": [{\"reviewer\": \"author@example.com\", \"state\": \"CC\"}]}, \"revision_id\": \"current\"}",
"-output",
"/path/to/tmp/json"
],
@@ -1928,10 +1893,6 @@
"@@@STEP_LOG_LINE@json.input@ {@@@",
"@@@STEP_LOG_LINE@json.input@ \"reviewer\": \"author@example.com\", @@@",
"@@@STEP_LOG_LINE@json.input@ \"state\": \"CC\"@@@",
- "@@@STEP_LOG_LINE@json.input@ }, @@@",
- "@@@STEP_LOG_LINE@json.input@ {@@@",
- "@@@STEP_LOG_LINE@json.input@ \"reviewer\": \"owner@example.com\", @@@",
- "@@@STEP_LOG_LINE@json.input@ \"state\": \"CC\"@@@",
"@@@STEP_LOG_LINE@json.input@ }@@@",
"@@@STEP_LOG_LINE@json.input@ ]@@@",
"@@@STEP_LOG_LINE@json.input@ }, @@@",
diff --git a/recipes/submodule_roller.expected/no-revision.json b/recipes/submodule_roller.expected/no-revision.json
index b7071fa..10b8af4 100644
--- a/recipes/submodule_roller.expected/no-revision.json
+++ b/recipes/submodule_roller.expected/no-revision.json
@@ -572,7 +572,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2222222222222222222222222222222222222222"
],
@@ -717,18 +717,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -933,6 +937,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
@@ -1081,7 +1092,9 @@
"commit",
"-m",
"[roll a1] foo\nbar\n\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\na1 Rolled-Commits: 111111111111111..222222222222222\nRoller-URL: https://ci.chromium.org/b/0\nCq-Cl-Tag: roller-builder:\nCq-Cl-Tag: roller-bid:0\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: Idcafe3609bd1c8c808cc0005865453850afdf06e",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/submodule_roller.expected/relative-dot.json b/recipes/submodule_roller.expected/relative-dot.json
index d9a8917..b289d2c 100644
--- a/recipes/submodule_roller.expected/relative-dot.json
+++ b/recipes/submodule_roller.expected/relative-dot.json
@@ -981,7 +981,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2d72510e447ab60a9728aeea2362d8be2cbd7789"
],
@@ -1198,18 +1198,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1510,50 +1514,9 @@
},
{
"cmd": [],
- "name": "cc owner@example.com",
+ "name": "authors",
"~followup_annotations": [
- "@@@STEP_SUMMARY_TEXT@CCing@@@"
- ]
- },
- {
- "cmd": [
- "[START_DIR]/cipd_tool/path/to/gerrit/version%3Apinned-version/gerrit",
- "account-query",
- "-host",
- "https://pigweed-review.googlesource.com",
- "-input",
- "{\"params\": {\"q\": \"email:owner@example.com\"}}",
- "-output",
- "/path/to/tmp/json"
- ],
- "luci_context": {
- "realm": {
- "name": "project:ci"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cc owner@example.com.owner@example.com",
- "timeout": 600,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@json.output@[@@@",
- "@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"_account_id\": 123@@@",
- "@@@STEP_LOG_LINE@json.output@ }@@@",
- "@@@STEP_LOG_LINE@json.output@]@@@",
- "@@@STEP_LOG_END@json.output@@@",
- "@@@STEP_LOG_LINE@json.input@{@@@",
- "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@",
- "@@@STEP_LOG_LINE@json.input@ \"q\": \"email:owner@example.com\"@@@",
- "@@@STEP_LOG_LINE@json.input@ }@@@",
- "@@@STEP_LOG_LINE@json.input@}@@@",
- "@@@STEP_LOG_END@json.input@@@"
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
]
},
{
@@ -1778,7 +1741,9 @@
"commit",
"-m",
"[roll a1] foo\nbar\n\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\na1 Rolled-Commits: 111111111111111..2d72510e447ab60\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
@@ -1899,7 +1864,7 @@
"-host",
"https://pigweed-review.googlesource.com",
"-input",
- "{\"change_id\": \"pigweed/pigweed~main~I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8\", \"input\": {\"reviewers\": [{\"reviewer\": \"author@example.com\", \"state\": \"CC\"}, {\"reviewer\": \"owner@example.com\", \"state\": \"CC\"}]}, \"revision_id\": \"current\"}",
+ "{\"change_id\": \"pigweed/pigweed~main~I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8\", \"input\": {\"reviewers\": [{\"reviewer\": \"author@example.com\", \"state\": \"CC\"}]}, \"revision_id\": \"current\"}",
"-output",
"/path/to/tmp/json"
],
@@ -1928,10 +1893,6 @@
"@@@STEP_LOG_LINE@json.input@ {@@@",
"@@@STEP_LOG_LINE@json.input@ \"reviewer\": \"author@example.com\", @@@",
"@@@STEP_LOG_LINE@json.input@ \"state\": \"CC\"@@@",
- "@@@STEP_LOG_LINE@json.input@ }, @@@",
- "@@@STEP_LOG_LINE@json.input@ {@@@",
- "@@@STEP_LOG_LINE@json.input@ \"reviewer\": \"owner@example.com\", @@@",
- "@@@STEP_LOG_LINE@json.input@ \"state\": \"CC\"@@@",
"@@@STEP_LOG_LINE@json.input@ }@@@",
"@@@STEP_LOG_LINE@json.input@ ]@@@",
"@@@STEP_LOG_LINE@json.input@ }, @@@",
diff --git a/recipes/submodule_roller.expected/relative-dotdot-dotdot-always-cc-reviewers.json b/recipes/submodule_roller.expected/relative-dotdot-dotdot-always-cc-reviewers.json
index a639111..97f8b7c 100644
--- a/recipes/submodule_roller.expected/relative-dotdot-dotdot-always-cc-reviewers.json
+++ b/recipes/submodule_roller.expected/relative-dotdot-dotdot-always-cc-reviewers.json
@@ -981,7 +981,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2d72510e447ab60a9728aeea2362d8be2cbd7789"
],
@@ -1198,18 +1198,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1561,6 +1565,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
@@ -1781,7 +1792,9 @@
"commit",
"-m",
"[roll a1] foo\nbar\n\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\na1 Rolled-Commits: 111111111111111..2d72510e447ab60\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/submodule_roller.expected/relative-dotdot.json b/recipes/submodule_roller.expected/relative-dotdot.json
index 8584825..43bbe35 100644
--- a/recipes/submodule_roller.expected/relative-dotdot.json
+++ b/recipes/submodule_roller.expected/relative-dotdot.json
@@ -981,7 +981,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2d72510e447ab60a9728aeea2362d8be2cbd7789"
],
@@ -1198,18 +1198,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1510,50 +1514,9 @@
},
{
"cmd": [],
- "name": "cc owner@example.com",
+ "name": "authors",
"~followup_annotations": [
- "@@@STEP_SUMMARY_TEXT@CCing@@@"
- ]
- },
- {
- "cmd": [
- "[START_DIR]/cipd_tool/path/to/gerrit/version%3Apinned-version/gerrit",
- "account-query",
- "-host",
- "https://pigweed-review.googlesource.com",
- "-input",
- "{\"params\": {\"q\": \"email:owner@example.com\"}}",
- "-output",
- "/path/to/tmp/json"
- ],
- "luci_context": {
- "realm": {
- "name": "project:ci"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cc owner@example.com.owner@example.com",
- "timeout": 600,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@json.output@[@@@",
- "@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"_account_id\": 123@@@",
- "@@@STEP_LOG_LINE@json.output@ }@@@",
- "@@@STEP_LOG_LINE@json.output@]@@@",
- "@@@STEP_LOG_END@json.output@@@",
- "@@@STEP_LOG_LINE@json.input@{@@@",
- "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@",
- "@@@STEP_LOG_LINE@json.input@ \"q\": \"email:owner@example.com\"@@@",
- "@@@STEP_LOG_LINE@json.input@ }@@@",
- "@@@STEP_LOG_LINE@json.input@}@@@",
- "@@@STEP_LOG_END@json.input@@@"
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
]
},
{
@@ -1778,7 +1741,9 @@
"commit",
"-m",
"[roll a1] foo\nbar\n\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\na1 Rolled-Commits: 111111111111111..2d72510e447ab60\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
@@ -1899,7 +1864,7 @@
"-host",
"https://pigweed-review.googlesource.com",
"-input",
- "{\"change_id\": \"pigweed/pigweed~main~I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8\", \"input\": {\"reviewers\": [{\"reviewer\": \"author@example.com\", \"state\": \"CC\"}, {\"reviewer\": \"owner@example.com\", \"state\": \"CC\"}]}, \"revision_id\": \"current\"}",
+ "{\"change_id\": \"pigweed/pigweed~main~I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8\", \"input\": {\"reviewers\": [{\"reviewer\": \"author@example.com\", \"state\": \"CC\"}]}, \"revision_id\": \"current\"}",
"-output",
"/path/to/tmp/json"
],
@@ -1928,10 +1893,6 @@
"@@@STEP_LOG_LINE@json.input@ {@@@",
"@@@STEP_LOG_LINE@json.input@ \"reviewer\": \"author@example.com\", @@@",
"@@@STEP_LOG_LINE@json.input@ \"state\": \"CC\"@@@",
- "@@@STEP_LOG_LINE@json.input@ }, @@@",
- "@@@STEP_LOG_LINE@json.input@ {@@@",
- "@@@STEP_LOG_LINE@json.input@ \"reviewer\": \"owner@example.com\", @@@",
- "@@@STEP_LOG_LINE@json.input@ \"state\": \"CC\"@@@",
"@@@STEP_LOG_LINE@json.input@ }@@@",
"@@@STEP_LOG_LINE@json.input@ ]@@@",
"@@@STEP_LOG_LINE@json.input@ }, @@@",
diff --git a/recipes/submodule_roller.expected/success-sso-cc-authors.json b/recipes/submodule_roller.expected/success-sso-cc-authors.json
index b919601..fe452b1 100644
--- a/recipes/submodule_roller.expected/success-sso-cc-authors.json
+++ b/recipes/submodule_roller.expected/success-sso-cc-authors.json
@@ -981,7 +981,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2d72510e447ab60a9728aeea2362d8be2cbd7789"
],
@@ -1198,18 +1198,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1510,50 +1514,9 @@
},
{
"cmd": [],
- "name": "cc owner@example.com",
+ "name": "authors",
"~followup_annotations": [
- "@@@STEP_SUMMARY_TEXT@CCing@@@"
- ]
- },
- {
- "cmd": [
- "[START_DIR]/cipd_tool/path/to/gerrit/version%3Apinned-version/gerrit",
- "account-query",
- "-host",
- "https://pigweed-review.googlesource.com",
- "-input",
- "{\"params\": {\"q\": \"email:owner@example.com\"}}",
- "-output",
- "/path/to/tmp/json"
- ],
- "luci_context": {
- "realm": {
- "name": "project:ci"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cc owner@example.com.owner@example.com",
- "timeout": 600,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@json.output@[@@@",
- "@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"_account_id\": 123@@@",
- "@@@STEP_LOG_LINE@json.output@ }@@@",
- "@@@STEP_LOG_LINE@json.output@]@@@",
- "@@@STEP_LOG_END@json.output@@@",
- "@@@STEP_LOG_LINE@json.input@{@@@",
- "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@",
- "@@@STEP_LOG_LINE@json.input@ \"q\": \"email:owner@example.com\"@@@",
- "@@@STEP_LOG_LINE@json.input@ }@@@",
- "@@@STEP_LOG_LINE@json.input@}@@@",
- "@@@STEP_LOG_END@json.input@@@"
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
]
},
{
@@ -1778,7 +1741,9 @@
"commit",
"-m",
"[roll a1] foo\nbar\n\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\na1 Rolled-Commits: 111111111111111..2d72510e447ab60\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/submodule_roller.expected/too-many-skip-deps.json b/recipes/submodule_roller.expected/too-many-skip-deps.json
index efb333f..09d9ba5 100644
--- a/recipes/submodule_roller.expected/too-many-skip-deps.json
+++ b/recipes/submodule_roller.expected/too-many-skip-deps.json
@@ -981,7 +981,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2d72510e447ab60a9728aeea2362d8be2cbd7789"
],
@@ -1198,18 +1198,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1294,18 +1298,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1390,18 +1398,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1486,18 +1498,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1582,18 +1598,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1678,18 +1698,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1774,18 +1798,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1870,18 +1898,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1966,18 +1998,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -2062,18 +2098,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -2140,50 +2180,9 @@
},
{
"cmd": [],
- "name": "cc owner@example.com",
+ "name": "authors",
"~followup_annotations": [
- "@@@STEP_SUMMARY_TEXT@CCing@@@"
- ]
- },
- {
- "cmd": [
- "[START_DIR]/cipd_tool/path/to/gerrit/version%3Apinned-version/gerrit",
- "account-query",
- "-host",
- "https://pigweed-review.googlesource.com",
- "-input",
- "{\"params\": {\"q\": \"email:owner@example.com\"}}",
- "-output",
- "/path/to/tmp/json"
- ],
- "luci_context": {
- "realm": {
- "name": "project:ci"
- },
- "resultdb": {
- "current_invocation": {
- "name": "invocations/build:8945511751514863184",
- "update_token": "token"
- },
- "hostname": "rdbhost"
- }
- },
- "name": "cc owner@example.com.owner@example.com",
- "timeout": 600,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@json.output@[@@@",
- "@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"_account_id\": 123@@@",
- "@@@STEP_LOG_LINE@json.output@ }@@@",
- "@@@STEP_LOG_LINE@json.output@]@@@",
- "@@@STEP_LOG_END@json.output@@@",
- "@@@STEP_LOG_LINE@json.input@{@@@",
- "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@",
- "@@@STEP_LOG_LINE@json.input@ \"q\": \"email:owner@example.com\"@@@",
- "@@@STEP_LOG_LINE@json.input@ }@@@",
- "@@@STEP_LOG_LINE@json.input@}@@@",
- "@@@STEP_LOG_END@json.input@@@"
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
]
},
{
@@ -2435,7 +2434,9 @@
"commit",
"-m",
"[a1] Roll 26 commits\n\naaaaaaaaaaaaaaa a\nbbbbbbbbbbbbbbb b\nccccccccccccccc c\nddddddddddddddd d\neeeeeeeeeeeeeee e\nfffffffffffffff f\nggggggggggggggg g\nhhhhhhhhhhhhhhh h\niiiiiiiiiiiiiii i\njjjjjjjjjjjjjjj j\nkkkkkkkkkkkkkkk k\nlllllllllllllll l\nmmmmmmmmmmmmmmm m\nnnnnnnnnnnnnnnn n\nooooooooooooooo o\nppppppppppppppp p\nqqqqqqqqqqqqqqq q\nrrrrrrrrrrrrrrr r\nsssssssssssssss s\nttttttttttttttt t\nuuuuuuuuuuuuuuu u\nvvvvvvvvvvvvvvv v\nwwwwwwwwwwwwwww w\nxxxxxxxxxxxxxxx x\nyyyyyyyyyyyyyyy y\nzzzzzzzzzzzzzzz z\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\na1 Rolled-Commits: 111111111111111..2d72510e447ab60\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/submodule_roller.expected/trigger-mismatch-equivalent.json b/recipes/submodule_roller.expected/trigger-mismatch-equivalent.json
index f362fad..0acb3b7 100644
--- a/recipes/submodule_roller.expected/trigger-mismatch-equivalent.json
+++ b/recipes/submodule_roller.expected/trigger-mismatch-equivalent.json
@@ -981,7 +981,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2d72510e447ab60a9728aeea2362d8be2cbd7789"
],
@@ -1198,18 +1198,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1462,6 +1466,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
@@ -1682,7 +1693,9 @@
"commit",
"-m",
"[roll a1] foo\nbar\n\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\na1 Rolled-Commits: 111111111111111..2d72510e447ab60\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/submodule_roller.expected/with-branch-prop-filter-emails.json b/recipes/submodule_roller.expected/with-branch-prop-filter-emails.json
index 24b84ac..9952de7 100644
--- a/recipes/submodule_roller.expected/with-branch-prop-filter-emails.json
+++ b/recipes/submodule_roller.expected/with-branch-prop-filter-emails.json
@@ -572,7 +572,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2222222222222222222222222222222222222222"
],
@@ -717,18 +717,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -972,13 +976,6 @@
},
{
"cmd": [],
- "name": "cc owner@example.com",
- "~followup_annotations": [
- "@@@STEP_SUMMARY_TEXT@not CCing, domain excluded@@@"
- ]
- },
- {
- "cmd": [],
"name": "cc reviewer@example.com",
"~followup_annotations": [
"@@@STEP_SUMMARY_TEXT@not CCing, domain excluded@@@"
@@ -993,6 +990,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
@@ -1141,7 +1145,9 @@
"commit",
"-m",
"[roll a1] foo\nbar\n\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\na1 Rolled-Commits: 111111111111111..222222222222222\nRoller-URL: https://ci.chromium.org/b/0\nCq-Cl-Tag: roller-builder:\nCq-Cl-Tag: roller-bid:0\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: Idcafe3609bd1c8c808cc0005865453850afdf06e",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/submodule_roller.expected/with-requires-already-applied.json b/recipes/submodule_roller.expected/with-requires-already-applied.json
index fec040e..1dedefb 100644
--- a/recipes/submodule_roller.expected/with-requires-already-applied.json
+++ b/recipes/submodule_roller.expected/with-requires-already-applied.json
@@ -1087,7 +1087,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2222222222222222222222222222222222222222"
],
@@ -1304,18 +1304,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1755,6 +1759,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
@@ -1978,7 +1989,9 @@
"commit",
"-m",
"[roll spam] module: Short commit summary\n\nLonger commit details.\n\nOriginal-Bug: 123\nReviewed-On: https://pigweed-review.googlesource.com/c/project/+/22222\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nspam Rolled-Commits: 111111111111111..222222222222222\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/submodule_roller.expected/with-requires-child.json b/recipes/submodule_roller.expected/with-requires-child.json
index a1c5436..7f2bc81 100644
--- a/recipes/submodule_roller.expected/with-requires-child.json
+++ b/recipes/submodule_roller.expected/with-requires-child.json
@@ -1087,7 +1087,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2222222222222222222222222222222222222222"
],
@@ -1304,18 +1304,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1979,7 +1983,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa..HASH"
],
@@ -2073,18 +2077,22 @@
"@@@STEP_NEST_LEVEL@2@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -2354,7 +2362,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa..HASH"
],
@@ -2448,18 +2456,22 @@
"@@@STEP_NEST_LEVEL@2@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -2474,6 +2486,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
@@ -2726,7 +2745,9 @@
"commit",
"-m",
"[roll ham, spam] Roll 2 commits\n\n[roll ham] module: Short commit summary\n\nLonger commit details.\n\nOriginal-Bug: 123\nReviewed-On: https://pigweed-review.googlesource.com/c/project/+/55555\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nham Rolled-Commits: aaaaaaaaaaaaaaa..HASH\n\n[roll spam] module: Short commit summary\n\nLonger commit details.\n\nOriginal-Bug: 123\nReviewed-On: https://pigweed-review.googlesource.com/c/project/+/22222\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nspam Rolled-Commits: 111111111111111..222222222222222\n\n\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/submodule_roller.expected/with-requires-forbidden.json b/recipes/submodule_roller.expected/with-requires-forbidden.json
index 20521e5..08a3162 100644
--- a/recipes/submodule_roller.expected/with-requires-forbidden.json
+++ b/recipes/submodule_roller.expected/with-requires-forbidden.json
@@ -1087,7 +1087,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2222222222222222222222222222222222222222"
],
@@ -1304,18 +1304,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1664,6 +1668,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
@@ -1887,7 +1898,9 @@
"commit",
"-m",
"[roll spam] module: Short commit summary\n\nLonger commit details.\n\nOriginal-Bug: 123\nReviewed-On: https://pigweed-review.googlesource.com/c/project/+/22222\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nspam Rolled-Commits: 111111111111111..222222222222222\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/submodule_roller.expected/with-requires-loop.json b/recipes/submodule_roller.expected/with-requires-loop.json
index 6b58011..03427f9 100644
--- a/recipes/submodule_roller.expected/with-requires-loop.json
+++ b/recipes/submodule_roller.expected/with-requires-loop.json
@@ -1087,7 +1087,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2222222222222222222222222222222222222222"
],
@@ -1304,18 +1304,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1901,7 +1905,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa..HASH"
],
@@ -1995,18 +1999,22 @@
"@@@STEP_NEST_LEVEL@2@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -2021,6 +2029,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
@@ -2273,7 +2288,9 @@
"commit",
"-m",
"[roll ham, spam] Roll 2 commits\n\n[roll ham] module: Short commit summary\n\nLonger commit details.\n\nOriginal-Bug: 123\nReviewed-On: https://pigweed-review.googlesource.com/c/project/+/22222\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nham Rolled-Commits: aaaaaaaaaaaaaaa..HASH\n\n[roll spam] module: Short commit summary\n\nLonger commit details.\n\nOriginal-Bug: 123\nReviewed-On: https://pigweed-review.googlesource.com/c/project/+/22222\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nspam Rolled-Commits: 111111111111111..222222222222222\n\n\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/submodule_roller.expected/with-requires-not-in-checkout.json b/recipes/submodule_roller.expected/with-requires-not-in-checkout.json
index 3027beb..1b302c7 100644
--- a/recipes/submodule_roller.expected/with-requires-not-in-checkout.json
+++ b/recipes/submodule_roller.expected/with-requires-not-in-checkout.json
@@ -1087,7 +1087,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2222222222222222222222222222222222222222"
],
@@ -1304,18 +1304,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1653,6 +1657,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
@@ -1876,7 +1887,9 @@
"commit",
"-m",
"[roll spam] module: Short commit summary\n\nLonger commit details.\n\nOriginal-Bug: 123\nReviewed-On: https://pigweed-review.googlesource.com/c/project/+/22222\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nspam Rolled-Commits: 111111111111111..222222222222222\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/submodule_roller.expected/with-requires-parent.json b/recipes/submodule_roller.expected/with-requires-parent.json
index b280bb5..97190eb 100644
--- a/recipes/submodule_roller.expected/with-requires-parent.json
+++ b/recipes/submodule_roller.expected/with-requires-parent.json
@@ -1087,7 +1087,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2222222222222222222222222222222222222222"
],
@@ -1304,18 +1304,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1979,7 +1983,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa..HASH"
],
@@ -2073,18 +2077,22 @@
"@@@STEP_NEST_LEVEL@2@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -2201,6 +2209,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
@@ -2453,7 +2468,9 @@
"commit",
"-m",
"[roll ham, spam] Roll 2 commits\n\n[roll ham] module: Short commit summary\n\nLonger commit details.\n\nOriginal-Bug: 123\nReviewed-On: https://pigweed-review.googlesource.com/c/project/+/44444\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nham Rolled-Commits: aaaaaaaaaaaaaaa..HASH\n\n[roll spam] module: Short commit summary\n\nLonger commit details.\n\nOriginal-Bug: 123\nReviewed-On: https://pigweed-review.googlesource.com/c/project/+/22222\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nspam Rolled-Commits: 111111111111111..222222222222222\n\n\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/submodule_roller.expected/with-requires-transitive.json b/recipes/submodule_roller.expected/with-requires-transitive.json
index ddba5a6..b5b315e 100644
--- a/recipes/submodule_roller.expected/with-requires-transitive.json
+++ b/recipes/submodule_roller.expected/with-requires-transitive.json
@@ -1087,7 +1087,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2222222222222222222222222222222222222222"
],
@@ -1304,18 +1304,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1978,7 +1982,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa..HASH"
],
@@ -2072,18 +2076,22 @@
"@@@STEP_NEST_LEVEL@2@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -2353,7 +2361,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa..HASH"
],
@@ -2447,18 +2455,22 @@
"@@@STEP_NEST_LEVEL@2@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -2473,6 +2485,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
@@ -2754,7 +2773,9 @@
"commit",
"-m",
"[roll eggs, ham, spam] Roll 3 commits\n\n[roll eggs] module: Short commit summary\n\nLonger commit details.\n\nOriginal-Bug: 123\nReviewed-On: https://pigweed-review.googlesource.com/c/project/+/22222\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\neggs Rolled-Commits: aaaaaaaaaaaaaaa..HASH\n\n[roll ham] module: Short commit summary\n\nLonger commit details.\n\nOriginal-Bug: 123\nReviewed-On: https://pigweed-review.googlesource.com/c/project/+/22222\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nham Rolled-Commits: aaaaaaaaaaaaaaa..HASH\n\n[roll spam] module: Short commit summary\n\nLonger commit details.\n\nOriginal-Bug: 123\nReviewed-On: https://pigweed-review.googlesource.com/c/project/+/22222\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nspam Rolled-Commits: 111111111111111..222222222222222\n\n\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/submodule_roller.expected/with-requires.json b/recipes/submodule_roller.expected/with-requires.json
index 7e6ab60..c0b97f3 100644
--- a/recipes/submodule_roller.expected/with-requires.json
+++ b/recipes/submodule_roller.expected/with-requires.json
@@ -1087,7 +1087,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2222222222222222222222222222222222222222"
],
@@ -1304,18 +1304,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1901,7 +1905,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa..HASH"
],
@@ -1995,18 +1999,22 @@
"@@@STEP_NEST_LEVEL@2@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -2021,6 +2029,13 @@
},
{
"cmd": [],
+ "name": "authors",
+ "~followup_annotations": [
+ "@@@STEP_SUMMARY_TEXT@{Account(name='author', email='author@example.com')}@@@"
+ ]
+ },
+ {
+ "cmd": [],
"name": "roll message"
},
{
@@ -2273,7 +2288,9 @@
"commit",
"-m",
"[roll ham, spam] Roll 2 commits\n\n[roll ham] module: Short commit summary\n\nLonger commit details.\n\nOriginal-Bug: 123\nReviewed-On: https://pigweed-review.googlesource.com/c/project/+/22222\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nham Rolled-Commits: aaaaaaaaaaaaaaa..HASH\n\n[roll spam] module: Short commit summary\n\nLonger commit details.\n\nOriginal-Bug: 123\nReviewed-On: https://pigweed-review.googlesource.com/c/project/+/22222\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nspam Rolled-Commits: 111111111111111..222222222222222\n\n\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I27ec3e6a65adbbeb0f5d0b74ef7036a069efcfe8",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/submodule_roller.proto b/recipes/submodule_roller.proto
index d40bb95..a5ee1b3 100644
--- a/recipes/submodule_roller.proto
+++ b/recipes/submodule_roller.proto
@@ -20,9 +20,6 @@
// The path of the submodule to update. Required.
string submodule_path = 1;
- // The hash to update to. Default: get from buildbucket.
- string new_revision = 2;
-
// Branch to get latest from when new_revision is None and no buildbucket
// trigger.
string submodule_branch = 3;
@@ -53,4 +50,8 @@
// Vote Bot-Commit+1 instead of Code-Review+2.
bool bot_commit = 10;
+
+ // Forge the author so rolls of single commits are attributed to the original
+ // commit author.
+ bool forge_author = 11;
}
diff --git a/recipes/submodule_roller.py b/recipes/submodule_roller.py
index 0e9c5c1..af35c74 100644
--- a/recipes/submodule_roller.py
+++ b/recipes/submodule_roller.py
@@ -289,8 +289,9 @@
_process_deps(api, rolls, submodules, gerrit_name)
cc = set()
+ authors = api.roll_util.authors(*rolls.values())
if cc_authors_on_rolls:
- cc.update(api.roll_util.authors(*rolls.values()))
+ cc.update(authors)
if cc_reviewers_on_rolls:
cc.update(api.roll_util.reviewers(*rolls.values()))
@@ -305,9 +306,17 @@
roll_kwargs = {}
if always_cc:
- roll_kwargs['cc'] = cc
+ roll_kwargs['cc'] = [x.email for x in cc]
else:
- roll_kwargs['cc_on_failure'] = cc
+ roll_kwargs['cc_on_failure'] = [x.email for x in cc]
+
+ author_override = None
+ with api.step.nest('authors') as pres:
+ pres.step_summary_text = repr(authors)
+ if len(authors) == 1 and props.forge_author:
+ author_override = api.roll_util.fake_author(
+ next(iter(authors))
+ )._asdict()
change = api.auto_roller.attempt_roll(
gerrit_host=api.checkout.gerrit_host(),
@@ -319,6 +328,7 @@
labels_to_set=api.roll_util.labels_to_set,
labels_to_wait_on=api.roll_util.labels_to_wait_on,
bot_commit=props.bot_commit,
+ author_override=author_override,
**roll_kwargs
)
@@ -361,8 +371,9 @@
def properties(**kwargs):
new_kwargs = api.checkout.git_properties()
+ new_kwargs['forge_author'] = True
+ new_kwargs['dry_run'] = True
new_kwargs.update(kwargs)
- new_kwargs.setdefault('dry_run', True)
return api.properties(**new_kwargs)
def commit_data(name, **kwargs):
diff --git a/recipes/txt_roller.expected/no-trigger.json b/recipes/txt_roller.expected/no-trigger.json
index 16412b5..13325e6 100644
--- a/recipes/txt_roller.expected/no-trigger.json
+++ b/recipes/txt_roller.expected/no-trigger.json
@@ -1238,7 +1238,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2222222222222222222222222222222222222222"
],
@@ -1296,18 +1296,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -1470,7 +1474,9 @@
"commit",
"-m",
"[roll foo.txt] foo\nbar\n\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nfoo.txt Rolled-Commits: 111111111111111..222222222222222\nRoller-URL: https://ci.chromium.org/b/0\nCq-Cl-Tag: roller-builder:\nCq-Cl-Tag: roller-bid:0\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: Ib92a62842ab6b0cc6777dcd33fb1c8532c7396ad",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/txt_roller.expected/success.json b/recipes/txt_roller.expected/success.json
index 35959b9..d0bed31 100644
--- a/recipes/txt_roller.expected/success.json
+++ b/recipes/txt_roller.expected/success.json
@@ -2024,7 +2024,7 @@
"cmd": [
"git",
"log",
- "--pretty=format:%H\n%ae\n%B",
+ "--pretty=format:%H\n%an\n%ae\n%B",
"-z",
"1111111111111111111111111111111111111111..2d72510e447ab60a9728aeea2362d8be2cbd7789"
],
@@ -2118,18 +2118,22 @@
"@@@STEP_NEST_LEVEL@1@@@",
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"owner\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"owner@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"author@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"author\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ \"reviewers\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"REVIEWER\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"reviewer@example.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"reviewer\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"nobody@google.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"nobody\"@@@",
"@@@STEP_LOG_LINE@json.output@ }, @@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"email\": \"robot@gserviceaccount.com\", @@@",
+ "@@@STEP_LOG_LINE@json.output@ \"name\": \"robot\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
@@ -2364,7 +2368,9 @@
"commit",
"-m",
"[roll foo.txt] foo\nbar\n\n\nhttps://pigweed.googlesource.com/pigweed/pigweed\nfoo.txt Rolled-Commits: 111111111111111..2d72510e447ab60\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c",
- "-a"
+ "-a",
+ "--author",
+ "author <author@pigweed.infra.roller.example.com>"
],
"cwd": "[START_DIR]/checkout",
"infra_step": true,
diff --git a/recipes/txt_roller.proto b/recipes/txt_roller.proto
index 3c83ffb..d1bd96b 100644
--- a/recipes/txt_roller.proto
+++ b/recipes/txt_roller.proto
@@ -32,4 +32,8 @@
// Vote Bot-Commit+1 instead of Code-Review+2.
bool bot_commit = 5;
+
+ // Forge the author so rolls of single commits are attributed to the original
+ // commit author.
+ bool forge_author = 6;
}
diff --git a/recipes/txt_roller.py b/recipes/txt_roller.py
index d1bfc41..f855f0b 100644
--- a/recipes/txt_roller.py
+++ b/recipes/txt_roller.py
@@ -116,6 +116,14 @@
),
}
+ authors = api.roll_util.authors(*rolls.values())
+
+ author_override = None
+ if len(authors) == 1 and props.forge_author:
+ author_override = api.roll_util.fake_author(
+ next(iter(authors))
+ )._asdict()
+
change = api.auto_roller.attempt_roll(
gerrit_host=api.checkout.gerrit_host(),
gerrit_project=api.checkout.gerrit_project(),
@@ -126,6 +134,7 @@
labels_to_set=api.roll_util.labels_to_set,
labels_to_wait_on=api.roll_util.labels_to_wait_on,
bot_commit=props.bot_commit,
+ author_override=author_override,
)
return api.auto_roller.raw_result(change)
@@ -143,6 +152,7 @@
def properties(**kwargs):
new_kwargs = api.checkout.git_properties()
+ new_kwargs['forge_author'] = True
new_kwargs.update(kwargs)
return api.properties(**new_kwargs)