diff options
author | Chocobozzz <me@florianbigard.com> | 2019-04-11 17:33:36 +0200 |
---|---|---|
committer | Chocobozzz <me@florianbigard.com> | 2019-04-12 08:31:06 +0200 |
commit | cda03765fe366f028897e9b02dd4a0a19af3c935 (patch) | |
tree | 4d30303d76f8fd171195a51b1f737a0067987d6c /shared/core-utils/logs | |
parent | 7b293f28686319242958dff7315cdd8ad74fc15e (diff) | |
download | PeerTube-cda03765fe366f028897e9b02dd4a0a19af3c935.tar.gz PeerTube-cda03765fe366f028897e9b02dd4a0a19af3c935.tar.zst PeerTube-cda03765fe366f028897e9b02dd4a0a19af3c935.zip |
Add ability to delete old remote views
Diffstat (limited to 'shared/core-utils/logs')
-rw-r--r-- | shared/core-utils/logs/logs.ts | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/shared/core-utils/logs/logs.ts b/shared/core-utils/logs/logs.ts new file mode 100644 index 000000000..d0996cf55 --- /dev/null +++ b/shared/core-utils/logs/logs.ts | |||
@@ -0,0 +1,25 @@ | |||
1 | import { stat } from 'fs-extra' | ||
2 | |||
3 | async function mtimeSortFilesDesc (files: string[], basePath: string) { | ||
4 | const promises = [] | ||
5 | const out: { file: string, mtime: number }[] = [] | ||
6 | |||
7 | for (const file of files) { | ||
8 | const p = stat(basePath + '/' + file) | ||
9 | .then(stats => { | ||
10 | if (stats.isFile()) out.push({ file, mtime: stats.mtime.getTime() }) | ||
11 | }) | ||
12 | |||
13 | promises.push(p) | ||
14 | } | ||
15 | |||
16 | await Promise.all(promises) | ||
17 | |||
18 | out.sort((a, b) => b.mtime - a.mtime) | ||
19 | |||
20 | return out | ||
21 | } | ||
22 | |||
23 | export { | ||
24 | mtimeSortFilesDesc | ||
25 | } | ||