gpt4 book ai didi

python - 有没有一种有效的方法可以在 gitlab 上找到失败的管道?

转载 作者:太空宇宙 更新时间:2023-11-04 01:46:19 25 4
gpt4 key购买 nike

我想获取一个组中所有项目的列表,其中最后一个管道未成功。

我当前的代码:

def failed_pipelines(groupid):
g = gitlab.Gitlab('https://gitlab.com', private_token=GITLAB_API_TOKEN)
group = g.groups.get(id=groupid)
for group_proj in group.projects.list(archived=False, simple=True, as_list=False):
project = g.projects.get(id=group_proj.id)
pipelines = project.pipelines.list(page=1, per_page=1)
if not pipelines:
continue
if pipelines[0].status != 'success':
yield project.name

有效,但在 132 个项目上需要 70 多秒。

有更好/更快的方法吗?

最佳答案

直到现在还没有办法在组范围内向某个名为“管道”的对象发出请求,因为管道是项目范围的,因此你需要在一个组中发出很多请求,每个项目一个请求准确地说,它使事情变慢。

您可以用另一种方法思考,例如:在您的运行者中列出失败的工作。

runners = g.runners.list(scope='active')

for r in runners:
job=r.jobs.list(status='failed')
if job != []:
print(job)

关于python - 有没有一种有效的方法可以在 gitlab 上找到失败的管道?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59020221/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com