Browse Source

Re-enable transfer repo back from org to user account (#14807)

* re-enable transfer repo back from org to user account

* add test case
tags/v1.13.3
6543 4 years ago committed by GitHub
parent
commit
77ce08976d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      integrations/api_repo_test.go
  2. 4
      services/repository/transfer.go

1
integrations/api_repo_test.go

@ -450,6 +450,7 @@ func TestAPIRepoTransfer(t *testing.T) {
{ctxUserID: 1, newOwner: "user2", teams: &[]int64{2}, expectedStatus: http.StatusUnprocessableEntity},
{ctxUserID: 1, newOwner: "user3", teams: &[]int64{5}, expectedStatus: http.StatusForbidden},
{ctxUserID: 1, newOwner: "user3", teams: &[]int64{2}, expectedStatus: http.StatusAccepted},
{ctxUserID: 2, newOwner: "user2", teams: nil, expectedStatus: http.StatusAccepted},
}
defer prepareTestEnv(t)()

4
services/repository/transfer.go

@ -80,8 +80,8 @@ func StartRepositoryTransfer(doer, newOwner *models.User, repo *models.Repositor
return fmt.Errorf("repository is not ready for transfer")
}
// Admin is always allowed to transfer
if doer.IsAdmin {
// Admin is always allowed to transfer || user transfer repo back to his account
if doer.IsAdmin || doer.ID == newOwner.ID {
return TransferOwnership(doer, newOwner, repo, teams)
}

Loading…
Cancel
Save