fix: Cleanup empty folders when using local storage provider, closes #5978

This commit is contained in:
Tom Moor
2023-11-09 19:20:15 -05:00
parent 1a556b6ff2
commit 1c6f8dda5e

View File

@@ -1,5 +1,5 @@
import { Blob } from "buffer";
import { mkdir, unlink } from "fs/promises";
import { mkdir, unlink, rmdir } from "fs/promises";
import path from "path";
import { Readable } from "stream";
import {
@@ -97,6 +97,17 @@ export default class LocalStorage extends BaseStorage {
await unlink(filePath);
} catch (err) {
Logger.warn(`Couldn't delete ${filePath}`, err);
return;
}
const directory = path.dirname(filePath);
try {
await rmdir(directory);
} catch (err) {
if (err.code === "ENOTEMPTY") {
return;
}
Logger.warn(`Couldn't delete directory ${directory}`, err);
}
}