diff --git a/roll_dep.py b/roll_dep.py index 174805458..616fb6036 100755 --- a/roll_dep.py +++ b/roll_dep.py @@ -22,6 +22,25 @@ GCLIENT_PATH = os.path.join( os.path.dirname(os.path.abspath(__file__)), 'gclient.py') +# Commit subject that will be considered a roll. In the format generated by the +# git log used, so it's "-- " +_ROLL_SUBJECT = re.compile( + # Date + r'^\d\d\d\d-\d\d-\d\d ' + # Author + r'[^ ]+ ' + # Subject + r'(' + # Generated by + # https://skia.googlesource.com/buildbot/+/master/autoroll/go/repo_manager/deps_repo_manager.go + r'Roll [^ ]+ [a-f0-9]+\.\.[a-f0-9]+ \(\d+ commits\)' + r'|' + # Generated by + # https://chromium.googlesource.com/infra/infra/+/master/recipes/recipe_modules/recipe_autoroller/api.py + r'Roll recipe dependencies \(trivial\)\.' + r')$') + + class Error(Exception): pass @@ -90,10 +109,7 @@ def generate_commit_message( cwd=full_dir).rstrip() logs = re.sub(r'(?m)^(\d\d\d\d-\d\d-\d\d [^@]+)@[^ ]+( .*)$', r'\1\2', logs) lines = logs.splitlines() - cleaned_lines = [ - l for l in lines - if not l.endswith('Roll recipe dependencies (trivial).') - ] + cleaned_lines = [l for l in lines if not _ROLL_SUBJECT.match(l)] logs = '\n'.join(cleaned_lines) + '\n' nb_commits = len(lines)