@@ -169,7 +169,7 @@ Loop:
169169}
170170
171171// SignWikiCommit determines if we should sign the commits to this repository wiki
172- func SignWikiCommit (ctx context.Context , repo * repo_model.Repository , u * user_model.User ) (bool , * git.SigningKey , * git.Signature , error ) {
172+ func SignWikiCommit (ctx context.Context , repo * repo_model.Repository , gitRepo * git. Repository , u * user_model.User ) (bool , * git.SigningKey , * git.Signature , error ) {
173173 rules := signingModeFromStrings (setting .Repository .Signing .Wiki )
174174 signingKey , sig := gitrepo .GetSigningKey (ctx )
175175 if signingKey == nil {
@@ -200,11 +200,6 @@ Loop:
200200 return false , nil , nil , & ErrWontSign {twofa }
201201 }
202202 case parentSigned :
203- gitRepo , err := gitrepo .OpenRepository (ctx , repo .WikiStorageRepo ())
204- if err != nil {
205- return false , nil , nil , err
206- }
207- defer gitRepo .Close ()
208203 commit , err := gitRepo .GetCommit ("HEAD" )
209204 if err != nil {
210205 return false , nil , nil , err
@@ -222,7 +217,7 @@ Loop:
222217}
223218
224219// SignCRUDAction determines if we should sign a CRUD commit to this repository
225- func SignCRUDAction (ctx context.Context , u * user_model.User , tmpBasePath , parentCommit string ) (bool , * git.SigningKey , * git.Signature , error ) {
220+ func SignCRUDAction (ctx context.Context , u * user_model.User , gitRepo * git. Repository , parentCommit string ) (bool , * git.SigningKey , * git.Signature , error ) {
226221 rules := signingModeFromStrings (setting .Repository .Signing .CRUDActions )
227222 signingKey , sig := git .GetSigningKey (ctx )
228223 if signingKey == nil {
@@ -253,11 +248,6 @@ Loop:
253248 return false , nil , nil , & ErrWontSign {twofa }
254249 }
255250 case parentSigned :
256- gitRepo , err := git .OpenRepository (ctx , tmpBasePath )
257- if err != nil {
258- return false , nil , nil , err
259- }
260- defer gitRepo .Close ()
261251 isEmpty , err := gitRepo .IsEmpty ()
262252 if err != nil {
263253 return false , nil , nil , err
@@ -281,7 +271,7 @@ Loop:
281271}
282272
283273// SignMerge determines if we should sign a PR merge commit to the base repository
284- func SignMerge (ctx context.Context , pr * issues_model.PullRequest , u * user_model.User , tmpBasePath , baseCommit , headCommit string ) (bool , * git.SigningKey , * git.Signature , error ) {
274+ func SignMerge (ctx context.Context , pr * issues_model.PullRequest , u * user_model.User , gitRepo * git. Repository , baseCommit , headCommit string ) (bool , * git.SigningKey , * git.Signature , error ) {
285275 if err := pr .LoadBaseRepo (ctx ); err != nil {
286276 log .Error ("Unable to get Base Repo for pull request" )
287277 return false , nil , nil , err
@@ -294,9 +284,6 @@ func SignMerge(ctx context.Context, pr *issues_model.PullRequest, u *user_model.
294284 }
295285 rules := signingModeFromStrings (setting .Repository .Signing .Merges )
296286
297- var gitRepo * git.Repository
298- var err error
299-
300287Loop:
301288 for _ , rule := range rules {
302289 switch rule {
@@ -332,13 +319,6 @@ Loop:
332319 return false , nil , nil , & ErrWontSign {approved }
333320 }
334321 case baseSigned :
335- if gitRepo == nil {
336- gitRepo , err = git .OpenRepository (ctx , tmpBasePath )
337- if err != nil {
338- return false , nil , nil , err
339- }
340- defer gitRepo .Close ()
341- }
342322 commit , err := gitRepo .GetCommit (baseCommit )
343323 if err != nil {
344324 return false , nil , nil , err
@@ -348,13 +328,6 @@ Loop:
348328 return false , nil , nil , & ErrWontSign {baseSigned }
349329 }
350330 case headSigned :
351- if gitRepo == nil {
352- gitRepo , err = git .OpenRepository (ctx , tmpBasePath )
353- if err != nil {
354- return false , nil , nil , err
355- }
356- defer gitRepo .Close ()
357- }
358331 commit , err := gitRepo .GetCommit (headCommit )
359332 if err != nil {
360333 return false , nil , nil , err
@@ -364,13 +337,6 @@ Loop:
364337 return false , nil , nil , & ErrWontSign {headSigned }
365338 }
366339 case commitsSigned :
367- if gitRepo == nil {
368- gitRepo , err = git .OpenRepository (ctx , tmpBasePath )
369- if err != nil {
370- return false , nil , nil , err
371- }
372- defer gitRepo .Close ()
373- }
374340 commit , err := gitRepo .GetCommit (headCommit )
375341 if err != nil {
376342 return false , nil , nil , err
0 commit comments