qtsd/slack-cron

执行命令并将错误或输出发送到 Slack(适用于 cron 任务)。

dev-master 2017-05-31 05:38 UTC

This package is not auto-updated.

Last update: 2024-09-24 23:37:49 UTC


README

一个简单的 PHP 工具,使用了某些 symfony 组件。
用于执行命令并将错误或输出通过 Incoming Webhooks 发送到 Slack(适用于 cron 任务)。

要求

  • PHP 5.6 及以上。
  • cURL 可从路径访问。
  • 使用 composer 安装依赖项。

安装

通过 composer

$ composer create-project qtsd/slack-cron slack-cron dev-master --keep-vcs

从源代码

$ git clone git@github.com:qtsd/slack-cron.git
$ composer install -d slack-cron

配置

路径
您可以将应用程序链接到路径,以便从任何地方使用它。
符号链接通常位于 /usr/local/bin,但 cron 路径不包括它,因此请使用 /usr/bin

$ sudo ln -s `pwd`/slack-cron/bin/console /usr/bin/slack-cron

Slack
composer install 时会询问 Slack webhook url,并将其保存在 conf/parameters.yml 中。
要获取 webhook url,请访问 Slack > 自定义集成入门 > 新 webhook。

文档

用法
run [options] <exec> [<path>]

参数

  • exec 要执行的命令。
  • path 工作目录。

选项

  • --timeout[=TIMEOUT] 命令超时时间(秒)[默认:120]
  • --output-all 将所有输出发送到 Slack(不仅限于错误)

示例

从路径调用

$ slack-cron run [...]

从安装目录调用

$ bin/console run [...]

列出当前目录的文件,并将输出发送到 Slack

$ slack-cron run 'ls -al' --output-all

尝试创建文件 /foo.txt,如果遇到错误则将输出发送到 Slack

$ slack-cron run 'touch foo' /

许可

在 MIT 许可证下发布: https://open-source.org.cn/licenses/mit-license.php