扫码阅读
手机扫码阅读

给你的项目增加 Git WebHooks

438 2023-07-18

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

查看原文:给你的项目增加 Git WebHooks
文章来源:
鲁飞
扫码关注公众号
WebHooks 文章摘要

WebHooks 自动部署及 sy-records/webhooks 扩展包使用摘要

在之前的文章《使用 Github 的 WebHooks 实现生产环境代码自动更新》中提到了使用 WebHooks 实现代码的自动部署。不同的 Git 仓库平台(GitHub、GitLab、Gitee)发送的 WebHooks 请求数据格式存在差异,文章提供了一个解决方案。

解决方案

使用 composer 扩展包 sy-records/webhooks 可以帮助项目支持 WebHooks,并允许自定义 WebHooks 规则。该扩展包支持设定多种条件,如分支、Tag、提交者和提交内容,以触发特定事件,并且能够验证 WebHooks 请求的有效性。

安装

sy-records/webhooks 扩展包要求 PHP 版本不低于 7.2。安装方法是通过 Composer:

composer require sy-records/webhooks

使用方法

使用该扩展包需要实例化 Payload 类来获取 handler 对象,该对象可以处理 WebHooks 请求。如果有实现 MessageInterface 的 request 对象,可以在实例化时传入;否则,将从全局变量中获取。

一旦获取到 handler 对象,就可以调用多种方法来处理 WebHooks 请求,例如检查是否为 ping 请求,获取事件名称,以及验证请求的有效性等。完整的方法列表可以在 HandlerInterface 接口文档中查看。

参考资料

想要了解更多内容?

查看原文:给你的项目增加 Git WebHooks
文章来源:
鲁飞
扫码关注公众号