]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - scripts/create-move-video-storage-job.ts
Update embed URL query doc
[github/Chocobozzz/PeerTube.git] / scripts / create-move-video-storage-job.ts
index 699487f72e7b2a876520e59bb7364ed52356a4f8..18629aa27dad54f94a963a7866657542f067220e 100644 (file)
@@ -1,13 +1,10 @@
-import { registerTSPaths } from '../server/helpers/register-ts-paths'
-registerTSPaths()
-
 import { program } from 'commander'
-import { VideoModel } from '@server/models/video/video'
+import { CONFIG } from '@server/initializers/config'
 import { initDatabaseModels } from '@server/initializers/database'
-import { VideoStorage } from '@shared/models'
-import { moveToExternalStorageState } from '@server/lib/video-state'
 import { JobQueue } from '@server/lib/job-queue'
-import { CONFIG } from '@server/initializers/config'
+import { moveToExternalStorageState } from '@server/lib/video-state'
+import { VideoModel } from '@server/models/video/video'
+import { VideoState, VideoStorage } from '@shared/models'
 
 program
   .description('Move videos to another storage.')
@@ -62,6 +59,11 @@ async function run () {
       process.exit(-1)
     }
 
+    if (video.state === VideoState.TO_MOVE_TO_EXTERNAL_STORAGE) {
+      console.error('This video is already being moved to external storage')
+      process.exit(-1)
+    }
+
     ids.push(video.id)
   } else {
     ids = await VideoModel.listLocalIds()
@@ -76,7 +78,7 @@ async function run () {
     if (files.some(f => f.storage === VideoStorage.FILE_SYSTEM) || hls?.storage === VideoStorage.FILE_SYSTEM) {
       console.log('Processing video %s.', videoFull.name)
 
-      const success = await moveToExternalStorageState(videoFull, false, undefined)
+      const success = await moveToExternalStorageState({ video: videoFull, isNewVideo: false, transaction: undefined })
 
       if (!success) {
         console.error(