mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-20 01:38:19 +08:00
core: auto-clean unused files
This commit is contained in:
1 parent
99adcc6d7d
commit
388733b4d0
2 files changed
+16
-3
No files matched your search
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "hydrooj",
|
"name": "hydrooj",
|
||||||
"version": "2.26.1",
|
"version": "2.26.2",
|
||||||
"bin": "bin/hydrooj.js",
|
"bin": "bin/hydrooj.js",
|
||||||
"main": "dist/loader.js",
|
"main": "dist/loader.js",
|
||||||
"typings": "dist/loader.d.ts",
|
"typings": "dist/loader.d.ts",
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ export class StorageModel {
|
|||||||
const { metaData, size, etag } = await storage.getMeta(current._id);
|
const { metaData, size, etag } = await storage.getMeta(current._id);
|
||||||
await StorageModel.coll.updateOne({ path }, {
|
await StorageModel.coll.updateOne({ path }, {
|
||||||
$set: {
|
$set: {
|
||||||
meta: metaData, size, etag, lastModified: new Date(),
|
meta: metaData, size, etag, lastModified: new Date(), autoDelete: null,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
return path;
|
return path;
|
||||||
@@ -76,7 +76,20 @@ export class StorageModel {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bus.on('app/started', () => StorageModel.coll.createIndex({ path: 1 }, { unique: true }));
|
async function clean() {
|
||||||
|
let res = await StorageModel.coll.findOneAndDelete({ autoDelete: { $lte: new Date() } });
|
||||||
|
while (res.value) {
|
||||||
|
// eslint-disable-next-line no-await-in-loop
|
||||||
|
// await storage.del(res.value._id);
|
||||||
|
// eslint-disable-next-line no-await-in-loop
|
||||||
|
res = await StorageModel.coll.findOneAndDelete({ autoDelete: { $lte: new Date() } });
|
||||||
|
}
|
||||||
|
setTimeout(clean, 10000);
|
||||||
|
}
|
||||||
|
bus.on('app/started', () => {
|
||||||
|
clean();
|
||||||
|
return StorageModel.coll.createIndex({ path: 1 }, { unique: true });
|
||||||
|
});
|
||||||
|
|
||||||
global.Hydro.model.storage = StorageModel;
|
global.Hydro.model.storage = StorageModel;
|
||||||
export default StorageModel;
|
export default StorageModel;
|
||||||
Reference in new issue
Block a user