我在他们的服务器上使用gitlab。我想通过API下载我的内置最新的文物(通过gitlab-CI构建)这样我在哪里可以找到gitlab api的项目ID?
curl --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" "https://gitlab.com/api/v3/projects/1/builds/8/artifacts"
在哪里可以找到这个项目的ID?或者,这种使用不用于托管gitlab项目的API的方式?
BW休伯特
我在他们的服务器上使用gitlab。我想通过API下载我的内置最新的文物(通过gitlab-CI构建)这样我在哪里可以找到gitlab api的项目ID?
curl --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" "https://gitlab.com/api/v3/projects/1/builds/8/artifacts"
在哪里可以找到这个项目的ID?或者,这种使用不用于托管gitlab项目的API的方式?
BW休伯特
您可以查询您的独资项目:
curl -XGET --header "PRIVATE-TOKEN: XXXX" "https://gitlab.com/api/v3/projects/owned"
您将收到各自拥有项目JSON:
[
{
"id":48,
"description":"",
"default_branch":"master",
"tag_list":[
...
您也能获得来自项目中触发器配置的项目ID,它已经有一些带有ID的示例代码。
从触发器页:
curl -X POST \
-F token=TOKEN \
-F ref=REF_NAME \
https://<GitLab Installation>/api/v3/projects/<ProjectID>/trigger/builds
伟大的THX - 有很大帮助。小记:我认为 - 标题应该是 - 标题。 –
没问题。如果问题已解决,请不要忘记接受答案。 – Fairy
此答案不再有效。请参阅@Bernát的回答。您可以在项目设置页面上看到项目ID。 –
只是为了记录在案,如果别人有需要下载从gitlab.com通过gitlab-CI创建的工件
curl -XGET --header "PRIVATE-TOKEN: YOUR_AD_HERE?" "https://gitlab.com/api/v3/projects/owned"
获取项目IDcurl -XGET --header "PRIVATE-TOKEN: YOUR_AD_HERE?" -o myapp.jar "https://gitlab.com/api/v3/projects/4711/builds/artifacts/master/download?job=release"
我对gitlab的美感印象非常深刻。
在编辑项目页面的右上角有一个项目ID字段。
(你也可以看到CI/CD管道页面上的ID,在触发部分的exameple代码。)
在旧版本中,你可以看到它的触发器页面上,在该网址示例代码。
我看不到这个?什么gitlab版本? – sunew
在Gitlab.com上运行的版本...我不知道确切的,但不久之前,也许自2017年1月以来。在旧版本中,您可以在触发器页面上的示例代码中找到它。 –
我刚刚发现了一个更简单的方法来获取项目ID:只看到承载您的项目的gitlab页面的HTML内容。有一个叫PROJECT_ID场,e.g输入:
<input type="hidden" name="project_id" id="project_id" value="335" />
如前所述here,所有的项目范围的API的期望的ID或者是项目路径(URL编码)。 所以只需要使用https://gitlab.com/api/v4/projects/gitlab-org%2Fgitlab-ce就可以直接与项目交互了。
+1重要的一点是'/ api/v4/projects /'后面提到的'NAMESPACE/PROJECT_NAME'必须是URL编码的。这意味着'/'需要用'%2F'替代。例如:https://gitlab.com/api/v4/projects/gitlab-org%2Fgitlab-ce – sactiw
输入项目。
左侧菜单中点击设置 - >通用 - >展开常规设置
它有一个标签项目ID和旁边的项目名称。
这是版本GitLab 10.2
我创建了一个问题:https://gitlab.com/gitlab-org/gitlab-ce/issues/28342 – User