Hubot 实践,在倍洽中直接操作 GitHub

来源:互联网 时间:2017-08-28

在倍洽(BearyChat)目前提供的众多机器人里, GitHub 机器人是非常受欢迎的一个,它使 GitHub Flow 变得更加有效率,在保证质量的基础上提高开发速度。近日,倍洽又推出了一套基于 Hubot 的辅助插件,进一步帮助用户实现直接在聊天窗口中完成与 GitHub 更多交互的需求。

场景 1:直接在聊天窗口中向 GitHub 项目添加 Issue

在聊天窗口中与同事交流的各种想法,或者收到的各种用户反馈,在短暂的沟通后,如果达成共识,工程师通常会在对应的 GitHub 项目上建立一个 Isuue 作为备忘,并逐步添加更具体的细节和实现方案。引入相应的 Hubot 插件后,可以直接在聊天窗口中以对话命令的方式实时将 Issue 内容同步到 GitHub 相应位置,这降低了因为窗口切换而造成的记录遗漏或记录有误等情况发生的概率。

场景 2:检查自己的 Issue 和 Pull Request

对于那些习惯于专注工作的工程师,保证每天稳定时间的编程和代码审查是提高他们工作效率的秘诀。一般而言,在每天的正式工作开始前,他们通常会先查看当前自己需要做的工作,并到 Github 上查看所有分配给自己的 Issue。此外,每天也会安排出专门的代码审查时间,去检查分配给自己的 Pull Request。

如果这时候只需要在聊天窗口中向机器人发布相应命令即可获取某个项目下自己所有需要完成的 Issue 和需要自己审查的 Pull Request,就会大大提升他们进入工作状态的速度。现在,借助倍洽和 Hubot 插件可以很轻松的实现以上场景。

场景 3:发布 Release Tag

每一个项目里程碑实现和每一次代码上线时,很多团队都会为其添加新的 Release Tag,这有助于部署流程的完善,大家可以使用 Tag 来安全的上线代码,已及回滚代码。

同时,每次发布 Release 的内容也是一个很有用的信息。很会团队会使用一个叫 legilimens 的工具,来获取这次 Release 对比上一次有哪些新的 Pull Request 被合并的信息。

现在,可以借助 Hubot 机器人自动向聊天窗口中生成一份待验证的功能列表,并且,借助这份列表,也可以在上线后发现问题时,帮助大家快速定位问题所在。

这个听起来十分顺畅的流程是否还有优化的空间?答案是肯定的,以上列表生成前,需要人工向 GitHub 的表单填写许多内容,经常容易操作错误。Hubot 机器人支持使用问答的形式来发布 Release,就降低了操作的难度,也在一定程度上降低了出错的可能性。

以上功能可以使用开源插件 hubot-githuber 来实现。在使用时需要注意的是,必须预先设置好 HUBOT_GITHUBER_ACCOUNT 环境变量(通常是企业的 organization name),在机器人配置完成后,使用者还需要与 Hubot 私聊 github token。

相关文章

标签:

A5创业网 版权所有