cron.js 724 B

123456789101112131415161718192021222324252627282930
  1. const cron = require('node-cron');
  2. const { annoyUsers } = require('server/routes/annoy');
  3. function setupCron(config, db, logger) {
  4. if (!config.schedule) {
  5. logger.warn('Not setting up schedule as it is not defined. Please define the SCHEDULE_ANNOY env variable as a cron schedule, e.g. SCHEDULE_ANNOY=10 1 * * *');
  6. return;
  7. }
  8. const task = async () => {
  9. logger.verbose('Running annoy on schedule!');
  10. await annoyUsers(config, db, logger);
  11. };
  12. const schedules = config.schedule.split(',');
  13. schedules.forEach(schedule => {
  14. logger.verbose('Scheduling annoy at', schedule);
  15. cron.schedule(schedule, task);
  16. });
  17. }
  18. module.exports = {
  19. setupCron
  20. };