X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Finitializers%2Fchecker.js;h=2a33009b4ed7b65f26529364b24b0c0d0d5bf415;hb=f6a0754fdacf9b890292f1efc62a9035bceb454a;hp=44d9ea85b8abac6dbc7fb9ceb4e15fa59108af5a;hpb=3d446a26ada901331faaaf3be9083dfe6773b50a;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/initializers/checker.js b/server/initializers/checker.js index 44d9ea85b..2a33009b4 100644 --- a/server/initializers/checker.js +++ b/server/initializers/checker.js @@ -1,24 +1,27 @@ 'use strict' -var config = require('config') -var mkdirp = require('mkdirp') -var path = require('path') +const config = require('config') +const mongoose = require('mongoose') -var checker = { +const Client = mongoose.model('OAuthClient') +const User = mongoose.model('User') + +const checker = { checkConfig: checkConfig, - createDirectoriesIfNotExist: createDirectoriesIfNotExist + clientsExist: clientsExist, + usersExist: usersExist } // Check the config files function checkConfig () { - var required = [ 'listen.port', + const required = [ 'listen.port', 'webserver.https', 'webserver.host', 'webserver.port', 'database.host', 'database.port', 'database.suffix', - 'storage.certs', 'storage.uploads', 'storage.logs', - 'network.friends' ] - var miss = [] + 'storage.certs', 'storage.uploads', 'storage.logs', 'storage.thumbnails', + 'electron.debug' ] + const miss = [] - for (var key of required) { + for (const key of required) { if (!config.has(key)) { miss.push(key) } @@ -27,18 +30,20 @@ function checkConfig () { return miss } -// Create directories for the storage if it doesn't exist -function createDirectoriesIfNotExist () { - var storages = config.get('storage') +function clientsExist (callback) { + Client.list(function (err, clients) { + if (err) return callback(err) - for (var key of Object.keys(storages)) { - var dir = storages[key] - try { - mkdirp.sync(path.join(__dirname, '..', '..', dir)) - } catch (error) { - throw new Error('Cannot create ' + path + ':' + error) - } - } + return callback(null, clients.length !== 0) + }) +} + +function usersExist (callback) { + User.countTotal(function (err, totalUsers) { + if (err) return callback(err) + + return callback(null, totalUsers !== 0) + }) } // ---------------------------------------------------------------------------