From 66170ca8c64fa4e76f3830e4a02a11345a03093b Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Wed, 17 Jul 2019 10:03:55 +0200 Subject: Use process.env.npm_package_version --- server/controllers/api/config.ts | 63 ++++++++++++++++++++++------------------ server/controllers/static.ts | 5 ++-- 2 files changed, 36 insertions(+), 32 deletions(-) (limited to 'server/controllers') diff --git a/server/controllers/api/config.ts b/server/controllers/api/config.ts index 81518bbb5..21fa85a08 100644 --- a/server/controllers/api/config.ts +++ b/server/controllers/api/config.ts @@ -4,7 +4,7 @@ import { ServerConfig, UserRight } from '../../../shared' import { About } from '../../../shared/models/server/about.model' import { CustomConfig } from '../../../shared/models/server/custom-config.model' import { isSignupAllowed, isSignupAllowedForCurrentIP } from '../../helpers/signup' -import { CONSTRAINTS_FIELDS, DEFAULT_THEME_NAME } from '../../initializers/constants' +import { CONSTRAINTS_FIELDS, DEFAULT_THEME_NAME, PEERTUBE_VERSION } from '../../initializers/constants' import { asyncMiddleware, authenticate, ensureUserHasRight } from '../../middlewares' import { customConfigUpdateValidator } from '../../middlewares/validators/config' import { ClientHtml } from '../../lib/client-html' @@ -18,7 +18,6 @@ import { CONFIG, reloadConfig } from '../../initializers/config' import { PluginManager } from '../../lib/plugins/plugin-manager' import { getThemeOrDefault } from '../../lib/plugins/theme-utils' -const packageJSON = require('../../../../package.json') const configRouter = express.Router() const auditLogger = auditLoggerFactory('config') @@ -46,35 +45,14 @@ configRouter.delete('/custom', ) let serverCommit: string + async function getConfig (req: express.Request, res: express.Response) { const allowed = await isSignupAllowed() const allowedForCurrentIP = isSignupAllowedForCurrentIP(req.ip) + const defaultTheme = getThemeOrDefault(CONFIG.THEME.DEFAULT, DEFAULT_THEME_NAME) if (serverCommit === undefined) serverCommit = await getServerCommit() - const enabledResolutions = Object.keys(CONFIG.TRANSCODING.RESOLUTIONS) - .filter(key => CONFIG.TRANSCODING.ENABLED && CONFIG.TRANSCODING.RESOLUTIONS[key] === true) - .map(r => parseInt(r, 10)) - - const registeredPlugins = PluginManager.Instance.getRegisteredPlugins() - .map(p => ({ - name: p.name, - version: p.version, - description: p.description, - clientScripts: p.clientScripts - })) - - const registeredThemes = PluginManager.Instance.getRegisteredThemes() - .map(t => ({ - name: t.name, - version: t.version, - description: t.description, - css: t.css, - clientScripts: t.clientScripts - })) - - const defaultTheme = getThemeOrDefault(CONFIG.THEME.DEFAULT, DEFAULT_THEME_NAME) - const json: ServerConfig = { instance: { name: CONFIG.INSTANCE.NAME, @@ -88,10 +66,10 @@ async function getConfig (req: express.Request, res: express.Response) { } }, plugin: { - registered: registeredPlugins + registered: getRegisteredPlugins() }, theme: { - registered: registeredThemes, + registered: getRegisteredThemes(), default: defaultTheme }, email: { @@ -100,7 +78,7 @@ async function getConfig (req: express.Request, res: express.Response) { contactForm: { enabled: CONFIG.CONTACT_FORM.ENABLED }, - serverVersion: packageJSON.version, + serverVersion: PEERTUBE_VERSION, serverCommit, signup: { allowed, @@ -111,7 +89,7 @@ async function getConfig (req: express.Request, res: express.Response) { hls: { enabled: CONFIG.TRANSCODING.HLS.ENABLED }, - enabledResolutions + enabledResolutions: getEnabledResolutions() }, import: { videos: { @@ -342,3 +320,30 @@ function convertCustomConfigBody (body: CustomConfig) { return objectConverter(body, keyConverter, valueConverter) } + +function getRegisteredThemes () { + return PluginManager.Instance.getRegisteredThemes() + .map(t => ({ + name: t.name, + version: t.version, + description: t.description, + css: t.css, + clientScripts: t.clientScripts + })) +} + +function getEnabledResolutions () { + return Object.keys(CONFIG.TRANSCODING.RESOLUTIONS) + .filter(key => CONFIG.TRANSCODING.ENABLED && CONFIG.TRANSCODING.RESOLUTIONS[ key ] === true) + .map(r => parseInt(r, 10)) +} + +function getRegisteredPlugins () { + return PluginManager.Instance.getRegisteredPlugins() + .map(p => ({ + name: p.name, + version: p.version, + description: p.description, + clientScripts: p.clientScripts + })) +} diff --git a/server/controllers/static.ts b/server/controllers/static.ts index a6b462443..af7de562a 100644 --- a/server/controllers/static.ts +++ b/server/controllers/static.ts @@ -1,7 +1,7 @@ import * as cors from 'cors' import * as express from 'express' import { - HLS_STREAMING_PLAYLIST_DIRECTORY, + HLS_STREAMING_PLAYLIST_DIRECTORY, PEERTUBE_VERSION, ROUTE_CACHE_LIFETIME, STATIC_DOWNLOAD_PATHS, STATIC_MAX_AGE, @@ -19,7 +19,6 @@ import { join } from 'path' import { root } from '../helpers/core-utils' import { CONFIG } from '../initializers/config' -const packageJSON = require('../../../package.json') const staticRouter = express.Router() staticRouter.use(cors()) @@ -205,7 +204,7 @@ async function generateNodeinfo (req: express.Request, res: express.Response) { version: '2.0', software: { name: 'peertube', - version: packageJSON.version + version: PEERTUBE_VERSION }, protocols: [ 'activitypub' -- cgit v1.2.3