Skip to content

Commit d32eac4

Browse files
lunnysapk
andcommitted
Move RepoWorkingPool to services/repository package (#9754)
* Move RepoWorkingPool to services/repository package * Make repoWorkingPool private Co-authored-by: Antoine GIRARD <[email protected]>
1 parent fd76170 commit d32eac4

File tree

2 files changed

+10
-10
lines changed

2 files changed

+10
-10
lines changed

models/repo.go

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,17 +33,13 @@ import (
3333
"code.gitea.io/gitea/modules/setting"
3434
"code.gitea.io/gitea/modules/structs"
3535
api "code.gitea.io/gitea/modules/structs"
36-
"code.gitea.io/gitea/modules/sync"
3736
"code.gitea.io/gitea/modules/timeutil"
3837
"code.gitea.io/gitea/modules/util"
3938

4039
"github.com/unknwon/com"
4140
"xorm.io/builder"
4241
)
4342

44-
// RepoWorkingPool represents a working pool to order the parallel changes to the same repository
45-
var RepoWorkingPool = sync.NewExclusivePool()
46-
4743
var (
4844
// ErrMirrorNotExist mirror does not exist error
4945
ErrMirrorNotExist = errors.New("Mirror does not exist")

services/repository/transfer.go

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,14 @@ package repository
77
import (
88
"code.gitea.io/gitea/models"
99
"code.gitea.io/gitea/modules/notification"
10+
"code.gitea.io/gitea/modules/sync"
1011

1112
"github.com/unknwon/com"
1213
)
1314

15+
// repoWorkingPool represents a working pool to order the parallel changes to the same repository
16+
var repoWorkingPool = sync.NewExclusivePool()
17+
1418
// TransferOwnership transfers all corresponding setting from old user to new one.
1519
func TransferOwnership(doer *models.User, newOwnerName string, repo *models.Repository) error {
1620
if err := repo.GetOwner(); err != nil {
@@ -19,12 +23,12 @@ func TransferOwnership(doer *models.User, newOwnerName string, repo *models.Repo
1923

2024
oldOwner := repo.Owner
2125

22-
models.RepoWorkingPool.CheckIn(com.ToStr(repo.ID))
26+
repoWorkingPool.CheckIn(com.ToStr(repo.ID))
2327
if err := models.TransferOwnership(doer, newOwnerName, repo); err != nil {
24-
models.RepoWorkingPool.CheckOut(com.ToStr(repo.ID))
28+
repoWorkingPool.CheckOut(com.ToStr(repo.ID))
2529
return err
2630
}
27-
models.RepoWorkingPool.CheckOut(com.ToStr(repo.ID))
31+
repoWorkingPool.CheckOut(com.ToStr(repo.ID))
2832

2933
notification.NotifyTransferRepository(doer, repo, oldOwner.Name)
3034

@@ -39,12 +43,12 @@ func ChangeRepositoryName(doer *models.User, repo *models.Repository, newRepoNam
3943
// repo so that we can atomically rename the repo path and updates the
4044
// local copy's origin accordingly.
4145

42-
models.RepoWorkingPool.CheckIn(com.ToStr(repo.ID))
46+
repoWorkingPool.CheckIn(com.ToStr(repo.ID))
4347
if err := models.ChangeRepositoryName(doer, repo, newRepoName); err != nil {
44-
models.RepoWorkingPool.CheckOut(com.ToStr(repo.ID))
48+
repoWorkingPool.CheckOut(com.ToStr(repo.ID))
4549
return err
4650
}
47-
models.RepoWorkingPool.CheckOut(com.ToStr(repo.ID))
51+
repoWorkingPool.CheckOut(com.ToStr(repo.ID))
4852

4953
notification.NotifyRenameRepository(doer, repo, oldRepoName)
5054

0 commit comments

Comments
 (0)