dekalee/nightly-task-bundle

A bundle to group all your nightly task under one command

Installs: 5 974

Dependents: 0

Suggesters: 1

Stars: 0

Watchers: 5

Forks: 0

Open Issues: 0

Type:symfony-bundle

v1.0.1 2019-01-29 15:42 UTC

README

Scrutinizer Code Quality Code Coverage Latest Stable Version Total Downloads License

This bundle will launch all the configured nightly task.

Installation

Use composer to install the bundle

    $ composer require dekalee/nightly-task-bundle

If you are not using symfony4 you should activate the bundle in your AppKernel.php file.

    new Dekalee\NightlyTaskBundle\DekaleeNightlyTaskBundle(),

Usage

List commands

To list all the commands register as nightly task command run

    $ ./bin/console dekalee:nightly:list

Launch commands

To launch the nigthly tasks, run the command :

    $ ./bin/console dekalee:nightly:tasks

Define a command as nightly tasks

With an interface

To define a command as a nigthly task, it should implement the Dekalee\NightlyTaskBundle\Command\NightlyCommandInterface interface.

This interface will expose two methods:

  • getPriority will define the order in which the command should be run. Higher priority wins.
  • isEssential will determine if the nighty task command should fail if this particular command fails.

With a tag

It is also possible to transform a command in a nightly task by tagging the service directly.

   tags:
       - { name: console.command }
       - { name: dekalee_nightly.task.strategy, priority: 100 }

Your service should be defined as a command and then defined as a nightly task with a priority.

It is not possible to make those kind of command essential.