GitLab API:管道未返回所有作业

时间:2020-10-16 17:46:01

标签: gitlab-ci

我正在使用GitLab api列出管道中的作业。过去一直很好,但是我在流程中添加了一些额外的项目,现在它不能返回所有工作:

$ curl --globoff -sSH "$CURL_HEADER" https://.../api/v4/projects/$CI_PROJECT_ID/pipelines/$PIPEID/jobs?scope[]=success | jq --raw-output '.[] | "\(.id)"' | wc -l
20

丢失的作业不会重试(如noted here)。

我可以在Web界面中看到缺少的Jobid。

通过这种方法最多可以找到20个工作吗?

1 个答案:

答案 0 :(得分:0)

因此,该API响应是分页的,文档中没有this item的指示。

有一个描述this here的常规项目,但没有列出与之相关的路由。如果这样做的话,它可能会更容易出现在搜索中。

我需要做的就是附加&per_page=100(对于我的用例,对&进行qq-ing)。或者,您可以检查返回标头中的X-Next-Page值,然后附加&page=X以获取后续页面...

相关页面变量为:

x-next-page: 2
x-page: 1
x-per-page: 20
x-prev-page: 
x-total: 23
x-total-pages: 2