Files
MikrotikManager/backend/src/test/pg.ts
T
DenozordecandCursor ec43591a99
Docker images / prepare-release (push) Successful in 12s
Docker images / backend-test (push) Successful in 4m9s
Docker images / frontend-image (push) Successful in 4m28s
Docker images / updater-image (push) Successful in 58s
Docker images / backend-image (push) Successful in 2m49s
Docker images / notify-webhook (push) Skipped
Docker images / publish-release (push) Successful in 11s
feat(db): перевести хранилище с SQLite на PostgreSQL
При старте backend накатывает схему PostgreSQL 18 и, если база пустая, один раз импортирует mikrotik.db с тома. Повторный старт не копирует данные. Бэкап в UI идёт через pg_dump.

Co-authored-by: Cursor <[email protected]>
2026-09-08 01:36:48 +07:00

23 lines
555 B
TypeScript

import { initDatabase } from "../db/bootstrap.js"
let ready: Promise<boolean> | null = null
/** Initialize schema against DATABASE_URL; return false if PostgreSQL is unreachable. */
export function withPgOrSkip(): Promise<boolean> {
if (!ready) {
ready = (async () => {
try {
await initDatabase()
return true
} catch (err) {
console.warn(
"skip: PostgreSQL недоступен",
err instanceof Error ? err.message : err,
)
return false
}
})()
}
return ready
}