Developed with love by KnpLabs Hire us for your project!
262

CommandSchedulerBundle

by j-guyon

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

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
2.x ^3.4\ ^4
1.2.x (unmaintained) ^2.8\ ^3.0
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

Screenshots

list

new

new2

Documentation

See the documentation here.

License

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

jmose_command_scheduler:
doctrine_manager: default
log_path: %kernel.logs_dir%
lock_timeout: false
monitor_mail: []
monitor_mail_subject: cronjob monitoring %%s, %%s
send_ok: false
excluded_command_namespaces: Array
  • Merge pull request #128 from BernhardWebstudio/patch-1
    By web-flow, 2 months ago
  • Update documentation to fix #125
    By web-flow, 2 months ago
  • Add php 7.3 builds in travis
    By web-flow, 3 months ago
  • Merge pull request #126 from sctt/master
    By web-flow, 3 months ago
  • force status refresh before command execution
    By web-flow, 3 months ago
  • Merge pull request #123 from J-Mose/easy_admin
    By web-flow, 3 months ago
  • EasyAdmin config template in doc and adapt some translations
    By j.guyon, 3 months ago
  • EasyAdmin config template in doc and adapt some translations
    By j.guyon, 3 months ago
  • Merge pull request #122 from J-Mose/translator_interface
    By web-flow, 3 months ago
  • Correct use of TranslatorInterface in DI
    By j.guyon, 3 months ago
  • Merge pull request #120 from J-Mose/controller_as_services
    By web-flow, 3 months ago
  • Fix auto-injection container deprecated warning
    By j.guyon, 3 months ago
  • Fix auto-injection container deprecated warning
    By j.guyon, 3 months ago
  • Update .travis.yml
    By web-flow, 3 months ago
  • Move symfony/framework-bundle and symfony/security-bundle to dev deps
    By j.guyon, 3 months ago
  • Merge remote-tracking branch 'origin/master'
    By j.guyon, 3 months ago
  • Add UnitTest on CronExpressionValidator
    By j.guyon, 3 months ago
  • Merge pull request #118 from J-Mose/sf42_deprecated
    By web-flow, 3 months ago
  • Replace the deprecated bundle notation in routing.yml
    By j.guyon, 3 months ago
  • Fix Deprecated TreeBuilder constructor without root node information
    By j.guyon, 3 months ago
  • Add Symfony 4.2 in travis build
    By j.guyon, 3 months ago
  • Remove deprecated ContainerAware usage in command and controller
    By j.guyon, 3 months ago
  • Fix translation file from #100
    By j.guyon, 3 months ago
  • Merge remote-tracking branch 'origin/master'
    By j.guyon, 3 months ago
  • Merge pull request #100 from maxmilhas/portuguese-translation
    By web-flow, 3 months ago
  • Merge remote-tracking branch 'origin/master'
    By j.guyon, 3 months ago
  • Merge pull request #99 from dlabouesse/master
    By web-flow, 4 months ago
  • Remove FrameworkExtra dependency
    By j.guyon, 4 months ago
  • Insight : use KernelInterface instead of Kernel
    By j.guyon, 4 months ago
  • Merge pull request #110 from fyrye/patch-2
    By web-flow, 4 months ago