在何处获取 Gitlab 中存储库的存储库 ID



我正在使用与Mantis BT集成的Gitlab安装和配置所有必需的插件

在螳螂BT中,Repositories -> Action -> Manage ,对于所需的项目,请单击 更新存储库,因为我们有一个名为 Gitlab Repository ID .
对于该项目。当我提供一些数字并更新它们存储库时,更改集中的结果已更改,但文件和问题字段值未更新。

问题:

  • 如何在 gitlab 中获取特定项目的存储库 ID?
  • 文件和问题值未更改的问题是什么?
    需要任何配置更改?

在 gitlab 中,您必须导航到 GitLab 公开的 API 才能检索所需的详细信息。

首先,您需要项目的project_id。这是通过 GitLab CI_PROJECT_ID变量公开的。从 UI 导航到项目,您将在项目名称下方看到项目 ID。

获得项目 ID 后,访问以下网址

https://gitlab.example.com/api/v4/projects/projectId/registry/repositories

这将为您提供一个 JSON 响应,显示项目下的所有存储库。您可以从响应中找到 id

[{"id":876,"name":"","path":"group-name/subgroup-name/project-name","project_id":4099,"location":"registry.gitlab.example.com/group-name/subgroup-name/project-name","created_at":"2022-01-06T12:39:28.326Z","cleanup_policy_started_at":null}]

现在,使用此 ID,可以进一步导航到 API 以获取更多详细信息,例如容器映像标记。

例如

https://gitlab.example.com/api/v4/projects/**4099**/registry/repositories/**876**/tags

或者更具体地说,任何特定标签

https://gitlab.exmaple.com/api/v4/projects/**4099**/registry/repositories/**876**/tags/**tagName**

除了从浏览器访问这些,也可以从.gitlab-ci.yml访问。

例如,下面是用于从容器注册中删除图像标记的示例脚本。

curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" 
     "https://gitlab.example.com/api/v4/projects/5/registry/repositories/2/tags/v10.0.0"

螳螂文档指出:

hub_repoid :Gitlab 项目的 id,从第一个创建的项目的 1 开始(如果 reponame 对用户有效且可读,则自动提交)

您可以使用 GitLab API 来获取该 ID

GET /projects/NAMESPACE/PROJECT_NAME
curl --header "PRIVATE-TOKEN: <yourPrivateToken>" https://gitlab.example.com/api/v3/projects/NAMESPACE/PROJECT_NAME

答案包括其 id:

{
  "id": 3,
  "description": null,
  "default_branch": "master",
  "public": false,
  "visibility_level": 0,
  ...

或者,您也可以尝试使用 Chrome 浏览器中的 rest-client(又名 arc-client)插件,如下所示:

http://my.git.repo.ip/api/v3/projects/?private_token=<my.private.token.from.gitlab>&url=<my.git.repo.url>

my.git.repo.ip = localhost 或任何 IP/域名适合您的 gitlab 服务器。

my.private.token.from.gitlab = 你可以在 Gitlab> Settings 中获取它> 帐户> private_token,复制此内容并在URL中使用它。

my.git.repo.url = my.git.repo.ip(或者,你的 git 存储库的 url 应该 工作,另请注意:在 url 中将"/"字符替换为"%2F")

得到如下结果:

{
"id": 21
"description": ""
"default_branch": "master"
"tag_list": [0]
"public": true
"archived": false
"visibility_level": 20
...
}

相关内容

  • 没有找到相关文章

最新更新