问题描述
我使用 python-gitlab 模块通过其 API 检索 Gitlab 中多个项目的项目统计信息。我想获得的值之一是 CI 状态和代码覆盖率。虽然状态很简单:
from gitlab import Gitlab
gl = Gitlab('http://gitlab.example.com')
project = gl.projects.get('olebole/myproject')
branch = project.branches.get(project.default_branch)
commit = project.commits.get((branch.commit['id'])
print(commit.last_pipeline['status'])
我没有找到检索覆盖范围的方法;还添加 with_stats=True
到提交检索没有成功。
如何获得这个值?
解决方法
这是在 pipeline
对象中:
pipeline = project.pipelines.get(commit.last_pipeline['id'])
print(pipeline.status,pipeline.coverage)