Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

Cron

The DXP's cron runner (ibexa/cron) - the one crontab line that runs every scheduled job, which user runs it, logging, and what does and does not run there (no publishing scheduler ships with the DXP).

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/dxp-developers/cron.md

On this page

Cron

This page is for developers and administrators who set up the scheduled jobs of a DXP project. The DXP ships ibexa/cron: one console command runs every job that bundles have registered.

Contents

  1. The crontab line
  2. Which user
  3. What runs there
  4. Adding your own job
  5. Checking it works

The crontab line

From the skeleton's guide (section 17), every five minutes:

*/5 * * * * /usr/bin/php /var/www/exponential/bin/console ibexa:cron:run --env=prod >> /var/log/exponential-cron.log 2>&1

The command still has its upstream name; there is no exponential: alias for it (Console commands). --quiet suppresses its output.

Which user

Install it in the web server user's crontab (crontab -e -u www-data), so files it writes belong to the same user as the web requests' files (File permissions).

What runs there

Whatever the installed bundles registered as cron jobs. The DXP does not include a publishing scheduler, so no "publish at a date" job exists out of the box (What the DXP ships). Maintenance you may want to schedule yourself, as separate crontab lines:

JobCommand
Prune old versions (nightly, test the --keep value first)exponential:content:cleanup-versions --keep=5
Check external linksexponential:check-urls
Process queued messages, if you use an async transportmessenger:consume ... under a process manager (Messenger)

Adding your own job

Write a Symfony console command in src/Command/ and add a crontab line for it, or register it with the cron bundle if you want it to run inside ibexa:cron:run. Keep each job idempotent: it must be safe when it runs twice.

Checking it works

sudo -u www-data php bin/console ibexa:cron:run --env=prod -vv   # run once by hand
tail -n 50 /var/log/exponential-cron.log

Become an Exponential Partner

Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x