与此问题相关 服务器挂钩不起作用
我正在尝试在 gitlab 中创建一个服务器挂钩。 目标是创建一个当任何用户按下时都会触发的钩子。 我们尝试了几件事:
遵循官方文档:指南
转到gitlab.rb(配置文件),然后取消注释行:
gitaly['配置'][:hooks][:custom_hooks_dir]='var/opt/gitlab/gitaly/custom_hooks'
这是应该放置服务器挂钩的文件夹。
遵循指南: 创建文件夹 pre-receive.d :absolute( var/opt/gitlab/gitaly/custom_hooks/pre-receive.d)
https://docs.gitlab.com/ee/administration/server_hooks.html#create-the-global-server-hook
然后用shebang添加脚本,例如:
var/opt/gitlab/gitaly/custom_hooks/demohook
#!/bin/sh
echo "GL-HOOK-ERR: My custom error message.";
exit 1
然后 gitlab 重新配置,失败表示已弃用(尽管在官方指南中)。
2.在文件中添加gitaly配置 发现第一种配置方式可能已经过时,尝试添加到gitlab.rb:
gitaly['configuration'] = {
hooks: {
# gitaly['custom_hooks_dir']
custom_hooks_dir: '/var/opt/gitlab/gitaly/custom_hooks'
}
}
没有任何作用。 欢迎任何帮助。
最后问题与钩子的权限有关。
chmod +x hook
chown userWithPrivileges:userWithPrivileges hook