From 708634fa682842fd86449560805f669b98352d9f Mon Sep 17 00:00:00 2001 From: Ahmed Al-Taiar Date: Tue, 8 Oct 2024 15:45:21 -0400 Subject: [PATCH] Fix db seed overwriting password every time --- scripts/seed.ts | 46 +++++++++++++++++++--------------------------- 1 file changed, 19 insertions(+), 27 deletions(-) diff --git a/scripts/seed.ts b/scripts/seed.ts index 992845f..b7465b1 100644 --- a/scripts/seed.ts +++ b/scripts/seed.ts @@ -15,40 +15,32 @@ export default async () => { const [hashedPassword, salt] = hashPassword(admin.password) - await db.user.upsert({ + const existingAdmin = await db.user.findFirst({ where: { email: admin.email, }, - create: { - username: admin.username, - email: admin.email, - hashedPassword, - salt, - }, - update: { - username: admin.username, - hashedPassword, - salt, - }, }) + if (!existingAdmin) + await db.user.create({ + data: { + username: admin.username, + email: admin.email, + hashedPassword, + salt, + }, + }) + const titles = await db.titles.findFirst() - await db.titles.upsert({ - where: { - id: 1, - }, - create: { - titles: Array.from({ length: MAX_TITLES }).map( - (_, i) => `a title ${i + 1}` - ), - }, - update: { - titles: - titles?.titles || - Array.from({ length: MAX_TITLES }).map((_, i) => `a title ${i + 1}`), - }, - }) + if (!titles) + await db.titles.create({ + data: { + titles: Array.from({ length: MAX_TITLES }).map( + (_, i) => `a title ${i + 1}` + ), + }, + }) } catch (error) { console.error(error) }