signifly/laravel-scheduling-tasks

组织您的Laravel调度任务。

v2.0.0 2023-11-21 14:14 UTC

This package is auto-updated.

Last update: 2024-09-21 16:24:23 UTC


README

Latest Version on Packagist Tests StyleCI Quality Score Total Downloads

signifly/laravel-scheduling-tasks 包允许您轻松组织您的调度任务,并附带一个方便的 make:task 命令。

以下是如何使用它的一个小示例。

// Inside the app/Console/Kernel.php file add this
use Signifly\SchedulingTasks\Facades\TaskLoader;

protected function schedule(Schedule $schedule)
{
    TaskLoader::loadFor($schedule);
}

为了创建一个新的任务,请使用随包提供的命令

$ php artisan make:task BackupDaily

它会生成一个位于 app/Console/Tasks/BackupDaily.php 的新任务,可以按照这种方式进行配置

<?php

namespace App\Console\Tasks;

use Signifly\SchedulingTasks\TaskContract;
use Illuminate\Console\Scheduling\Schedule;

class BackupDaily implements TaskContract
{
    public function __invoke(Schedule $schedule)
    {
        $schedule->command('backup:run')
            ->daily()
            ->at('01:00');
    }
}

如果您有一个想要排除在加载之外的任务,可以这样做

protected function schedule(Schedule $schedule)
{
    TaskLoader::loadFor($schedule, [
        \App\Console\Tasks\BackupDaily::class,
    ]);

    // \App\Console\Tasks\BackupDaily::class will not get loaded.
}

安装

您可以通过composer安装此包

$ composer require signifly/laravel-scheduling-tasks

该包将自动注册自己。

测试

$ composer test

安全

如果您发现任何安全问题,请通过电子邮件 dev@signifly.com 联系我们,而不是使用问题跟踪器。

致谢

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件