55 "encoding/json"
66 "errors"
77 "fmt"
8- "io/ioutil"
98 "net/http"
109 "os"
1110 "strconv"
@@ -40,15 +39,6 @@ const (
4039 OperationStatusError = "Error"
4140)
4241
43- func getTokenRemainingValidity (timestamp interface {}) float64 {
44- if validity , ok := timestamp .(float64 ); ok {
45- tm := time .Unix (int64 (validity ), 0 )
46- remainder := time .Until (tm )
47- return remainder .Seconds ()
48- }
49- return 0
50- }
51-
5242func getGitHubClient () (* github.Client , context.Context , error ) {
5343 pat := os .Getenv ("INPUT_PAT" )
5444 if len (pat ) == 0 {
@@ -159,22 +149,12 @@ func getPullRequestDetailsFromEnvironment(isDebugMode bool) (*PullRequestDetails
159149
160150func submitPRDetailsAndGetCodeFeedback (prDetails * PullRequestDetails , isDebugMode bool ) (bool , error ) {
161151 responseReceived := false
162- audience := APIEndpoint
163- oidcClient , err := DefaultOIDCClient (audience )
164- if err != nil {
165- return responseReceived , fmt .Errorf ("error generating OIDC auth token. error:%v" , err )
166- }
167-
168- actionsJWT , exp , err := getActionsJWTAndExp (oidcClient , isDebugMode )
169- if err != nil {
170- return responseReceived , fmt .Errorf ("error generating OIDC auth token. error:%v" , err )
171- }
172152
173153 apiClient := ApiClient {
174154 Client : & http.Client {},
175155 ApiBaseURI : APIEndpoint + "/v1/app/" ,
176156 }
177- response , err := apiClient .SubmitCodeReviewRequest (actionsJWT . Value , prDetails )
157+ response , err := apiClient .SubmitCodeReviewRequest (prDetails )
178158 if err != nil {
179159 return responseReceived , fmt .Errorf ("error submitting code review request: %v" , err )
180160 }
@@ -185,15 +165,7 @@ func submitPRDetailsAndGetCodeFeedback(prDetails *PullRequestDetails, isDebugMod
185165 var reviewComments * CodeReviewCommentsResponse
186166
187167 for i := 0 ; i < 20 && ! responseReceived ; i ++ {
188- remainder := getTokenRemainingValidity (exp )
189- if remainder < 60 {
190- githubactions .Infof ("Renewing OIDC token as it's only valid for %f" , remainder )
191- actionsJWT , exp , err = getActionsJWTAndExp (oidcClient , isDebugMode )
192- if err != nil {
193- return responseReceived , fmt .Errorf ("error renewing OIDC token. Error: %v" , err )
194- }
195- }
196- reviewComments , err = apiClient .GetCodeReviewComments (actionsJWT .Value , response )
168+ reviewComments , err = apiClient .GetCodeReviewComments (response )
197169 if err != nil {
198170 return responseReceived , fmt .Errorf ("error retrieving code review comments: %v" , err )
199171 }
@@ -204,30 +176,7 @@ func submitPRDetailsAndGetCodeFeedback(prDetails *PullRequestDetails, isDebugMod
204176 responseReceived = true
205177 if reviewComments .Status == OperationStatusError {
206178 message := fmt .Sprintf ("Error while using StepSecurity AI Code Reviewer. \n Error details:%s" , reviewComments .Error )
207- client , ctx , err := getGitHubClient ()
208- if err != nil {
209- return responseReceived , fmt .Errorf ("error getting github client:%v" , err )
210- }
211- comment := "COMMENT"
212- _ , commentResponse , err := client .PullRequests .CreateReview (
213- ctx ,
214- prDetails .GitHubAccountName ,
215- prDetails .RepositoryName ,
216- prDetails .PullNumber ,
217- & github.PullRequestReviewRequest {
218- Body : & message ,
219- Event : & comment ,
220- })
221- if err != nil {
222- errorMessage := fmt .Sprintf ("Error writing comment on pull request: %v\n " , err )
223- responseBody , err := ioutil .ReadAll (commentResponse .Body )
224- if err == nil {
225- errorMessage += fmt .Sprintf (" response body:%s" , responseBody )
226- } else {
227- errorMessage += fmt .Sprintf (" could not retrieve response body for error details. error:%v" , err )
228- }
229- return responseReceived , errors .New (errorMessage )
230- }
179+ githubactions .Errorf (message )
231180 }
232181 break
233182 }
@@ -259,22 +208,6 @@ func main() {
259208
260209 if ! responseReceived {
261210 message := "StepSecurity AI Code Reviewer request timed out after 10 minutes"
262- comment := "COMMENT"
263- client , ctx , err := getGitHubClient ()
264- if err != nil {
265- githubactions .Errorf ("error getting github client:%v" , err )
266- return
267- }
268- client .PullRequests .CreateReview (
269- ctx ,
270- prDetails .GitHubAccountName ,
271- prDetails .RepositoryName ,
272- prDetails .PullNumber ,
273- & github.PullRequestReviewRequest {
274- Body : & message ,
275- Event : & comment ,
276- })
277-
278211 githubactions .Fatalf (message )
279212 }
280213}
0 commit comments