1
0
Fork 0

feat(prisma): seed static data from content/

This commit is contained in:
Vojtěch Mareš 2023-06-25 16:00:34 +02:00
parent ce8bb3e8f8
commit 51cd84e7ee
Signed by: vojtech.mares
GPG key ID: C6827B976F17240D

53
prisma/seed.ts Normal file
View file

@ -0,0 +1,53 @@
import { prisma } from "~/server/db";
import { getAllTrainingsWithMetadata } from "~/lib/content/training";
async function seed() {
const trainings = await getAllTrainingsWithMetadata();
let instertedTrainings = [];
for (const training of trainings) {
instertedTrainings.push(
await prisma.training.upsert({
where: { id: training.metadata.id },
update: {
id: training.metadata.id ,
name: training.metadata.name,
slug: training.metadata.slug,
description: training.metadata.description,
days: training.metadata.days,
weight: training.metadata.weight,
draft: training.metadata.draft,
logoURL: training.metadata.logoURL,
repositoryURL: training.metadata.repositoryURL,
priceOpen: training.metadata.priceOpen,
priceCorporate: training.metadata.priceCorporate,
content: training.content,
},
create: {
id: training.metadata.id ,
name: training.metadata.name,
slug: training.metadata.slug,
description: training.metadata.description,
days: training.metadata.days,
weight: training.metadata.weight,
draft: training.metadata.draft,
logoURL: training.metadata.logoURL,
repositoryURL: training.metadata.repositoryURL,
priceOpen: training.metadata.priceOpen,
priceCorporate: training.metadata.priceCorporate,
content: training.content,
},
})
);
}
}
seed()
.then(async () => {
await prisma.$disconnect()
})
.catch(async (e) => {
console.error(e)
await prisma.$disconnect()
process.exit(1)
});