Gitlab:服务器挂钩自定义错误消息未显示在合并请求上

Posted

技术标签:

【中文标题】Gitlab:服务器挂钩自定义错误消息未显示在合并请求上【英文标题】:Gitlab: Server hooks custom error messages not displaying on merge requests 【发布时间】:2021-03-25 13:40:48 【问题描述】:

我一直在尝试在自托管 Gitlab (CE) 实例上实现 Server hooks,并且到目前为止它一直在工作。

但是,custom_hooks 的一部分会验证推送到某些分支是否被压缩,因此只允许推送一个提交,否则会显示错误消息。这适用于本地 git push,但不适用于合并请求。

根据文档,它允许Custom error messages 在那里显示,但这似乎不起作用。

所以我有一个更简单的版本,它总是以错误退出来验证错误是否正确显示。

本地

Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 1.03 KiB | 1.03 MiB/s, done.
Total 3 (delta 1), reused 0 (delta 0)
remote: GL-HOOK-ERR: My custom error message.
To gitlab.sample.co.uk:praveen.premaratne/dummy.git
 ! [remote rejected] develop -> develop (pre-receive hook declined)
error: failed to push some refs to 'git@gitlab.sample.co.uk:praveen.premaratne/dummy.git'

合并请求

Gitlab 版本详情

此文档是否仍在更新?或者有没有人可以帮助我让错误消息显示在合并请求上?

Ps:我已经尝试在 Gitlab 论坛上提问,但已经 4 天了,我还没有听到任何消息。

【问题讨论】:

这仍然是一个非常烦人的问题。我曾尝试在 stdout 和 stderr 上发送输出,但我只收到无用的通用错误消息。我不敢相信这是故意的,我一定是做错了什么。 【参考方案1】:

如果您的脚本打印的不是带有“GL-HOOK_ERR:”前缀的所需错误消息之外的任何其他内容,这将失败。来自 mysql 的警告消息使我的脚本中的事情变得不安。

【讨论】:

以上是关于Gitlab:服务器挂钩自定义错误消息未显示在合并请求上的主要内容,如果未能解决你的问题,请参考以下文章

验证后挂钩未重定向到表单页面

JQuery 验证自定义错误消息未显示

尝试在自定义侧边栏上显示用户名,它给了我下面的错误消息

plUpload - 服务器端错误未显示

Laravel 5上未显示自定义错误页面

Gitlab 中是不是存在技术可能性,即在合并期间存储库内容的自定义改编是 Dome?