首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我怎么才能做一个Gerrit提醒机器人呢?

我怎么才能做一个Gerrit提醒机器人呢?
EN

Stack Overflow用户
提问于 2017-09-12 15:57:29
回答 1查看 359关注 0票数 2

因为我在5-6个gerrit实例中开放了代码审查,所以经常会忘记通知人们对它们进行审查,而且任何人都知道,过时的CR也会过时,在它上面投入的精力大部分都是白费的。

我计划写一个gerrit-reminder-bot查询所有的gerrit服务器,你打开的评论,检查年龄和状态(无投票和无否定票),并发送电子邮件给每个审阅者。

现在的问题是,我们是否已经有了类似的东西,可以改进或用作起点。

请注意,在这种情况下,使用gerrit事件流是没有用的,因为我们确实希望为延迟的评论发送提醒通知,而且很明显,延迟的评论不会收到任何通知。

EN

回答 1

Stack Overflow用户

发布于 2017-09-14 17:45:35

我们采用了“内部”解决方案-

运行Gerrit查询并解析(JSON)结果的脚本。

Basic flow

  1. 定义:多老是“旧”(根据“最后修改”时间),

在你开始纠缠people

  • 之前,获取一个所有打开的Gerrit-changes的列表-在我们的例子中-作为一个JSON:

ssh -p $gerritPort $gerritHost gerrit query --format=JSON --current-patch-set limit:$queryLimit status:open

注意-

  • 结果的每一行都是一个“

-JSON”,应该在它自己的摘要行上解析--

  • 行有不同的格式--可以忽略它。

如果不够“老”,跳过it

  • if (Verify < +1) -->“忘记修复Build"

  • else-if (CodeReview < +2) -->”“忘记

  • a Good Build”
  • else-if (CodeReview < +2) -->“忘记修复it
  • if (Verify < +1)-->”忘记修复Build“
  • else-if (CodeReview < +2)”-->“忘记修复Review"
  • else-if (CodeReview == +2 and Verify == +1)”-->“忘记修复Review”
  • else-if (CodeReview == +2 and Verify == +1)“-->”忘记修复Submit"

“-->”忘记修复Build“

  • else-if (CodeReview < +2)-->”忘记

  • a Good
  • -->“忘记修复Build”
  • else-if (CodeReview < +2)“-->”忘记修复Review“
  • else-if (CodeReview == +2 and Verify == +1)-->”忘记Submit“

对于每个场景,我们发送的描述情况的邮件略有不同,

链接到相关的Gerrit-change。

邮件被发送给所有者和审阅者(抄送),

以涵盖所有者正在度假(或离开)的情况。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46170965

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档