mirror of
https://github.com/pockethost/pockethost.git
synced 2025-03-30 15:08:30 +00:00
fix: make all server cli commands awaitable
This commit is contained in:
parent
544120a93e
commit
846fd8664e
@ -6,6 +6,7 @@ import {
|
||||
MOTHERSHIP_ADMIN_USERNAME,
|
||||
MOTHERSHIP_URL,
|
||||
discordAlert,
|
||||
neverendingPromise,
|
||||
tryFetch,
|
||||
} from '../../../../../core'
|
||||
import {
|
||||
@ -70,4 +71,6 @@ export async function daemon() {
|
||||
res.status(500).send(err.toString())
|
||||
}
|
||||
;(await proxyService()).use(errorHandler)
|
||||
|
||||
await neverendingPromise()
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { logger } from '../../../../../common'
|
||||
import {
|
||||
MOTHERSHIP_URL,
|
||||
neverendingPromise,
|
||||
tryFetch,
|
||||
} from '../../../../../core'
|
||||
import { ftpService } from '../FtpService'
|
||||
@ -14,4 +15,6 @@ export async function ftp() {
|
||||
await ftpService({
|
||||
mothershipUrl: MOTHERSHIP_URL(),
|
||||
})
|
||||
|
||||
await neverendingPromise()
|
||||
}
|
||||
|
@ -5,7 +5,7 @@ import { SYSLOGD_PORT } from '../../../../../core'
|
||||
import { InstanceLogger } from '../../../../../services'
|
||||
|
||||
export function syslog() {
|
||||
return new Promise<void>((resolve) => {
|
||||
return new Promise<void>((resolve, reject) => {
|
||||
const logger = LoggerService().create(`EdgeSyslogCommand`)
|
||||
const { dbg, error, info, warn } = logger
|
||||
info(`Starting`)
|
||||
@ -18,6 +18,7 @@ export function syslog() {
|
||||
server.on('error', (err) => {
|
||||
console.log(`Server error:\n${err.stack}`)
|
||||
server.close()
|
||||
reject(err)
|
||||
})
|
||||
|
||||
server.on('message', (msg, rinfo) => {
|
||||
@ -41,7 +42,6 @@ export function syslog() {
|
||||
server.on('listening', () => {
|
||||
const address = server.address()
|
||||
info(`Server listening ${address.address}:${address.port}`)
|
||||
resolve()
|
||||
})
|
||||
|
||||
server.bind(PORT, HOST)
|
||||
|
@ -16,6 +16,7 @@ import {
|
||||
IS_DEV,
|
||||
MOTHERSHIP_NAME,
|
||||
MOTHERSHIP_PORT,
|
||||
neverendingPromise,
|
||||
SSL_CERT,
|
||||
SSL_KEY,
|
||||
} from '../../../../../core'
|
||||
@ -91,4 +92,6 @@ export const firewall = async () => {
|
||||
https.createServer(httpsOptions, app).listen(443, () => {
|
||||
dbg('HTTPS server running on port 443')
|
||||
})
|
||||
|
||||
await neverendingPromise()
|
||||
}
|
||||
|
@ -36,5 +36,8 @@ export async function schema() {
|
||||
args.push(`--dev`)
|
||||
}
|
||||
dbg({ args })
|
||||
bot.run(args)
|
||||
const code = await bot.run(args)
|
||||
if (code !== 0) {
|
||||
error(`Failed to migrate schema ${code}`)
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
import { Command } from 'commander'
|
||||
import { logger } from '../../../common'
|
||||
import { LoggerService } from '../../../common'
|
||||
import { neverendingPromise } from '../../../core'
|
||||
import { daemon } from '../EdgeCommand/DaemonCommand/ServeCommand/daemon'
|
||||
import { syslog } from '../EdgeCommand/SyslogCommand/ServeCommand/syslog'
|
||||
import { firewall } from '../FirewallCommand/ServeCommand/firewall/server'
|
||||
@ -22,6 +22,8 @@ export const ServeCommand = () => {
|
||||
await mothership(options)
|
||||
await daemon()
|
||||
await firewall()
|
||||
|
||||
await neverendingPromise()
|
||||
})
|
||||
return cmd
|
||||
}
|
||||
|
@ -1,4 +1,5 @@
|
||||
import exitHook, { asyncExitHook as _, gracefulExit as __ } from 'exit-hook'
|
||||
import { logger } from '../common'
|
||||
|
||||
export const asyncExitHook = (cb: () => Promise<void>) => _(cb, { wait: 5000 })
|
||||
|
||||
@ -9,3 +10,8 @@ export const gracefulExit = async (signal?: number) => {
|
||||
})
|
||||
}
|
||||
export { exitHook }
|
||||
|
||||
export const neverendingPromise = () =>
|
||||
new Promise((resolve) => {
|
||||
logger().dbg('Neverending promise')
|
||||
})
|
||||
|
Loading…
x
Reference in New Issue
Block a user