feat: stabilize API startup and lifecycle management
- Refactor server initialization to separate concerns and improve error handling. - Implement centralized environment validation using Zod. - Introduce database, Redis, and queue lifecycle management. - Add health check endpoints for liveness and readiness. - Enhance error handling middleware for better response structure. - Implement rate limiting for API endpoints. - Add request ID middleware for traceability. - Create Sequelize CLI configuration and baseline migration for schema management. - Establish CI workflow with Gitea for testing and syntax checks. - Document foundational changes and migration strategy in PHASE_0_FOUNDATION_STABILIZATION.md. - Add Docker Compose configuration for local development and testing. - Implement unit and integration tests for critical functionality.
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
const db = require("../models");
|
||||
|
||||
const initializeDatabase = async () => db.sequelize.authenticate();
|
||||
const checkDatabase = async () => {
|
||||
try { await db.sequelize.authenticate(); return true; } catch (_error) { return false; }
|
||||
};
|
||||
const closeDatabase = async () => db.sequelize.close();
|
||||
|
||||
module.exports = { initializeDatabase, checkDatabase, closeDatabase };
|
||||
Reference in New Issue
Block a user