不幸的是,Bitbucket Server 没有提供 API 或 UI 来安装update
挂钩。它仅支持pre-receive
和post-receive
挂钩该级别。但是,由于 Bitbucket Server 在后端使用泛型git
,因此确实可以安装任何标准的 git 挂钩。
这种方法需要对安装了 Bitbucket Server 的主机具有 admin/root 权限的文件系统访问权限。
shared/config/git/template/hooks
当您创建新存储库时,挂钩位于每个存储库挂钩目录中并自动复制到其中。要为现有存储库安装自定义挂钩,请在shared/data/repositories/<repo_number>/hooks
.
我创建了一个现成的解决方案,用于使用可配置的用户名和密码针对可配置的 JIRA 主机验证提交日志。该解决方案验证以下内容:
- 符合 Linux 内核风格的日志格式(50/72 规则)
- 摘要中存在 JIRA 问题密钥
- JIRA 发布受让人的电子邮件与提交者的电子邮件匹配
- JIRA 问题状态为“进行中”
您可以在此处下载文件:
https ://github.com/AlexanderAmelkin/bitbucket-git-hooks-for-jira
为了可移植性,主要的验证脚本是用 Javascript for node.js 编写的,可用于 Windows 和 Linux。