]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - scripts/prune-storage.ts
Only duplicate public videos
[github/Chocobozzz/PeerTube.git] / scripts / prune-storage.ts
index bc59da6afb383d124ca6e5913274d2d51d2d64b4..b00f2093426ddcfac3f909afe9a8f5bdffc9606d 100755 (executable)
@@ -1,9 +1,9 @@
 import * as prompt from 'prompt'
 import { join } from 'path'
-import { readdirPromise, unlinkPromise } from '../server/helpers/core-utils'
 import { CONFIG } from '../server/initializers/constants'
 import { VideoModel } from '../server/models/video/video'
 import { initDatabaseModels } from '../server/initializers'
+import { remove, readdir } from 'fs-extra'
 
 run()
   .then(() => process.exit(0))
@@ -39,7 +39,7 @@ async function run () {
     console.log('Processing delete...\n')
 
     for (const path of toDelete) {
-      await unlinkPromise(path)
+      await remove(path)
     }
 
     console.log('Done!')
@@ -49,14 +49,14 @@ async function run () {
 }
 
 async function pruneDirectory (directory: string) {
-  const files = await readdirPromise(directory)
+  const files = await readdir(directory)
 
   const toDelete: string[] = []
   for (const file of files) {
     const uuid = getUUIDFromFilename(file)
     let video: VideoModel
 
-    if (uuid) video = await VideoModel.loadByUUID(uuid)
+    if (uuid) video = await VideoModel.loadByUUIDWithFile(uuid)
 
     if (!uuid || !video) toDelete.push(join(directory, file))
   }