Azure DevOps Rest API:对象“ID”范围

问题描述 投票:0回答:1

我已阅读我正在使用的 API 的单独 API 文档。 然而,它似乎缺少一些关键信息 - 除非我错过了!?

特别是围绕对象的“ID”及其范围。 例如,对于拉取请求、存储库、队列......响应都包含其父项目身份。 相反,管道、运行、时间线则不然。

这让我思考 ID 的范围是否以及某些 ID 在一个项目内或跨多个项目是否是唯一的?

示例:管道 API文档

退货:

{
    "_links": {
        "self": {
            "href": "https://dev.azure.com/<organization>/########/_apis/pipelines/1234?revision=2"
        },
        "web": {
            "href": "https://dev.azure.com/<organization>/########/_build/definition?definitionId=1234"
        }
    },
    "url": "https://dev.azure.com/<organization>/########/_apis/pipelines/1234?revision=2",
    "id": 1234,
    "revision": 2,
    "name": "myPipeline",
    "folder": "\\"
}

响应文档

那么上面的Pipeline“1234”是不是只在当前项目中唯一的ID呢?在我的组织中的所有项目中?横跨整个 AZDO?

显然,我可以通过从我的所有帐户和项目导出数据然后分析结果来解决这个问题......但更喜欢官方规范。

如果有人知道这方面的文档,不胜感激?

azure-devops pipeline
1个回答
0
投票

Pipeline“1234”是仅在当前项目中唯一的ID吗?在我的组织中的所有项目中?横跨整个 AZDO?

根据您的描述,您正在使用 Rest API:Pipelines - List 列出管道定义。 ID 是管道定义 ID。

管道定义 ID 是一个不可变的 ID,在单个 Azure DevOps 组织中的所有项目中都是唯一的。但目前还没有官方文档直接说明这一点

对于问题中提到的其他 ID(拉取请求、存储库、队列),它们在单个 Azure DevOps 组织中的所有项目中都是唯一的。

这些信息在API文档中没有解释。但是,其他 Pipeline 变量相关文档中提到了一些 ID。

例如:

使用预定义变量

Build.Repository.ID :存储库的唯一标识符。即使存储库的名称发生变化,这也不会改变。

运行并构建数字

管道运行 ID/构建运行 ID:$(Build.BuildId) 是一个内部、不可变的 ID,也称为运行 ID,在 Azure DevOps 组织中是唯一的。

我完全理解您的要求。如果这些信息直接在 API 文档中或在单独的文档中说明会更方便。您可以通过反馈选项提交反馈请求,以分享您对增强文档的要求。

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.