balazscsaba2006 / easy-cron-deployment-bundle
Easy Cron Deployment Bundle:使用 YAML 和 Symfony Console 简化 cron 管理
1.0.6
2020-06-19 16:42 UTC
Requires
- php: >=7.3
- symfony/config: ^4.0 || ^5.0
- symfony/console: ^4.0 || ^5.0
- symfony/dependency-injection: ^4.0 || ^5.0
- symfony/filesystem: ^4.0 || ^5.0
- symfony/http-kernel: ^4.0 || ^5.0
- symfony/process: ^4.0 || ^5.0
- symfony/yaml: ^4.0 || ^5.0
README
安装
步骤 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 文件中的任务匹配