FactuGES_ERP/apps/server/src/config/database.ts

22 lines
695 B
TypeScript
Raw Normal View History

2026-08-31 18:51:27 +00:00
import { closeSequelize, createSequelize } from "@erp/core/api";
import type { Sequelize } from "sequelize";
2025-11-27 19:07:30 +00:00
2025-09-23 10:40:49 +00:00
import { logger } from "../lib/logger";
2025-11-27 19:07:30 +00:00
2026-02-12 14:46:47 +00:00
import type { ConfigType } from "./index";
2025-01-29 16:01:17 +00:00
/**
* Crea la instancia de Sequelize según ENV (DATABASE_URL o parámetros sueltos),
* autentica la conexión y devuelve la instancia lista para usar.
*/
2026-02-12 14:46:47 +00:00
export async function tryConnectToDatabase(config: ConfigType): Promise<Sequelize> {
2026-08-31 18:51:27 +00:00
return await createSequelize(config.database, logger);
2025-05-02 21:43:51 +00:00
}
/**
* Cierra la instancia de Sequelize (para integrar con el shutdown).
*/
export async function closeDatabase(sequelize: Sequelize): Promise<void> {
2026-08-31 18:51:27 +00:00
await closeSequelize(sequelize, logger);
2025-01-29 16:01:17 +00:00
}