用于添加单个组件的状态检查结果的CI工具

cistatus的Python项目详细描述


顺式

演示

关于

cistatus是一个工具,它可以显式地将pull请求检查状态设置为github pull请求例如,如果在一个作业中有多个检查,但希望在github中将这些步骤中的每一个作为单独的检查公开,则可以使用此工具公开这些额外的步骤。

cistatus可以从大多数ci系统暴露的环境变量中挖掘相关信息。当前支持:

  • 天青DevOps
  • 特拉维斯
  • 圆圈
  • 鉴定人
  • 可发货
  • 代码生成

这意味着,如果在这些系统的构建节点中执行cistatus,那么将从环境变量中读取repository、pr和sha信息。

为什么

编写这篇文章的用例来自于将多个测试报告从azure devops管道构建公开到github请求本身的挫折。使用cistatus,现在可以在pull请求中公开一个整体状态检查(如果需要),然后添加额外的检查,每个检查都可以链接到特定的结果集,而无需深入挖掘构建工件或构建日志

安装

pip install cistatus

集成

cistatus具有自动检测其运行的ci系统的功能。这是通过检查所述ci系统的“唯一”环境变量实现的,不需要用户进行配置

当检测到CI系统时,从所述CI环境的相应环境变量中读取提交sha、存储库名称和pr值例如,如果要从本地shell运行cistatus,则只需要传入所有必需的命令行参数。

使用这种方法,从任何ci从机中运行脚本时,只需传入status标志即可设置检查的状态。

用法

[-h] [--repo REPO] [--sha SHA] [--pr PR] [--token TOKEN]
--status {pending,success,error,failure} [--url URL]
[--description DESCRIPTION] [--context CONTEXT]

Set Build Status

optional arguments:
  -h, --help            show this help message and exit
  --repo REPO           user/repo
  --sha SHA
  --pr PR
  --token TOKEN         Github API Token
  --status {pending,success,error,failure}
  --url URL             Job url
  --description DESCRIPTION
                        Job Description
  --context CONTEXT     Job context

--回购

此标志设置应在其中设置pr状态的github存储库如果cistatus检测到它在任何支持的环境中运行, 此参数是必需的,因为该值是从适当的环境文件中读取的,但仍可以从命令行重写。

--SHA

此标志设置pr请求的提交sha如果cistatus检测到它在任何支持的环境中运行, 此参数是必需的,因为该值是从适当的环境文件中读取的,但仍可以从命令行重写。

--pr

此标志设置设置状态的请求数。如果cistatus检测到它在任何支持的环境中运行, 此参数是必需的,因为该值是从适当的环境文件中读取的,但仍可以从命令行重写。

--代币

此标志设置个人身份验证令牌。值也可以设置为GITHUB_ACCESS_TOKEN环境变量,如果您不想将令牌泄漏到可能的公共生成日志中,则建议使用该环境变量。

--上下文

此标志设置显示为检查上下文的字符串。默认为default

--说明

此标志设置上下文的长描述。默认为CI Status

--网址

此标志设置检查的上下文/说明中“详细信息”链接的URL。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
HTTP标头的java InputStream未终止   java测试SpringWebListener   具有定义的替换编号Java的regex ReplaceAll   在java中使用contains()方法   java在选择查询中使用JoinColumn字段   具有用户的java Start-stop demon不是以给定用户启动   java glBufferData生成GL\u无效\u操作   java中循环代码的循环   Java位无符号移位(>>>>)会产生奇怪的结果   java HQL使用点分隔符从select获取结果   条纹、弹簧、玩耍(或?):使用哪种高性能Java框架?   广播接收机中的java停止服务   java回收器视图占据整个屏幕。不在上面显示我的UI元素   java使MySQL查询更快   java MappedByteBuffer查询   java递归算法问题