30 lines
749 B
TypeScript
Raw Normal View History

import { initSettings } from './lib/settings'
2021-04-09 19:29:44 +02:00
import { initRouters } from './lib/routers/index'
import type { Logger } from 'winston'
2021-04-09 11:22:46 +02:00
import decache from 'decache'
let logger: Logger | undefined
2021-04-07 16:52:38 +02:00
2021-04-09 19:39:40 +02:00
async function register (options: RegisterServerOptions): Promise<any> {
const { peertubeHelpers } = options
logger = peertubeHelpers.logger
2021-04-09 19:39:40 +02:00
await initSettings(options)
await initRouters(options)
2019-07-16 16:39:36 +02:00
}
async function unregister (): Promise<any> {
const module = __filename
logger?.info(`Unloading module ${module}...`)
2021-04-09 10:54:51 +02:00
// In peertube <= 3.1.0 sub modules are not removed from require.cache
decache(module)
logger?.info(`Successfully unloaded the module ${module}`)
2021-04-09 10:54:51 +02:00
logger = undefined
2019-07-16 16:39:36 +02:00
}
module.exports = {
register,
unregister
}