很抱歉这个简短的问题,但只是想知道是否有一个 API 可以找出 GoCD 服务器上的管道数量。
问问题
1277 次
5 回答
0
作为替代方案,您可以从服务器http://yourgoserver/go/cctray.xml获取 cctray 文件并对其进行解析。
它包含有关所有管道(包括其阶段)的信息
于 2017-04-09T19:34:25.297 回答
0
您可以获取 config.xml 文件并对其进行解析。从配置仓库或通过 http。
于 2017-02-04T12:42:23.807 回答
0
是的当然。您可以通过不同的方式获得所需的输出。从需要管理员权限的 GoCD 支持 URL ( https://example.com/go/api/support )获取管道数量和其他统计信息的第一种简单方法。
如果用户没有管理员权限,我们需要使用 GoCD pipeline_groups
API。下面的命令应该给你确切的结果jq
(JSON 处理器)
$ curl 'https://example.com/go/api/config/pipeline_groups' -u 'username:password' | jq -r '.[] | .pipelines[].name' | wc -l
注意: Still Go 管理员用户可以获得实际的管道数量。
于 2019-12-11T14:07:13.303 回答
0
Pipeline Groups API将在解析 JSON 后为您提供所需的内容。
$ curl 'https://ci.example.com/go/api/config/pipeline_groups' \
-u 'username:password'
回报:
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
[
{
"pipelines": [
{
"stages": [
{
"name": "up42_stage"
}
],
"name": "up42",
"materials": [
{
"description": "URL: https://github.com/gocd/gocd, Branch: master",
"fingerprint": "2d05446cd52a998fe3afd840fc2c46b7c7e421051f0209c7f619c95bedc28b88",
"type": "Git"
}
],
"label": "${COUNT}"
}
],
"name": "first"
}
]
于 2017-01-26T16:57:15.530 回答
0
我建议使用yagocd:
from yagocd import Yagocd
go = Yagocd(server='https://build.gocd.io')
# login as guest
go._session.get('https://build.gocd.io/go/plugin/interact/gocd.guest.user.auth.plugin/index')
print(len(list(go.pipelines)))
于 2017-04-13T20:23:41.773 回答