UNPKG

@augment-vir/node

Version:

A collection of augments, helpers types, functions, and classes only for Node.js (backend) JavaScript environments.

30 lines (29 loc) 1.05 kB
import { runPrismaCommand } from './run-prisma-command.js'; export async function getPrismaDiff(schemaFilePath, env = {}) { const command = [ 'migrate', 'diff', `--from-schema-datamodel='${schemaFilePath}'`, `--to-schema-datasource='${schemaFilePath}'`, ].join(' '); const results = await runPrismaCommand({ command }, undefined, env); if (results.stdout.trim() === 'No difference detected.') { return ''; } else { return results.stdout.trim(); } } export async function doesPrismaDiffExist(schemaFilePath, env = {}) { return !!(await getPrismaDiff(schemaFilePath, env)); } export async function resetDevPrismaDatabase(schemaFilePath, options, env = {}) { if (options.withMigrations) { await runPrismaCommand({ command: 'migrate reset --force --skip-generate --skip-seed' }, schemaFilePath, env); } else { await runPrismaCommand({ command: 'db push --accept-data-loss --skip-generate', }, schemaFilePath, env); } }