HandleDeleteGarbage delete outdated WAL archives and leftover backup files
(args []string, confirm bool)
| 226 | |
| 227 | // HandleDeleteGarbage delete outdated WAL archives and leftover backup files |
| 228 | func (dh *DeleteHandler) HandleDeleteGarbage(args []string, confirm bool) error { |
| 229 | predicate := ExtractDeleteGarbagePredicate(args) |
| 230 | backupSelector := internal.NewOldestNonPermanentSelector(NewGenericMetaFetcher()) |
| 231 | oldestBackup, err := backupSelector.Select(dh.Folder) |
| 232 | if err != nil { |
| 233 | if _, ok := err.(internal.NoBackupsFoundError); ok { |
| 234 | tracelog.InfoLogger.Println("Couldn't find any non-permanent backups in storage. Not doing anything.") |
| 235 | return nil |
| 236 | } |
| 237 | return err |
| 238 | } |
| 239 | |
| 240 | target, err := dh.FindTargetByName(oldestBackup.Name) |
| 241 | if err != nil { |
| 242 | return err |
| 243 | } |
| 244 | |
| 245 | folderFilter := func(string) bool { return true } |
| 246 | return dh.DeleteBeforeTargetWhere(target, confirm, predicate, folderFilter) |
| 247 | } |
| 248 | |
| 249 | // ExtractDeleteGarbagePredicate extracts delete modifier the "delete garbage" command |
| 250 | func ExtractDeleteGarbagePredicate(args []string) func(storage.Object) bool { |
no test coverage detected