skip production data dir creation (#1164)
This commit is contained in:
@@ -14,7 +14,7 @@ import { homedir } from 'os'
|
||||
* - HERMES_WEBUI_STATE_DIR: Compatibility alias for HERMES_WEB_UI_HOME.
|
||||
* Default: join(homedir(), '.hermes-web-ui').
|
||||
* - UPLOAD_DIR: Upload directory override. Default: join(HERMES_WEB_UI_HOME, 'upload').
|
||||
* - dataDir: Internal Web UI runtime data directory. Default: join(HERMES_WEB_UI_HOME, 'data').
|
||||
* - dataDir: Development-only internal Web UI runtime data directory.
|
||||
*
|
||||
* Auth:
|
||||
* - AUTH_TOKEN: Explicit bearer token. If unset, Web UI stores an auto-generated token under HERMES_WEB_UI_HOME.
|
||||
@@ -42,8 +42,8 @@ export function getWebUiHome(env: Record<string, string | undefined> = process.e
|
||||
return appHome ? resolve(appHome) : join(homedir(), '.hermes-web-ui')
|
||||
}
|
||||
|
||||
export function getWebUiDataDir(env: Record<string, string | undefined> = process.env): string {
|
||||
return join(getWebUiHome(env), 'data')
|
||||
export function shouldCreateWebUiDataDir(env: Record<string, string | undefined> = process.env): boolean {
|
||||
return env.NODE_ENV !== 'production'
|
||||
}
|
||||
|
||||
const appHome = getWebUiHome()
|
||||
@@ -54,6 +54,6 @@ export const config = {
|
||||
host: getListenHost(),
|
||||
appHome,
|
||||
uploadDir: process.env.UPLOAD_DIR || join(appHome, 'upload'),
|
||||
dataDir: getWebUiDataDir(),
|
||||
dataDir: resolve(__dirname, '..', 'data'),
|
||||
corsOrigins: process.env.CORS_ORIGINS || '*',
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@ import os from 'os'
|
||||
import { resolve } from 'path'
|
||||
import { mkdir } from 'fs/promises'
|
||||
import { readFileSync } from 'fs'
|
||||
import { config } from './config'
|
||||
import { config, shouldCreateWebUiDataDir } from './config'
|
||||
import { initLoginLimiter } from './services/login-limiter'
|
||||
import { bindShutdown } from './services/shutdown'
|
||||
import { setupTerminalWebSocket } from './routes/hermes/terminal'
|
||||
@@ -84,7 +84,9 @@ function safeNetworkInterfaces() {
|
||||
export async function bootstrap() {
|
||||
console.log(`hermes-web-ui v${APP_VERSION} starting...`)
|
||||
await mkdir(config.uploadDir, { recursive: true })
|
||||
await mkdir(config.dataDir, { recursive: true })
|
||||
if (shouldCreateWebUiDataDir()) {
|
||||
await mkdir(config.dataDir, { recursive: true })
|
||||
}
|
||||
|
||||
await initLoginLimiter()
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user