diff options
author | Lunny Xiao <xiaolunwen@gmail.com> | 2025-02-20 20:17:56 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-02-21 04:17:56 +0000 |
commit | f2fbb897f3bf68a1af1410a2b4ce7a289ef73c1a (patch) | |
tree | 4413ce6c2920a4b9121e20f72ea1d5770cc903bd /services | |
parent | a25081f3801551457fe8ac10eb2817ceca21fbae (diff) | |
download | gitea-f2fbb897f3bf68a1af1410a2b4ce7a289ef73c1a.tar.gz gitea-f2fbb897f3bf68a1af1410a2b4ce7a289ef73c1a.zip |
Deleting repository should unlink all related packages (#33653)
Fix #33634
---------
Co-authored-by: Giteabot <teabot@gitea.io>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Diffstat (limited to 'services')
-rw-r--r-- | services/repository/delete.go | 6 | ||||
-rw-r--r-- | services/repository/repository.go | 7 |
2 files changed, 7 insertions, 6 deletions
diff --git a/services/repository/delete.go b/services/repository/delete.go index fb3fffdca7..3b953d3ec7 100644 --- a/services/repository/delete.go +++ b/services/repository/delete.go @@ -14,6 +14,7 @@ import ( git_model "code.gitea.io/gitea/models/git" issues_model "code.gitea.io/gitea/models/issues" "code.gitea.io/gitea/models/organization" + packages_model "code.gitea.io/gitea/models/packages" access_model "code.gitea.io/gitea/models/perm/access" project_model "code.gitea.io/gitea/models/project" repo_model "code.gitea.io/gitea/models/repo" @@ -267,6 +268,11 @@ func DeleteRepositoryDirectly(ctx context.Context, doer *user_model.User, repoID return err } + // unlink packages linked to this repository + if err = packages_model.UnlinkRepositoryFromAllPackages(ctx, repoID); err != nil { + return err + } + if err = committer.Commit(); err != nil { return err } diff --git a/services/repository/repository.go b/services/repository/repository.go index 59b4491132..fcc617979e 100644 --- a/services/repository/repository.go +++ b/services/repository/repository.go @@ -11,7 +11,6 @@ import ( "code.gitea.io/gitea/models/git" issues_model "code.gitea.io/gitea/models/issues" "code.gitea.io/gitea/models/organization" - packages_model "code.gitea.io/gitea/models/packages" repo_model "code.gitea.io/gitea/models/repo" system_model "code.gitea.io/gitea/models/system" "code.gitea.io/gitea/models/unit" @@ -63,11 +62,7 @@ func DeleteRepository(ctx context.Context, doer *user_model.User, repo *repo_mod notify_service.DeleteRepository(ctx, doer, repo) } - if err := DeleteRepositoryDirectly(ctx, doer, repo.ID); err != nil { - return err - } - - return packages_model.UnlinkRepositoryFromAllPackages(ctx, repo.ID) + return DeleteRepositoryDirectly(ctx, doer, repo.ID) } // PushCreateRepo creates a repository when a new repository is pushed to an appropriate namespace |