PhpDev.App
j-guyon/CommandSchedulerBundle

j-guyon/CommandSchedulerBundle

Stars: 327

Forks: 122

Pull Requests: 106

Issues: 100

Watchers: 16

Last Updated: 2023-07-12 12:54:37

Symfony bundle that will allow you to schedule all your commands just like unix crontab, with a nice admin panel

License:

Languages: PHP, HTML

CommandSchedulerBundle

SensioLabsInsight Build Status Coverage Status Latest Stable Version

This bundle will allow you to easily manage scheduling for Symfony's console commands (native or not) with cron expression.

Versions & Dependencies

The following table shows the compatibilities of different versions of the bundle :

Version Symfony PHP
3.0 (master) ^3.4|^4.3|^5.0 >=7.2
2.2.x ^3.4|^4.3 >=7.1
2.0.2 (unmaintained) ^3.4|^4.1 >=5.6
1.2.x (unmaintained) ^2.8|^3.0 >=5.5
1.1.x (unmaintained) ^2.3 >=5.3

When using Symfony Flex there is an installation recipe.
To use it, you have to enable contrib recipes on your project : composer config extra.symfony.allow-contrib true

Features

  • An admin interface to add, edit, enable/disable or delete scheduled commands.
  • For each command, you define :
    • name
    • symfony console command (choice based on native list command)
    • cron expression (see Cron format for informations)
    • output file (for $output->write)
    • priority
  • A new console command scheduler:execute [--dump] [--no-output] which will be the single entry point to all commands
  • Management of queuing and prioritization between tasks
  • Locking system, to stop scheduling a command that has returned an error
  • Monitoring with timeout or failed commands (Json URL and command with mailing)
  • Translated in french, english, german and spanish
  • An EasyAdmin configuration template available here
  • Beta - Handle commands with a deamon (unix only) if you don't want to use a cronjob

Screenshots

list

new

new2

Documentation

See the documentation here.

License

This bundle is under the MIT license. See the complete license for info.

OPEN ISSUES

See all