feat: run tasks at startup

This commit is contained in:
Huskydog9988
2025-04-23 21:14:16 -04:00
parent 31ad8505b7
commit f1f19c8263
5 changed files with 15 additions and 4 deletions

View File

@ -1,4 +1,4 @@
import prisma from "../internal/db/database";
import prisma from "~/server/internal/db/database";
export default defineNitroPlugin(async (_nitro) => {
// Ensure system user exists

View File

@ -1,4 +1,4 @@
import prisma from "../internal/db/database";
import prisma from "~/server/internal/db/database";
export default defineNitroPlugin(async (_nitro) => {
const userCount = await prisma.user.count({

View File

@ -0,0 +1,7 @@
export default defineNitroPlugin(async (_nitro) => {
// all tasks we should run on server boot
await Promise.all([
runTask("cleanup:invitations"),
runTask("cleanup:sessions"),
]);
});

View File

@ -5,6 +5,8 @@ export default defineTask({
name: "cleanup:invitations",
},
async run() {
console.log("[Task cleanup:invitations]: Cleaning invitations");
const now = new Date();
await prisma.invitation.deleteMany({
@ -15,6 +17,7 @@ export default defineTask({
},
});
console.log("[Task cleanup:invitations]: Done");
return { result: true };
},
});

View File

@ -2,11 +2,12 @@ import sessionHandler from "~/server/internal/session";
export default defineTask({
meta: {
name: "cleanup:invitations",
name: "cleanup:sessions",
},
async run() {
console.log("[Task cleanup:sessions]: Cleaning up sessions");
await sessionHandler.cleanupSessions();
console.log("[Task cleanup:sessions]: Done");
return { result: true };
},
});