我想获得一个组中所有项目的列表,其中最后一个管道没有成功。
我当前的代码:
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 多秒。
有没有更好/更快的方法?