Also decache config
This commit is contained in:
parent
09d535ef98
commit
bae9303726
|
@ -1,12 +1,13 @@
|
|||
import { IConfig } from 'config'
|
||||
import { dirname, join } from 'path'
|
||||
import { VideosRedundancyStrategy } from '../../shared/models'
|
||||
// Do not use barrels, remain constants as independent as possible
|
||||
import { buildPath, parseBytes, parseDurationToMs, root } from '../helpers/core-utils'
|
||||
import { NSFWPolicyType } from '../../shared/models/videos/nsfw-policy.type'
|
||||
import * as bytes from 'bytes'
|
||||
import { IConfig } from 'config'
|
||||
import decache from 'decache'
|
||||
import { dirname, join } from 'path'
|
||||
import { VideoRedundancyConfigFilter } from '@shared/models/redundancy/video-redundancy-config-filter.type'
|
||||
import { BroadcastMessageLevel } from '@shared/models/server'
|
||||
import { VideosRedundancyStrategy } from '../../shared/models'
|
||||
import { NSFWPolicyType } from '../../shared/models/videos/nsfw-policy.type'
|
||||
// Do not use barrels, remain constants as independent as possible
|
||||
import { buildPath, parseBytes, parseDurationToMs, root } from '../helpers/core-utils'
|
||||
|
||||
// Use a variable to reload the configuration if we need
|
||||
let config: IConfig = require('config')
|
||||
|
@ -410,7 +411,7 @@ function buildVideosRedundancy (objs: any[]): VideosRedundancyStrategy[] {
|
|||
|
||||
export function reloadConfig () {
|
||||
|
||||
function directory () {
|
||||
function getConfigDirectory () {
|
||||
if (process.env.NODE_CONFIG_DIR) {
|
||||
return process.env.NODE_CONFIG_DIR
|
||||
}
|
||||
|
@ -419,15 +420,17 @@ export function reloadConfig () {
|
|||
}
|
||||
|
||||
function purge () {
|
||||
const directory = getConfigDirectory()
|
||||
|
||||
for (const fileName in require.cache) {
|
||||
if (fileName.includes(directory()) === false) {
|
||||
if (fileName.includes(directory) === false) {
|
||||
continue
|
||||
}
|
||||
|
||||
delete require.cache[fileName]
|
||||
}
|
||||
|
||||
delete require.cache[require.resolve('config')]
|
||||
decache('config')
|
||||
}
|
||||
|
||||
purge()
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
import decache from 'decache'
|
||||
import * as express from 'express'
|
||||
import { createReadStream, createWriteStream } from 'fs'
|
||||
import { outputFile, readJSON } from 'fs-extra'
|
||||
|
@ -23,8 +24,6 @@ import { ClientHtml } from '../client-html'
|
|||
import { RegisterHelpers } from './register-helpers'
|
||||
import { installNpmPlugin, installNpmPluginFromDisk, removeNpmPlugin } from './yarn'
|
||||
|
||||
const decache = require('decache')
|
||||
|
||||
export interface RegisteredPlugin {
|
||||
npmName: string
|
||||
name: string
|
||||
|
|
|
@ -1845,7 +1845,7 @@ call-me-maybe@^1.0.1:
|
|||
resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b"
|
||||
integrity sha1-JtII6onje1y95gJQoV8DHBak1ms=
|
||||
|
||||
callsite@1.0.0:
|
||||
callsite@1.0.0, callsite@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/callsite/-/callsite-1.0.0.tgz#280398e5d664bd74038b6f0905153e6e8af1bc20"
|
||||
integrity sha1-KAOY5dZkvXQDi28JBRU+borxvCA=
|
||||
|
@ -2612,6 +2612,13 @@ debuglog@^1.0.0:
|
|||
resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492"
|
||||
integrity sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI=
|
||||
|
||||
decache@^4.6.0:
|
||||
version "4.6.0"
|
||||
resolved "https://registry.yarnpkg.com/decache/-/decache-4.6.0.tgz#87026bc6e696759e82d57a3841c4e251a30356e8"
|
||||
integrity sha512-PppOuLiz+DFeaUvFXEYZjLxAkKiMYH/do/b/MxpDe/8AgKBi5GhZxridoVIbBq72GDbL36e4p0Ce2jTGUwwU+w==
|
||||
dependencies:
|
||||
callsite "^1.0.0"
|
||||
|
||||
decamelize-keys@^1.0.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9"
|
||||
|
|
Loading…
Reference in New Issue