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"
"fmt"
"io"
"io/ioutil"
"math/rand"
"net/url"
"os"
@@ -302,14 +303,18 @@ func VerifyFFMpegPath(path string) error {
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) {
log.Traceln("Cleaning", path)
if err := os.RemoveAll(path); err != nil {
log.Fatalln("Unable to remove directory. Please check the ownership and permissions", err)
entries, err := ioutil.ReadDir(path)
if err != nil {
log.Fatalln("Unable to read contents of 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)
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)
}
}
}