3

我正在为网络服务器编写代码。每次推送到存储库后,我都尝试使用 webhook 执行以下任务:

  1. 更新网络服务器上的代码。
  2. 重新启动服务器以使我的更改生效。

我知道如何使修订控制运行 webhook。

无论我使用哪个版本控制等细节,我都想知道从 LINUX 中的 webhook 创建 POST 调用的侦听器的标准方法是什么。

我并非完全一无所知——我知道如何在 python 中创建一个 HTTP 服务器,并且我可以让它运行适当的 bash 命令,但这看起来很麻烦。有没有更直接的方法?

4

2 回答 2

2
  1. 设置一个脚本来接收 POST 请求(一个 PHP 脚本就足够了)
  2. 将请求保存到数据库并将请求标记为“尚未完成”
  3. 运行 crontab 并检查数据库是否有“尚未完成”的任务,然后对保存到数据库中的信息做任何你想做的事情。

这绝对不是最好的解决方案,但它确实有效。

于 2011-04-13T15:48:22.130 回答
-1

您可以使用 IronWorker,http://www.iron.io来 ssh 并在每次提交时执行您的任务。要启动 IronWorker 任务,您可以使用它的 webhook 支持。这是一篇博文,向您展示了如何使用 IronWorker 的 webhooks 功能,并且该博文已经包含了您想要的一半(它基于 github 提交启动了一项任务):http ://blog.iron.io/2012/04/one -webhook-to-rule-them-all-one-url.html

于 2012-05-23T22:08:55.413 回答