Files
fredy/lib/services/crons/demoCleanup-cron.js

25 lines
785 B
JavaScript
Raw Normal View History

import { removeJobsByUserId } from '../storage/jobStorage.js';
import { getUsers } from '../storage/userStorage.js';
import logger from '../logger.js';
import cron from 'node-cron';
import { getSettings } from '../storage/settingsStorage.js';
/**
* if we are running in demo environment, we have to cleanup the db files (specifically the jobs table)
*/
export function cleanupDemoAtMidnight() {
cron.schedule('0 0 * * *', cleanup);
}
async function cleanup() {
const settings = await getSettings();
if (settings.demoMode) {
2025-05-16 13:20:54 +02:00
const demoUser = getUsers(false).find((user) => user.username === 'demo');
if (demoUser == null) {
2025-09-13 18:57:56 +02:00
logger.error('Demo user not found, cannot remove Jobs');
return Promise.resolve();
}
removeJobsByUserId(demoUser.id);
2025-05-16 13:20:54 +02:00
}
}