当有人推送一个或多个修改文件夹中文件的提交时,是否可以发送电子邮件?
我有一个文件夹,其中包含的通用代码在大多数提交中均不应更改。但是,如果有人对这些文件进行更改,我想触发电子邮件/闲置通知。
是否可以使用BitBucket服务器?也许有一个插件可以让我做到这一点?
答案 0 :(得分:2)
如果您谈论的是bitbucket.org,这意味着您没有直接访问/控制权的Git存储库托管服务器,则需要setup a webhook
该Webhook将调用您选择的Web侦听器,该侦听器可以检查push JSON payload,并将新提交内容提取到本地存储库中。
从那里,您可以进行比较,并检查是否为specific directory content has changed。
是的,正如所评论的那样,您可以通过JENKINS/Generic Webhook Trigger Plugin将Jenkins服务器(由您控制)用作Webhook侦听器。
我使用的是bitbucket服务器,基本上是相同的,但是我想在终端运行。
然后,如果您有权访问服务器,则可以设置接收后挂钩:请参阅“ Atlassian / BitBucket / Using repository hooks”。
您将使用Repository Hook Plugin Module来定义hook of type "PostRepositoryHook
"
然后,您可以使用Atlassian SDK对实现该类型的类进行编码:
public class NotificationPostRepositoryHook implements PostRepositoryHook<RepositoryHookRequest> {
(例如,请参阅实例Creating a New Plugin from Scratch)