mirror of
https://github.com/kmc7468/arkvault.git
synced 2025-12-15 06:18:48 +00:00
Production 환경에서 실행시 DB 마이그레이션을 자동으로 수행하도록 구현
This commit is contained in:
@@ -1,9 +1,12 @@
|
||||
import { redirect, type ServerInit, type Handle } from "@sveltejs/kit";
|
||||
import schedule from "node-schedule";
|
||||
import { cleanupExpiredUserClientChallenges } from "$lib/server/db/client";
|
||||
import { migrateDB } from "$lib/server/db/drizzle";
|
||||
import { cleanupExpiredRefreshTokens } from "$lib/server/db/token";
|
||||
|
||||
export const init: ServerInit = () => {
|
||||
migrateDB();
|
||||
|
||||
schedule.scheduleJob("0 * * * *", () => {
|
||||
cleanupExpiredUserClientChallenges();
|
||||
cleanupExpiredRefreshTokens();
|
||||
|
||||
@@ -1,7 +1,16 @@
|
||||
import Database from "better-sqlite3";
|
||||
import { drizzle } from "drizzle-orm/better-sqlite3";
|
||||
import { migrate } from "drizzle-orm/better-sqlite3/migrator";
|
||||
import env from "$lib/server/loadenv";
|
||||
|
||||
const client = new Database(env.databaseUrl);
|
||||
const db = drizzle(client);
|
||||
|
||||
export default drizzle(client);
|
||||
export const migrateDB = () => {
|
||||
if (process.env.NODE_ENV === "production") {
|
||||
console.log("test");
|
||||
migrate(db, { migrationsFolder: "./drizzle" });
|
||||
}
|
||||
};
|
||||
|
||||
export default db;
|
||||
|
||||
Reference in New Issue
Block a user