fix: sync production DB schema on every server start

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
EENE Dashboard
2026-06-05 22:34:48 +09:00
parent 0ee52cf35f
commit ccf892e479
2 changed files with 16 additions and 7 deletions

View File

@@ -5,8 +5,9 @@
"main": "dist/index.js", "main": "dist/index.js",
"scripts": { "scripts": {
"dev": "tsx watch src/index.ts", "dev": "tsx watch src/index.ts",
"build": "tsc", "db:sync": "prisma migrate deploy || prisma db push",
"start": "node dist/index.js", "build": "prisma generate && tsc",
"start": "npm run db:sync && node dist/index.js",
"db:migrate": "prisma migrate dev", "db:migrate": "prisma migrate dev",
"db:generate": "prisma generate", "db:generate": "prisma generate",
"db:studio": "prisma studio", "db:studio": "prisma studio",
@@ -23,6 +24,7 @@
"jsonwebtoken": "^9.0.2", "jsonwebtoken": "^9.0.2",
"morgan": "^1.10.0", "morgan": "^1.10.0",
"multer": "^1.4.5-lts.1", "multer": "^1.4.5-lts.1",
"prisma": "^6.0.0",
"socket.io": "^4.8.0", "socket.io": "^4.8.0",
"uuid": "^10.0.0" "uuid": "^10.0.0"
}, },
@@ -35,7 +37,6 @@
"@types/multer": "^1.4.12", "@types/multer": "^1.4.12",
"@types/node": "^22.0.0", "@types/node": "^22.0.0",
"@types/uuid": "^10.0.0", "@types/uuid": "^10.0.0",
"prisma": "^6.0.0",
"tsx": "^4.19.0", "tsx": "^4.19.0",
"typescript": "^5.6.0" "typescript": "^5.6.0"
} }

View File

@@ -5,11 +5,19 @@ ALTER TABLE "milestones" ADD COLUMN IF NOT EXISTS "links" TEXT;
-- AlterTable -- AlterTable
ALTER TABLE "files" ADD COLUMN IF NOT EXISTS "milestoneId" TEXT; ALTER TABLE "files" ADD COLUMN IF NOT EXISTS "milestoneId" TEXT;
CREATE INDEX IF NOT EXISTS "files_milestoneId_idx" ON "files"("milestoneId"); CREATE INDEX IF NOT EXISTS "files_milestoneId_idx" ON "files"("milestoneId");
ALTER TABLE "files" ADD CONSTRAINT "files_milestoneId_fkey" DO $$ BEGIN
FOREIGN KEY ("milestoneId") REFERENCES "milestones"("id") ON DELETE SET NULL ON UPDATE CASCADE; ALTER TABLE "files" ADD CONSTRAINT "files_milestoneId_fkey"
FOREIGN KEY ("milestoneId") REFERENCES "milestones"("id") ON DELETE SET NULL ON UPDATE CASCADE;
EXCEPTION
WHEN duplicate_object THEN NULL;
END $$;
-- AlterTable -- AlterTable
ALTER TABLE "task_details" ADD COLUMN IF NOT EXISTS "milestoneId" TEXT; ALTER TABLE "task_details" ADD COLUMN IF NOT EXISTS "milestoneId" TEXT;
CREATE INDEX IF NOT EXISTS "task_details_milestoneId_idx" ON "task_details"("milestoneId"); CREATE INDEX IF NOT EXISTS "task_details_milestoneId_idx" ON "task_details"("milestoneId");
ALTER TABLE "task_details" ADD CONSTRAINT "task_details_milestoneId_fkey" DO $$ BEGIN
FOREIGN KEY ("milestoneId") REFERENCES "milestones"("id") ON DELETE CASCADE ON UPDATE CASCADE; ALTER TABLE "task_details" ADD CONSTRAINT "task_details_milestoneId_fkey"
FOREIGN KEY ("milestoneId") REFERENCES "milestones"("id") ON DELETE CASCADE ON UPDATE CASCADE;
EXCEPTION
WHEN duplicate_object THEN NULL;
END $$;