balazscsaba2006/easy-cron-deployment-bundle

Easy Cron Deployment Bundle:使用 YAML 和 Symfony Console 简化 cron 管理

1.0.6 2020-06-19 16:42 UTC

This package is auto-updated.

Last update: 2024-09-20 02:22:19 UTC


README

Packagist Packagist Packagist

安装

步骤 1:下载 Bundle

打开命令行,进入项目目录,执行以下命令以下载此 Bundle 的最新稳定版本

$ composer require balazscsaba2006/easy-cron-deployment-bundle

此命令需要您全局安装了 Composer,具体请参考 Composer 文档中的安装章节

步骤 2:启用 Bundle

然后,通过将其添加到项目 app/AppKernel.php 文件中注册的 Bundle 列表来启用此 Bundle

<?php
// app/AppKernel.php

// ...
class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = array(
            // ...

            new MadrakIO\EasyCronDeploymentBundle\MadrakIOEasyCronDeploymentBundle(),
        );

        // ...
    }

    // ...
}

步骤 3:创建 cron.yml 文件

创建 app/config/cron.yml 并参考以下示例

madrak_io_easy_cron_deployment:
    jobs:
        -
            minute: 0
            hour: 0
            day: 1
            month: 1
            task: 'php somescript.php'
            hosts: ['node-1', 'node-2']
            disabled: true
        -
            minute: 0
            task: 'php someotherscript.php'

步骤 4:将 cron.yml 导入 app/config/config.yml

imports:
    - { resource: cron.yml }

可能的命令

app/console madrakio:cron:deploy 根据 cron.yml 部署 cron

app/console madrakio:cron:disable 在每一行前添加 # 以禁用所有当前 cron 任务

app/console madrakio:cron:enable 删除 cron 任务前的所有 #

app/console madrakio:cron:verify 验证 cron 任务是否与 cron.yml 文件中的任务匹配