evozon-php/ easy-cron-deployment-bundle
Easy Cron Deployment Bundle:使用 YAML 和 Symfony Console 简单管理 cron
v1.1.2
2019-08-21 12:00 UTC
Requires
- php: >=7.1
- symfony/symfony: ^4.0
Requires (Dev)
- symfony/phpunit-bridge: ^4.0
README
安装
步骤 1:下载 Bundle
打开命令行控制台,进入您的项目目录,并执行以下命令以下载此 Bundle 的最新稳定版本
$ composer require evozon-php/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 文件中的任务匹配