Skip to content

Scheduled tasks

Tidal PTC runs a few recurring tasks through the Laravel scheduler, defined in routes/console.php. This page lists each task, how often it runs and when it is active, and how the scheduler itself is started.

Command Frequency Runs when What it does
ptc:send-reminders Hourly Always Emails each user a digest of their upcoming conferences once one falls within their reminder lead time. See Notification events.
activitylog:clean Daily Always Deletes activity log entries older than 365 days.
tenant:purge-expired Every five minutes, without overlapping Cloud mode only Permanently deletes cloud tenants whose subscription has expired, along with all of their data.
migrate:fresh --force --seed --seeder=DemoSeeder Hourly Demo mode only Wipes the database and reseeds the demo data.

The tasks only run if the scheduler is running.

Install How the scheduler runs
Docker Compose The scheduler service runs php artisan schedule:work. No host cron entry is needed.
VM install-vm.sh adds a cron entry for the app user that runs php artisan schedule:run every minute.
DigitalOcean App Platform The container start script runs php artisan schedule:work in the background.

For a manual VM install, add the cron entry yourself:

Terminal window
echo '* * * * * cd /var/www/tidal-ptc && php artisan schedule:run >> /dev/null 2>&1' | sudo crontab -u tidal -

To see the schedule and when each task runs next:

Terminal window
php artisan schedule:list
Tidal PTC by Archboard