feat(db): idempotent migrations + auto-deploy on startup

- Rewrite 0000_init with IF NOT EXISTS on all tables, indexes and enums;
  wrap FK constraints in DO/EXCEPTION blocks so re-runs never fail
- Add missing suggestions table to init migration
- Add migration 0002 to create message_logs table (IF NOT EXISTS)
- Add entrypoint.sh: runs prisma migrate deploy before starting the server
- Update Dockerfile to copy entrypoint.sh and use it as CMD
- Add prisma:migrate script to package.json for manual runs

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Lizandro Guarnizo
2026-07-02 13:10:33 -05:00
co-authored by Claude Sonnet 4.6
parent 749a1e860d
commit 1e63ed1873
6 changed files with 148 additions and 141 deletions
+4 -1
View File
@@ -12,5 +12,8 @@ COPY --from=builder /app/dist ./dist
COPY --from=builder /app/node_modules ./node_modules
COPY --from=builder /app/package.json ./
COPY --from=builder /app/prisma ./prisma
COPY --from=builder /app/prisma.config.js ./
COPY --from=builder /app/entrypoint.sh ./
RUN chmod +x entrypoint.sh
EXPOSE 3001
CMD ["node", "dist/main.js"]
CMD ["sh", "entrypoint.sh"]