summaryrefslogtreecommitdiffstats
path: root/models/repo.go
diff options
context:
space:
mode:
authorLunny Xiao <xiaolunwen@gmail.com>2021-12-06 15:19:28 +0800
committerGitHub <noreply@github.com>2021-12-06 15:19:28 +0800
commitdcdb4873c8d77a444526fad5b1c8e705fdfe149d (patch)
tree599efda4334775ef40db9dd845355dfde7d73b33 /models/repo.go
parentf49d160447899270fbca6370cb7ab2742dce85dc (diff)
downloadgitea-dcdb4873c8d77a444526fad5b1c8e705fdfe149d.tar.gz
gitea-dcdb4873c8d77a444526fad5b1c8e705fdfe149d.zip
Move repo archiver to models/repo (#17913)
* Move repo archiver to models/repo * Move archiver service into services/repository/ * Fix imports * Fix test * Fix test
Diffstat (limited to 'models/repo.go')
-rw-r--r--models/repo.go51
1 files changed, 2 insertions, 49 deletions
diff --git a/models/repo.go b/models/repo.go
index 67879fefda..4f6b1c3464 100644
--- a/models/repo.go
+++ b/models/repo.go
@@ -1605,19 +1605,18 @@ func DeleteRepository(doer *user_model.User, uid, repoID int64) error {
}
// Remove archives
- var archives []*RepoArchiver
+ var archives []*repo_model.RepoArchiver
if err = sess.Where("repo_id=?", repoID).Find(&archives); err != nil {
return err
}
var archivePaths = make([]string, 0, len(archives))
for _, v := range archives {
- v.Repo = repo
p, _ := v.RelativePath()
archivePaths = append(archivePaths, p)
}
- if _, err := sess.Delete(&RepoArchiver{RepoID: repoID}); err != nil {
+ if _, err := sess.Delete(&repo_model.RepoArchiver{RepoID: repoID}); err != nil {
return err
}
@@ -1824,52 +1823,6 @@ func GetPrivateRepositoryCount(u *user_model.User) (int64, error) {
return getPrivateRepositoryCount(db.GetEngine(db.DefaultContext), u)
}
-// DeleteOldRepositoryArchives deletes old repository archives.
-func DeleteOldRepositoryArchives(ctx context.Context, olderThan time.Duration) error {
- log.Trace("Doing: ArchiveCleanup")
-
- for {
- var archivers []RepoArchiver
- err := db.GetEngine(db.DefaultContext).Where("created_unix < ?", time.Now().Add(-olderThan).Unix()).
- Asc("created_unix").
- Limit(100).
- Find(&archivers)
- if err != nil {
- log.Trace("Error: ArchiveClean: %v", err)
- return err
- }
-
- for _, archiver := range archivers {
- if err := deleteOldRepoArchiver(ctx, &archiver); err != nil {
- return err
- }
- }
- if len(archivers) < 100 {
- break
- }
- }
-
- log.Trace("Finished: ArchiveCleanup")
- return nil
-}
-
-var delRepoArchiver = new(RepoArchiver)
-
-func deleteOldRepoArchiver(ctx context.Context, archiver *RepoArchiver) error {
- p, err := archiver.RelativePath()
- if err != nil {
- return err
- }
- _, err = db.GetEngine(db.DefaultContext).ID(archiver.ID).Delete(delRepoArchiver)
- if err != nil {
- return err
- }
- if err := storage.RepoArchives.Delete(p); err != nil {
- log.Error("delete repo archive file failed: %v", err)
- }
- return nil
-}
-
type repoChecker struct {
querySQL, correctSQL string
desc string