对于circleci支持的三个vcs,我们观察到对于GitHub和BitBucket,我们能够通过Postman访问所有端点,其中URL中的项目sulg是用"项目名称"准备的。而在GitLab的情况下,项目代码使用"项目id"。而不是"项目名称"。我们找不到GitLab的"项目id"。通过循环端点编程。
请帮助我们,如果有任何方法,我们可以获得GitLab项目ID编程。
我们尝试了组织摘要度量端点,但无法在响应中找到项目ID。
而在GitLab的情况下,项目编号为"项目id";而不是"项目名称"。[…]
是一个项目标识符,而不是实际的项目ID;项目标识符可以在给定项目的管道页面的URL中看到,以及组织标识符(这个也不同于实际的组织ID)。
例如,如果你去到一个特定的基于gitlab的CircleCI项目的管道页面,你会看到URL有以下格式:
https://app.circleci.com/pipelines/circleci/<organization_identifier>/<project_identifier>
在与GitLab项目相关的API调用中,您仍然可以使用遵循<vcs>/<org>/<project>
格式的a。与GitHub/Bitbucket orgs/projects的区别在于,对于GitLab:
<vcs>
总是circleci
<org>
是组织标识符,而不是实际名称<project>
是项目标识符,而不是实际的存储库名称
我发现对于一些API端点,您可以用实际的项目ID(即,您在项目设置的概述部分中找到的那个)替换整个项目段塞circleci/<organization_identifier>/<project_identifier>
例如:
https://circleci.com/api/v2/project/<project_ID>
和
https://circleci.com/api/v2/project/circleci/<organization_identifier>/<project_identifier>
将产生相同的输出。
不知道你的最终目标是什么,我不能提供更具体的建议。但如果你能详细解释一下你最终想要达到的目标,我可以试着帮你。
编辑:我发现有一个未记录的端点可以用来检索项目各自的slugs:https://circleci.com/api/private/project?organization-id=your_org_id
。
你可以在任何与项目相关的API端点中使用这些项目段。