@@ -97,6 +97,23 @@ func handlePullRequestEvent(event *github.PullRequestEvent, client *github.Clien
9797 owner := event .GetRepo ().GetOwner ().GetLogin ()
9898 repo := event .GetRepo ().GetName ()
9999 prNumber := event .GetPullRequest ().GetNumber ()
100+ sha := event .GetPullRequest ().GetHead ().GetSHA ()
101+
102+ if minApprovals == 0 {
103+ if action == "reopened" {
104+ if err := pullrequest .AddComment (owner , repo , prNumber , ApprovalResetComment , client , logger ); err != nil {
105+ logger .Error ("failed to add comment" , slog .String ("error" , err .Error ()))
106+ }
107+ }
108+ if _ , _ , err := client .Issues .AddLabelsToIssue (ctx , owner , repo , prNumber , []string {"lgtm" }); err != nil {
109+ logger .Error ("failed to add lgtm label" , slog .String ("error" , err .Error ()))
110+ return
111+ }
112+ if _ , err := checkrun .CreateCheckRun (owner , repo , sha , "success" , "Approved and ready for merge" , client , logger ); err != nil {
113+ logger .Error ("failed to create check run" , slog .String ("error" , err .Error ()))
114+ }
115+ return
116+ }
100117
101118 if _ , _ , err := client .Issues .AddLabelsToIssue (ctx , owner , repo , prNumber , []string {"do-not-merge" }); err != nil {
102119 logger .Error ("failed to add do-not-merge label" , slog .String ("error" , err .Error ()))
@@ -113,26 +130,6 @@ func handlePullRequestEvent(event *github.PullRequestEvent, client *github.Clien
113130 }
114131 }
115132
116- sha , err := pullrequest .GetPRSHA (owner , repo , prNumber , client , logger )
117- if err != nil {
118- logger .Error ("failed to get PR SHA" , slog .String ("error" , err .Error ()))
119- return
120- }
121-
122- if minApprovals == 0 {
123- if _ , _ , err := client .Issues .AddLabelsToIssue (ctx , owner , repo , prNumber , []string {"lgtm" }); err != nil {
124- logger .Error ("failed to add lgtm label" , slog .String ("error" , err .Error ()))
125- return
126- }
127- if _ , err := client .Issues .RemoveLabelForIssue (ctx , owner , repo , prNumber , "do-not-merge" ); err != nil {
128- logger .Warn ("failed to remove do-not-merge label" , slog .String ("error" , err .Error ()))
129- }
130- if _ , err := checkrun .CreateCheckRun (owner , repo , sha , "success" , "Approved and ready for merge" , client , logger ); err != nil {
131- logger .Error ("failed to create check run" , slog .String ("error" , err .Error ()))
132- }
133- return
134- }
135-
136133 if _ , err := checkrun .CreateCheckRun (owner , repo , sha , "neutral" , "Approval needed" , client , logger ); err != nil {
137134 logger .Error ("failed to create check run" , slog .String ("error" , err .Error ()))
138135 }
0 commit comments