| <?php |
|
|
| namespace Kanboard\Console; |
|
|
| use Symfony\Component\Console\Input\ArrayInput; |
| use Symfony\Component\Console\Input\InputInterface; |
| use Symfony\Component\Console\Output\OutputInterface; |
| use Symfony\Component\Console\Output\NullOutput; |
|
|
| class CronjobCommand extends BaseCommand |
| { |
| private $commands = array( |
| 'projects:daily-stats', |
| 'notification:overdue-tasks', |
| 'trigger:tasks', |
| ); |
|
|
| protected function configure() |
| { |
| $this |
| ->setName('cronjob') |
| ->setDescription('Execute daily cronjob'); |
| } |
|
|
| protected function execute(InputInterface $input, OutputInterface $output): int |
| { |
| foreach ($this->commands as $command) { |
| $job = $this->getApplication()->find($command); |
| $job->run(new ArrayInput(array('command' => $command)), new NullOutput()); |
| } |
| return 0; |
| } |
| } |
|
|