Skip to content

Commit

Permalink
Use the person triggering the release workflow as the conductor
Browse files Browse the repository at this point in the history
  • Loading branch information
Henry Mercer committed Mar 24, 2022
1 parent b386fd4 commit 81827d3
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 13 deletions.
21 changes: 9 additions & 12 deletions .github/update-release-branch.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ def branch_exists_on_remote(branch_name):
return run_git('ls-remote', '--heads', ORIGIN, branch_name).strip() != ''

# Opens a PR from the given branch to the release branch
def open_pr(repo, all_commits, short_main_sha, new_branch_name, source_branch, target_branch):
def open_pr(repo, all_commits, short_main_sha, new_branch_name, source_branch, target_branch, conductor):
# Sort the commits into the pull requests that introduced them,
# and any commits that don't have a pull request
pull_requests = []
Expand All @@ -54,7 +54,6 @@ def open_pr(repo, all_commits, short_main_sha, new_branch_name, source_branch, t
body = []
body.append('Merging ' + short_main_sha + ' into ' + target_branch)

conductor = get_conductor(repo, pull_requests, commits_without_pull_requests)
body.append('')
body.append('Conductor for this PR is @' + conductor)

Expand Down Expand Up @@ -93,15 +92,6 @@ def open_pr(repo, all_commits, short_main_sha, new_branch_name, source_branch, t
pr.add_to_assignees(conductor)
print('Assigned PR to ' + conductor)

# Gets the person who should be in charge of the mergeback PR
def get_conductor(repo, pull_requests, other_commits):
# If there are any PRs then use whoever merged the last one
if len(pull_requests) > 0:
return get_merger_of_pr(repo, pull_requests[-1])

# Otherwise take the author of the latest commit
return other_commits[-1].author.login

# Gets a list of the SHAs of all commits that have happened on main
# since the release branched off.
# This will not include any commits that exist on the release branch
Expand Down Expand Up @@ -196,6 +186,12 @@ def main():
required=True,
help='The branch being merged into, typically "v2" for a v2 release or "v1" for a v1 release.'
)
parser.add_argument(
'--conductor',
type=str,
required=True,
help='The GitHub handle of the person who is conducting the release process.'
)

args = parser.parse_args()

Expand Down Expand Up @@ -245,7 +241,8 @@ def main():
short_main_sha,
new_branch_name,
source_branch=args.source_branch,
target_branch=args.target_branch
target_branch=args.target_branch,
conductor=args.conductor
)

if __name__ == '__main__':
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/update-release-branch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,5 @@ jobs:
--github-token ${{ secrets.GITHUB_TOKEN }} \
--repository-nwo ${{ github.repository }} \
--source-branch main \
--target-branch v1
--target-branch v1 \
--conductor ${GITHUB_ACTOR}

0 comments on commit 81827d3

Please sign in to comment.