From 5c4f3a62f77b0dfdd4392463f814d78562af4c22 Mon Sep 17 00:00:00 2001 From: tobinio Date: Tue, 18 Jun 2024 19:50:15 +0200 Subject: [PATCH] feat: add task --- nuxt.config.ts | 6 ++++++ server/plugins/startUpAnalyze.ts | 3 +++ server/tasks/analyze.ts | 15 +++++++++++++++ 3 files changed, 24 insertions(+) create mode 100644 server/plugins/startUpAnalyze.ts create mode 100644 server/tasks/analyze.ts diff --git a/nuxt.config.ts b/nuxt.config.ts index 9252762..310832c 100644 --- a/nuxt.config.ts +++ b/nuxt.config.ts @@ -23,6 +23,12 @@ export default defineNuxtConfig({ driver: 'fs', base: './.data/statistics' } + }, + experimental: { + tasks: true + }, + scheduledTasks: { + '0 0 * * *': ['analyze'] } }, modules: ["nuxt-icon"] diff --git a/server/plugins/startUpAnalyze.ts b/server/plugins/startUpAnalyze.ts new file mode 100644 index 0000000..590d012 --- /dev/null +++ b/server/plugins/startUpAnalyze.ts @@ -0,0 +1,3 @@ +export default defineNitroPlugin(async () => { + await runTask("analyze") +}) \ No newline at end of file diff --git a/server/tasks/analyze.ts b/server/tasks/analyze.ts new file mode 100644 index 0000000..0995000 --- /dev/null +++ b/server/tasks/analyze.ts @@ -0,0 +1,15 @@ +export default defineTask({ + meta: { + name: "analyze", + description: "Update all the statistics", + }, + async run() { + console.log("Running statistics update"); + + console.time("finish update"); + await updateStatistics() + console.timeEnd("finish update"); + + return {result: "Success"}; + }, +}); \ No newline at end of file -- 2.51.2