// ---------------------------------------------------------------------------
-const LAST_MIGRATION_VERSION = 655
+const LAST_MIGRATION_VERSION = 660
// ---------------------------------------------------------------------------
'videos-views': 1,
'activitypub-refresher': 1,
'video-redundancy': 1,
- 'video-live-ending': 1
+ 'video-live-ending': 1,
+ 'move-to-object-storage': 3
}
// Excluded keys are jobs that can be configured by admins
const JOB_CONCURRENCY: { [id in Exclude<JobType, 'video-transcoding' | 'video-import'>]: number } = {
'videos-views': 1,
'activitypub-refresher': 1,
'video-redundancy': 1,
- 'video-live-ending': 10
+ 'video-live-ending': 10,
+ 'move-to-object-storage': 1
}
const JOB_TTL: { [id in JobType]: number } = {
'activitypub-http-broadcast': 60000 * 10, // 10 minutes
'videos-views': undefined, // Unlimited
'activitypub-refresher': 60000 * 10, // 10 minutes
'video-redundancy': 1000 * 3600 * 3, // 3 hours
- 'video-live-ending': 1000 * 60 * 10 // 10 minutes
+ 'video-live-ending': 1000 * 60 * 10, // 10 minutes
+ 'move-to-object-storage': 1000 * 60 * 60 * 3 // 3 hours
}
const REPEAT_JOBS: { [ id: string ]: EveryRepeatOptions | CronRepeatOptions } = {
'videos-views': {
[VideoState.TO_TRANSCODE]: 'To transcode',
[VideoState.TO_IMPORT]: 'To import',
[VideoState.WAITING_FOR_LIVE]: 'Waiting for livestream',
- [VideoState.LIVE_ENDED]: 'Livestream ended'
+ [VideoState.LIVE_ENDED]: 'Livestream ended',
+ [VideoState.TO_MOVE_TO_EXTERNAL_STORAGE]: 'To move to an external storage'
}
const VIDEO_IMPORT_STATES: { [ id in VideoImportState ]: string } = {