Fix db seed overwriting password every time

This commit is contained in:
Ahmed Al-Taiar
2024-10-08 15:45:21 -04:00
parent 6873c5c026
commit 708634fa68

View File

@ -15,40 +15,32 @@ export default async () => {
const [hashedPassword, salt] = hashPassword(admin.password) const [hashedPassword, salt] = hashPassword(admin.password)
await db.user.upsert({ const existingAdmin = await db.user.findFirst({
where: { where: {
email: admin.email, 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() const titles = await db.titles.findFirst()
await db.titles.upsert({ if (!titles)
where: { await db.titles.create({
id: 1, data: {
}, titles: Array.from({ length: MAX_TITLES }).map(
create: { (_, i) => `a title ${i + 1}`
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}`),
},
})
} catch (error) { } catch (error) {
console.error(error) console.error(error)
} }