add CONFIGURED status to bootstrap before READY

This commit is contained in:
lesion
2022-08-02 15:14:34 +02:00
parent 3e98f437b1
commit adbe2ec2a8
4 changed files with 16 additions and 17 deletions

View File

@@ -62,7 +62,7 @@ const db = {
return umzug.up()
},
async initialize () {
if (config.status === 'READY') {
if (config.status === 'CONFIGURED') {
try {
await db.connect()
log.debug('Running migrations')

View File

@@ -26,7 +26,7 @@ let config = {
if (fs.existsSync(config_path)) {
const configContent = fs.readFileSync(config_path)
config = Object.assign(config, JSON.parse(configContent))
config.status = 'READY'
config.status = 'CONFIGURED'
if (!config.hostname) {
config.hostname = new URL.URL(config.baseurl).hostname
}

View File

@@ -25,8 +25,9 @@ const initialize = {
const dayjs = require('dayjs')
const timezone = require('dayjs/plugin/timezone')
dayjs.extend(timezone)
if (config.status == 'READY') {
if (config.status == 'CONFIGURED') {
await db.initialize()
config.status = 'READY'
} else {
if (process.env.GANCIO_DB_DIALECT) {
const setupController = require('./api/controller/setup')

View File

@@ -3,29 +3,27 @@ const cookieParser = require('cookie-parser')
const app = express()
const initialize = require('./initialize.server')
const config = require('./config')
const helpers = require('./helpers')
app.use(helpers.setUserLocale)
app.use(helpers.initSettings)
app.use(helpers.logRequest)
app.use(helpers.serveStatic())
app.use(cookieParser())
async function main () {
await initialize.start()
// const metricsController = require('./metrics')
// const promBundle = require('express-prom-bundle')
// const metricsMiddleware = promBundle({ includeMethod: true })
const config = require('./config')
const helpers = require('./helpers')
const log = require('./log')
const api = require('./api')
app.enable('trust proxy')
app.use(helpers.logRequest)
app.use(helpers.initSettings)
app.use(helpers.setUserLocale)
app.use(helpers.serveStatic())
app.use(cookieParser())
// do not handle all routes on setup
if (config.status === 'READY') {