diff options
Diffstat (limited to 'models/repo.go')
-rw-r--r-- | models/repo.go | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/models/repo.go b/models/repo.go index d0cd1b553d..937bd8c1b6 100644 --- a/models/repo.go +++ b/models/repo.go @@ -1171,6 +1171,18 @@ func SearchRepositoryByName(opt SearchOption) (repos []*Repository, err error) { return repos, err } +// DeleteRepositoryArchives deletes all repositories' archives. +func DeleteRepositoryArchives() error { + return x.Where("id > 0").Iterate(new(Repository), + func(idx int, bean interface{}) error { + repo := bean.(*Repository) + if err := repo.GetOwner(); err != nil { + return err + } + return os.RemoveAll(filepath.Join(RepoPath(repo.Owner.Name, repo.Name), "archives")) + }) +} + // __ __ __ .__ // / \ / \_____ _/ |_ ____ | |__ // \ \/\/ /\__ \\ __\/ ___\| | \ |