Auto-migrate on API startup in production
Runs drizzle-kit migrations automatically when NODE_ENV=production, so deployments don't require manual migration commands. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -11,10 +11,22 @@ import { shareRoutes } from './routes/share.js';
|
||||
import { uploadRoutes } from './routes/uploads.js';
|
||||
import { activityRoutes } from './routes/activity.js';
|
||||
import { onboardingRoutes } from './routes/onboarding.js';
|
||||
import { migrate } from 'drizzle-orm/postgres-js/migrator';
|
||||
import type { AppEnv } from './types.js';
|
||||
|
||||
const db = createDb(process.env.DATABASE_URL!);
|
||||
|
||||
// Auto-migrate on startup in production
|
||||
if (process.env.NODE_ENV === 'production') {
|
||||
console.log('[Boot] Running migrations...');
|
||||
try {
|
||||
await migrate(db, { migrationsFolder: './packages/db/src/migrations' });
|
||||
console.log('[Boot] Migrations applied.');
|
||||
} catch (err) {
|
||||
console.error('[Boot] Migration failed:', err);
|
||||
}
|
||||
}
|
||||
|
||||
const app = new Hono<AppEnv>()
|
||||
.use('*', logger())
|
||||
.use(
|
||||
|
||||
Reference in New Issue
Block a user