From 05a49ff052f6ccde485197c71f00688a09f09017 Mon Sep 17 00:00:00 2001 From: Thomas Stringer Date: Fri, 11 Nov 2022 17:59:51 -0500 Subject: [PATCH] Fix bug with period in org team name (#60) Currently if you have an org team name with a period in it, the team will not be found with a 404 response. This is because the GitHub API requires that the periods are replaced with hyphens. This PR fixes this behavior and closes #55. Signed-off-by: Thomas Stringer --- approvers.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/approvers.go b/approvers.go index d7aae15..c3f129f 100644 --- a/approvers.go +++ b/approvers.go @@ -58,7 +58,13 @@ func retrieveApprovers(client *github.Client, repoOwner string) ([]string, error func expandGroupFromUser(client *github.Client, org, userOrTeam string, workflowInitiator string, shouldExcludeWorkflowInitiator bool) []string { fmt.Printf("Attempting to expand user %s/%s as a group (may not succeed)\n", org, userOrTeam) - users, _, err := client.Teams.ListTeamMembersBySlug(context.Background(), org, userOrTeam, &github.TeamListTeamMembersOptions{}) + + // GitHub replaces periods in the team name with hyphens. If a period is + // passed to the request it would result in a 404. So we need to replace + // and occurrences with a hyphen. + formattedUserOrTeam := strings.ReplaceAll(userOrTeam, ".", "-") + + users, _, err := client.Teams.ListTeamMembersBySlug(context.Background(), org, formattedUserOrTeam, &github.TeamListTeamMembersOptions{}) if err != nil { fmt.Printf("%v\n", err) return nil