From d85798c4e7b18f3b464fa819ffc5bec06137e3e9 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Tue, 19 Mar 2019 16:33:40 +0100 Subject: [PATCH] Better videos redundancy config error handling --- server/initializers/checker-after-init.ts | 3 +++ server/initializers/checker-before-init.ts | 4 ++-- server/initializers/constants.ts | 2 ++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/server/initializers/checker-after-init.ts b/server/initializers/checker-after-init.ts index 53124f9ec..a99dbba37 100644 --- a/server/initializers/checker-after-init.ts +++ b/server/initializers/checker-after-init.ts @@ -61,6 +61,7 @@ function checkConfig () { // Redundancies const redundancyVideos = CONFIG.REDUNDANCY.VIDEOS.STRATEGIES + console.log(redundancyVideos) if (isArray(redundancyVideos)) { const available = [ 'most-views', 'trending', 'recently-added' ] for (const r of redundancyVideos) { @@ -83,6 +84,8 @@ function checkConfig () { if (recentlyAddedStrategy && isNaN(recentlyAddedStrategy.minViews)) { return 'Min views in recently added strategy is not a number' } + } else { + return 'Videos redundancy should be an array (you must uncomment lines containing - too)' } // Check storage directory locations diff --git a/server/initializers/checker-before-init.ts b/server/initializers/checker-before-init.ts index 3e1d2c589..ef12b3eea 100644 --- a/server/initializers/checker-before-init.ts +++ b/server/initializers/checker-before-init.ts @@ -1,6 +1,5 @@ import * as config from 'config' import { promisify0 } from '../helpers/core-utils' -import { isArray } from '../helpers/custom-validators/misc' // ONLY USE CORE MODULES IN THIS FILE! @@ -42,7 +41,8 @@ function checkMissedConfig () { } const redundancyVideos = config.get('redundancy.videos.strategies') - if (isArray(redundancyVideos)) { + + if (Array.isArray(redundancyVideos)) { for (const r of redundancyVideos) { if (!r.size) miss.push('redundancy.videos.strategies.size') if (!r.min_lifetime) miss.push('redundancy.videos.strategies.min_lifetime') diff --git a/server/initializers/constants.ts b/server/initializers/constants.ts index 7a3ec3874..54cd57619 100644 --- a/server/initializers/constants.ts +++ b/server/initializers/constants.ts @@ -881,6 +881,8 @@ function buildVideosExtname () { function buildVideosRedundancy (objs: any[]): VideosRedundancy[] { if (!objs) return [] + if (!Array.isArray(objs)) return objs + return objs.map(obj => { return Object.assign({}, obj, { minLifetime: parseDuration(obj.min_lifetime),