使用python和REST API,我遍历所有质量门。
我总共有5个项目,有2个不同的质量门,名为“好”和“优秀”。
2个项目使用“好”质量门,3个项目使用“优秀”质量门。 设置为“优秀”的3个项目使用默认的质量门。
当从默认值更改为“优秀”质量门时,我得到正确的数字:3!
我找不到默认质量门的API?
我发现无法发现默认网关的名称?
不应将“默认”解析为“优秀”吗?
for gate in gates['qualitygates']:
qualId = gate['id']
projs = sonarH.get_search_quality_gates(qualId)
theProjects = projs['results']
print("Quality Gate Name: " + gate['name'] + " Count: " + str(len(theProjects)))
输出:
Quality Gate Name: ST :: Excellent Quality Count: 0
Quality Gate Name: ST :: Good Quality Count: 2
答案 0 :(得分:1)
这是预期的行为。 Web服务返回与门明确关联的项目数,但不返回使用它的项目的有效数量。因此,对于标记为默认的门,始终返回零。
另一种方法是使用Web服务api/qualitygates/get_by_project?projectKey=[the_key]
请求每个项目使用的质量门。请注意,此Web服务标记为" internal"因此,可以在将来的版本中应用更改,而不保持向后兼容性。