【发布时间】:2023-02-16 20:17:07
【问题描述】:
我想使用 gitlab-cli 从 myrepo 检索所有问题。
命令glab issue list -R myrepo -P 1000 返回包含 100 个问题的页面,但我有 195 个问题。这是 API 中的限制,还是我在文档中遗漏了一些内容来撤消分页?
【问题讨论】:
标签: gitlab gitlab-api
我想使用 gitlab-cli 从 myrepo 检索所有问题。
命令glab issue list -R myrepo -P 1000 返回包含 100 个问题的页面,但我有 195 个问题。这是 API 中的限制,还是我在文档中遗漏了一些内容来撤消分页?
【问题讨论】:
标签: gitlab gitlab-api
这是 GitLab API 的限制。每次调用最多只能返回 100 个请求。
【讨论】:
如果有人需要,只是为了记录我解决问题的方法:
issues=()
while true; do
# Retrieve the current page of issues
page_issues=$(glab issue list -R $GITLAB_REPO --page $page --per-page $per_page)
# If the page is empty, we have retrieved all issues
if [ "$page_issues" == "No open issues match your search in $GITLAB_REPO" ]; then
break
fi
# Append the page issues to the array
issues+="$(echo "$page_issues" | grep -Po '#d+s+.*')"
# Increment the page number
page=$((page + 1))
done
【讨论】: