Skip to content

Commit

Permalink
Merge pull request #68 from dfinity/small-refactor
Browse files Browse the repository at this point in the history
chore(IDX): small refactor
  • Loading branch information
cgundy authored Dec 3, 2024
2 parents 4f69407 + 0808b96 commit 7d6a08c
Showing 1 changed file with 13 additions and 11 deletions.
24 changes: 13 additions & 11 deletions reusable_workflows/check_membership/check_membership.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,18 @@ def is_member_of_org(gh: github3.login, org: str, user: str) -> bool:
return gh.organization(org).is_member(user)


def is_approved_member(gh: github3.login, org: str, user: str):
if is_member_of_org(gh, org, user):
print(f"{user} is member of {org} and can contribute.")
return True
elif is_approved_bot(user):
print(f"{user} is an approved bot and can contribute.")
return True
else:
print(f"{user} is an external contributor.")
return False


def main() -> None:
org = os.environ["GH_ORG"]
gh_token = os.environ["GH_TOKEN"]
Expand All @@ -37,17 +49,7 @@ def main() -> None:
if not gh:
raise Exception("github login failed - maybe GH_TOKEN was not correctly set")

is_member = is_member_of_org(gh, org, user)
is_bot = is_approved_bot(user)

org_member = is_member or is_bot

if is_bot:
print(f"{user} is an approved bot and can contribute.")
if is_member:
print(f"{user} is member of {org} and can contribute.")
elif not org_member:
print(f"{user} is an external contributor.")
org_member = is_approved_member(gh, org, user)

os.system(f"""echo 'is_member={org_member}' >> $GITHUB_OUTPUT""")

Expand Down

0 comments on commit 7d6a08c

Please sign in to comment.