Simplify createServer args

pull/4271/head
Chocobozzz 2021-07-22 12:07:26 +02:00
parent 7a397c7f15
commit 2e980ed30d
No known key found for this signature in database
GPG Key ID: 583A612D890159BE
4 changed files with 11 additions and 10 deletions

View File

@ -9,7 +9,7 @@ describe('Start and stop server without web client routes', function () {
before(async function () { before(async function () {
this.timeout(30000) this.timeout(30000)
server = await createSingleServer(1, {}, [ '--no-client' ]) server = await createSingleServer(1, {}, { peertubeArgs: [ '--no-client' ] })
}) })
it('Should fail getting the client', function () { it('Should fail getting the client', function () {

View File

@ -36,7 +36,7 @@ async function run () {
console.log('Starting server.') console.log('Starting server.')
const server = await createSingleServer(1, {}, [], { hideLogs: false, execArgv: [ '--inspect' ] }) const server = await createSingleServer(1, {}, { hideLogs: false, nodeArgs: [ '--inspect' ] })
const cleanup = async () => { const cleanup = async () => {
console.log('Killing server') console.log('Killing server')

View File

@ -41,7 +41,8 @@ import { StatsCommand } from './stats-command'
export type RunServerOptions = { export type RunServerOptions = {
hideLogs?: boolean hideLogs?: boolean
execArgv?: string[] nodeArgs?: string[]
peertubeArgs?: string[]
} }
export class PeerTubeServer { export class PeerTubeServer {
@ -176,13 +177,13 @@ export class PeerTubeServer {
this.port = parseInt(parsed.port) this.port = parseInt(parsed.port)
} }
async flushAndRun (configOverride?: Object, args = [], options: RunServerOptions = {}) { async flushAndRun (configOverride?: Object, options: RunServerOptions = {}) {
await ServersCommand.flushTests(this.internalServerNumber) await ServersCommand.flushTests(this.internalServerNumber)
return this.run(configOverride, args, options) return this.run(configOverride, options)
} }
async run (configOverrideArg?: any, args = [], options: RunServerOptions = {}) { async run (configOverrideArg?: any, options: RunServerOptions = {}) {
// These actions are async so we need to be sure that they have both been done // These actions are async so we need to be sure that they have both been done
const serverRunString = { const serverRunString = {
'HTTP server listening': false 'HTTP server listening': false
@ -215,13 +216,13 @@ export class PeerTubeServer {
silent: true, silent: true,
env, env,
detached: true, detached: true,
execArgv: options.execArgv || [] execArgv: options.nodeArgs || []
} }
return new Promise<void>(res => { return new Promise<void>(res => {
const self = this const self = this
this.app = fork(join(root(), 'dist', 'server.js'), args, forkOptions) this.app = fork(join(root(), 'dist', 'server.js'), options.peertubeArgs || [], forkOptions)
this.app.stdout.on('data', function onStdout (data) { this.app.stdout.on('data', function onStdout (data) {
let dontContinue = false let dontContinue = false

View File

@ -2,10 +2,10 @@ import { ensureDir } from 'fs-extra'
import { isGithubCI } from '../miscs' import { isGithubCI } from '../miscs'
import { PeerTubeServer, RunServerOptions } from './server' import { PeerTubeServer, RunServerOptions } from './server'
async function createSingleServer (serverNumber: number, configOverride?: Object, args = [], options: RunServerOptions = {}) { async function createSingleServer (serverNumber: number, configOverride?: Object, options: RunServerOptions = {}) {
const server = new PeerTubeServer({ serverNumber }) const server = new PeerTubeServer({ serverNumber })
await server.flushAndRun(configOverride, args, options) await server.flushAndRun(configOverride, options)
return server return server
} }