给你的项目增加 Git WebHooks
发布于 2023-07-18
1974
版权声明
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
鲁飞
扫码关注公众号
扫码阅读
手机扫码阅读
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 接口文档中查看。
参考资料
鲁飞
鲁飞
扫码关注公众号
还在用多套工具管项目?
一个平台搞定产品、项目、质量与效能,告别整合之苦,实现全流程闭环。
查看方案
鲁飞的其他文章
MacOS 等机器配置 Docker 启用 Remote API
Docker 不仅可以通过本地命令行docker命令进行调用,还可以通过开启远程控制 API,使用 HTTP
解决 macOS 下 PostgreSQL 服务启动失败
使用 brew 安装的 PostgreSQL 服务,不知道什么时候升级了版本...
GitHub Actions 真香系列之scp和ssh
虽然现在有 k8s 作为部署服务,但也有一部分的业务还是使用传统的方式,在服务器上使用 LNMP 进行部署 Web 站点。
微信扫描带参数的二维码事件推送返回 qrscene_0
在调用微信接口时需要注意数据格式,不要只关注参数
HMAC 签名编码的坑:Go 和 PHP 的不同处理方式
本文将以 Go 和 PHP 为例,探讨为什么直接对 HMAC 签名进行 Base64 编码与先转换为 16 进制字符串再编码的结果不同。
加入社区微信群
与行业大咖零距离交流学习
PMO实践白皮书
白皮书上线
白皮书上线