BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

GitHub Checks API帮助应用实现进一步的持续集成

| 作者 Sergio De Simone 关注 14 他的粉丝 ,译者 盖磊 关注 2 他的粉丝 发布于 2018年5月23日. 估计阅读时间: 3 分钟 | 如何结合区块链技术,帮助企业降本增效?让我们深度了解几个成功的案例。

看新闻很累?看技术新闻更累?试试下载InfoQ手机客户端,每天上下班路上听新闻,有趣还有料!

GitHub Checks API意在实现向持续集成工作流中添加代码检查,诸如对源代码文件做Lint静态分析后,将结果直接展示在PULL请求视图中。反馈信息可达用户预期的详细程度,包括给出导致问题的代码行,使得代码提交者可以修复问题,并在代码上运行新的检查。

GitHub Check API可以看成是对传统GitHub状态API的一次革命性改进。它支持使用外部服务对提交情况标记一些检查状态,例如failpass等,并将检查状态反映在提交所涉及的所有PULL请求中。使用Check API,集成者现在可对提交和PR状态具有更细力度的控制,包括successfailureneutralcancelledtimed_outaction_requiredqueued_progresscompleted。此外,检查可针对文本信息、图像等多种数据。这使得用户可以构建复杂工作流,对一次提交或PR做多次检查。GitHub将展示所有通过的、失败的以及需要用户注意的检查。

GitHub支持多种检查工作流控制等级:

  • 自动(Automatic):对所有具有checks:write权限的已安装应用发送事件,以启动对此类应用的更改分析。GitHub UI将列出所有运行检查中的应用,由集成者和开发人员监控检查过程,并在必要时采取行动。
  • 用户(User):: 用户可以通过POST /repos/:owner/:repo/check-suite-requests这样的请求,或是通过在提交消息中添加skip-checks: truerequest-checks: true指令,请求运行指定的检查。
  • Web UI:用户可以使用GitHUb Web UI,独立或一并运行各种检查。

需运行检查的GitHub应用必须支持对check_suite WebHook的处理。基于此,应用可创建一个新的check run,并由GitHub添加到Check Suite中。Check Suite概要描述了应用所有的检查和输出情况。应用初始创建的检查,将运行在queuedin progress状态。在检查开展过程中,状态将会得以更新。如果想要了解应用和GitHub间所有需交换消息的细节,请参考上述官方文档。

当前,GitHub Checks API仅支持GitHub REST API。对GraphQL API的支持正在实现中。

查看英文原文: GitHub Checks API Enables Apps for Advanced Continuous Integration

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT