diff --git a/entrypoint.sh b/entrypoint.sh index 5aec280..d0f62a0 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -1,4 +1,4 @@ #!/bin/sh set -e -bun run db:push +bun run src/db/migrate.ts exec bun run src/server/index.ts diff --git a/src/db/migrate.ts b/src/db/migrate.ts new file mode 100644 index 0000000..f7bd12d --- /dev/null +++ b/src/db/migrate.ts @@ -0,0 +1,13 @@ +import { Database } from "bun:sqlite"; +import { drizzle } from "drizzle-orm/bun-sqlite"; +import { migrate } from "drizzle-orm/bun-sqlite/migrator"; + +const sqlite = new Database(process.env.DATABASE_PATH || "gearbox.db"); +sqlite.run("PRAGMA journal_mode = WAL"); +sqlite.run("PRAGMA foreign_keys = ON"); + +const db = drizzle(sqlite); +migrate(db, { migrationsFolder: "./drizzle" }); + +sqlite.close(); +console.log("Migrations applied successfully");