Skip to content

Commit 25d71c4

Browse files
authored
Adding checks for pull request (#194)
1 parent a15ae76 commit 25d71c4

File tree

1 file changed

+19
-4
lines changed

1 file changed

+19
-4
lines changed

code_review.py

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,19 +36,34 @@ def get_openai_session() -> OpenAI:
3636
def get_repo_and_pr() -> dict:
3737
repo_and_pr: dict[str, list[object]] = {}
3838
repo_and_pr = {"repo": [], "pr": []}
39+
github_ref = os.getenv("GITHUB_REF")
40+
github_repo = os.getenv("GITHUB_REPOSITORY")
3941

4042
log.info("Getting repo and pull request from runner environment...")
4143

42-
if not os.getenv("GITHUB_REF"):
44+
if not github_ref:
4345
log.error("Cannot find pull request, exiting!")
4446
raise SystemExit(1)
4547

46-
if not os.getenv("GITHUB_REPOSITORY"):
48+
# If the split from GITHUB_REF is not an int, exit
49+
parts = github_ref.split("/")
50+
if "pull" in parts:
51+
try:
52+
pr_index = parts.index("pull") + 1
53+
pr_number = int(parts[pr_index])
54+
repo_and_pr["pr"].append(pr_number)
55+
except (ValueError, IndexError):
56+
log.error(f"GITHUB_REF does not contain a valid PR number: {github_ref}")
57+
raise SystemExit(1)
58+
else:
59+
log.error("GITHUB_REF does not reference a pull request")
60+
raise SystemExit(1)
61+
62+
if not github_repo:
4763
log.error("Cannot get repository name, exiting!")
4864
raise SystemExit(1)
4965

50-
repo_and_pr["repo"].append(os.getenv("GITHUB_REPOSITORY"))
51-
repo_and_pr["pr"].append(int(os.getenv("GITHUB_REF").split("/")[2]))
66+
repo_and_pr["repo"].append(github_repo)
5267

5368
return repo_and_pr
5469

0 commit comments

Comments
 (0)