illusorium/minion

官方kohana模块的分支,支持队列任务

安装: 34

依赖: 0

建议: 0

安全: 0

星级: 0

关注者: 0

分支: 76

类型:kohana-module

v3.3.6 2016-03-23 17:13 UTC

README

Minion 是一个通过命令行运行任务的框架。

该系统灵感来源于 ruckusing,它有一个很好的任务定义系统,但缺乏与 kohana 集成的灵活性。

入门

首先,在你的 bootstrap 中下载并启用模块

然后复制 bash 脚本 minion 到你的 index.php 旁边(最可能在网站根目录)。如果你希望可执行文件位于 index.php 的不同位置,只需修改 bash 脚本来指向 index.php。

然后你可以这样运行 minion

./minion {task}

要查看 minion 任务列表,运行 minion 不带任何参数,或使用 --help 选项

./minion
./minion --help

要查看特定 minion 任务的帮助,运行

./minion {task} --help

出于安全原因,Minion 只能从命令行运行。尝试通过 http 访问它将引发 Kohana_Exception

如果你由于任何原因无法使用二进制文件,只需在上面的示例中将 ./minion {task} 替换为

php index.php --uri=minion --task={task}

编写自己的任务

所有 minion 任务都必须位于 classes/task/ 中。它们可以位于任何模块中,因此允许你将自定义 minion 任务与自己的模块/产品一起分发。

每个任务都必须扩展抽象类 Minion_Task 并实现 Minion_Task::_execute()

有关更多详细信息,请参阅 Minion_Task

文档

代码注释足够好,无需文档,Minion 可以提取类的 doccomment 用于命令行的文档。

测试

此模块使用 unittest 模块 进行单元测试。您可以使用 minion 组仅运行 minion 测试。

例如。

phpunit --group minion

请随时贡献测试(!), 它们位于 tests/minion 目录中。 :)

许可证

此许可证与 Kohana 相同。