Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 10 additions & 5 deletions scripts/ci.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,8 @@ def has_remote_branch(repo_dir, branch_name):

def update_repo(repo_dir, branch_name):
"""
Attempt to update the repository to the given branch name
Attempt to update the repository to the given branch name, if it exists.
Otherwise tries the branch name set by `GITHUB_BASE_REF`, if it exists.
"""
branch_name = branch_name.removeprefix(GIT_ORIGIN_REFIX)
curr_branch = get_current_branch(repo_dir)
Expand All @@ -69,14 +70,18 @@ def update_repo(repo_dir, branch_name):
vprint("branches match already, nothing to do")
return

has_branch = has_remote_branch(repo_dir, branch_name)
if has_branch:
base_branch = os.environ.get("GITHUB_BASE_REF")

if has_remote_branch(repo_dir, branch_name):
vprint(f"repo has target branch `{branch_name}`: {has_branch}...updating")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: This vprint still references the now-nonexistent has_branch variable.

pout = shell(f"git switch {branch_name}", cwd=repo_dir)
vprint(pout.stdout.decode("utf-8"))
elif (base_branch != curr_branch) and has_remote_branch(repo_dir, base_branch):
vprint(f"repo does not have target branch ${branch_name}, but has base branch {base_branch}...updating")
pout = shell(f"git switch {base_branch}", cwd=repo_dir)
vprint(pout.stdout.decode("utf-8"))
else:
vprint(f"repo does not have target branch `{branch_name}`, leaving at {curr_branch}")

vprint(f"repo does not have target branch {branch_name} nor base_branch ${base_branch}, leaving at {curr_branch}")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: Unnecessary $

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Kotlin brain


def _get_branch_cmd(opts):
branch = "main"
Expand Down