GitLab计算问题总数

Cla*_*ioM 5 api count gitlab

我想使用api计算我的gitlab项目中的所有问题。

在我正在使用的命令下面:

curl --header "PRIVATE-TOKEN:xxxxxxx" https://gitlab.myapp.com/api/v4/groups/xx/issues?scope=all
Run Code Online (Sandbox Code Playgroud)

我也尝试用项目替换组。

我们想绕过分页问题:显示的结果始终为100(最大数量)。

我们怎么能得到超过100个呢?

结果,我只希望得到我项目的全部问题。

Cla*_*ioM 6

对于任何有兴趣的人,我用这个修复了它:

  1. 获取我的 gitlab 的项目 ID

    curl -s -L --header "PRIVATE-TOKEN:XXXXXX" "https://gitlab.XXXXX/api/v4/projects/"

结合python -m json.toolandsedjqandgrep来获取 ID 和名称的列表。

然后

我获得了项目 ID 的问题总页数

curl -s --head --header "PRIVATE-TOKEN:XXXXXX" "https://gitlab.XXXXX/api/v4/projects/${id}/issues?state=all&per_pages=100"
    | grep "X-Total-Pages"
Run Code Online (Sandbox Code Playgroud)

然后我用一个while循环提取所有问题:

 curl -s --header "PRIVATE-TOKEN:XXXXX" "https://gitlab.XXXX/api/v4/projects/${id}/issues?scope=all&state=all&label_name\[\]=BU
    G&page=${i}&per_page=100"

$i is the page counter 
Run Code Online (Sandbox Code Playgroud)

我希望这可以帮助别人!

如果您有任何疑问,请随时提问!

  • 聪明的主意。为什么开发人员不简单地在 API 中包含一个端点来获取问题总数,甚至每个请求的标头中设置的信息?这能有多难? (3认同)