Refactored directory cleanup function to remove contents instead of recreating directory.

This commit is contained in:
2024-07-04 19:41:45 -04:00
parent b4239af403
commit d206429bab

View File

@@ -6,6 +6,7 @@ import (
"errors" "errors"
"fmt" "fmt"
"io" "io"
"io/ioutil"
"math/rand" "math/rand"
"net/url" "net/url"
"os" "os"
@@ -302,14 +303,18 @@ func VerifyFFMpegPath(path string) error {
return nil return nil
} }
// CleanupDirectory removes the directory and makes it fresh again. Throws fatal error on failure. // CleanupDirectory removes all contents within the directory. Throws fatal error on failure.
func CleanupDirectory(path string) { func CleanupDirectory(path string) {
log.Traceln("Cleaning", path) log.Traceln("Cleaning", path)
if err := os.RemoveAll(path); err != nil { entries, err := ioutil.ReadDir(path)
if err != nil {
log.Fatalln("Unable to read contents of directory. Please check the ownership and permissions", err)
}
for _, entry := range entries {
entryPath := filepath.Join(path, entry.Name())
if err := os.RemoveAll(entryPath); err != nil {
log.Fatalln("Unable to remove directory. Please check the ownership and permissions", err) log.Fatalln("Unable to remove directory. Please check the ownership and permissions", err)
} }
if err := os.MkdirAll(path, 0o750); err != nil {
log.Fatalln("Unable to create directory. Please check the ownership and permissions", err)
} }
} }