Prevent archiving already archived files
This commit is contained in:
13
main.go
13
main.go
@@ -80,6 +80,10 @@ func loadConfig() Constants {
|
||||
archive := filepath.ToSlash(strings.TrimSpace(getenv("ROOT_ARCHIVE", root+"/archive")))
|
||||
_ = os.MkdirAll(archive, os.ModePerm)
|
||||
|
||||
// TODO: This just doesn't really work or do what it says it does
|
||||
// Fix it...
|
||||
// Right now we don't care because we're not using it
|
||||
// But we might want to...
|
||||
ignored := []string{}
|
||||
if ig := strings.TrimSpace(getenv("IGNORED_DIRECTORIES", "")); ig != "" {
|
||||
for _, s := range strings.Split(ig, ",") {
|
||||
@@ -88,7 +92,6 @@ func loadConfig() Constants {
|
||||
}
|
||||
}
|
||||
}
|
||||
ignored = append(ignored, filepath.ToSlash(archive))
|
||||
|
||||
archiveMs := parseDurationMS(getenv("ARCHIVE_THRESHOLD", "1d"))
|
||||
deleteMs := parseDurationMS(getenv("DELETE_THRESHOLD", "12h"))
|
||||
@@ -161,8 +164,13 @@ func archiveCandidate(path string, info os.FileInfo) {
|
||||
log.Warning("rel ROOT->%s: %v", path, err)
|
||||
return
|
||||
}
|
||||
if strings.HasPrefix(rel, "archive") {
|
||||
log.Debug("refusing to archive a file that's already archived")
|
||||
return
|
||||
}
|
||||
log.Debug("rel %q", rel)
|
||||
dst := filepath.Join(constants.ROOT_ARCHIVE, rel)
|
||||
log.Debug("dst %s", dst)
|
||||
log.Debug("dst %q", dst)
|
||||
|
||||
if err := os.MkdirAll(filepath.Dir(dst), os.ModePerm); err != nil {
|
||||
log.Error("mkdir %s: %v", filepath.Dir(dst), err)
|
||||
@@ -328,7 +336,6 @@ func main() {
|
||||
|
||||
logger.Info("Starting directory cleaner")
|
||||
constants = loadConfig()
|
||||
constants.USE_MODTIME = true
|
||||
logger.Info("Ready. First scan in %s", constants.SCAN_INTERVAL)
|
||||
|
||||
// Run immediately, then on interval
|
||||
|
Reference in New Issue
Block a user