// src/db/migrate.ts
import { neon } from '@neondatabase/serverless';
import { drizzle } from 'drizzle-orm/neon-http';
import { migrate } from 'drizzle-orm/postgres-js/migrator';
import { resolve } from 'node:path';
export async function migrateLatest() {
console.log('Running migrations...');
const dbUrl: string = process.env.DATABASE_URL!;
const client = neon(dbUrl);
// const client = postgres(dbUrl, { max: 1 });
const db = drizzle(client);
// XXX(Phong): if you change `process.cwd()`, you need to change Dockerfile
const dbDir = resolve(
process.env.NODE_ENV === 'production' ? process.cwd() : __dirname,
'migrations',
);
await migrate(db, {
migrationsFolder: dbDir,
});
console.log('Migrations completed successfully');
// client.end();
}
// src/db/migrate.ts
import { neon } from '@neondatabase/serverless';
import { drizzle } from 'drizzle-orm/neon-http';
import { migrate } from 'drizzle-orm/postgres-js/migrator';
import { resolve } from 'node:path';
export async function migrateLatest() {
console.log('Running migrations...');
const dbUrl: string = process.env.DATABASE_URL!;
const client = neon(dbUrl);
// const client = postgres(dbUrl, { max: 1 });
const db = drizzle(client);
// XXX(Phong): if you change `process.cwd()`, you need to change Dockerfile
const dbDir = resolve(
process.env.NODE_ENV === 'production' ? process.cwd() : __dirname,
'migrations',
);
await migrate(db, {
migrationsFolder: dbDir,
});
console.log('Migrations completed successfully');
// client.end();
}