首页 > 解决方案 > 如何使用 REST API 在 Azure DevOps 中删除构建的分支保留策略

问题描述

是否可以使用 Azure DevOps REST API 删除构建保留中的分支策略?

最终目标是删除 de build(也使用 API),但由于它被政策保留,我不能。我尝试keepForever将构建的属性设置为 false(也通过 API),但它将值保持为 true。

我可以手动删除策略,但我想最终自动化这个过程。

标签: azure-devopsazure-pipelinesazure-devops-rest-api

解决方案


如何使用 REST API 在 Azure DevOps 中删除构建的分支保留策略

REST API 目前没有文档记录,但是您可以通过 Fiddler 等工具对其进行跟踪,或者F12在 Chrome 浏览器中按然后选择Network.

例如,我可以使用下面的 REST API 将 设置Number of runs to retain per protected branch0,以便我们可以删除策略保留的那些构建:

https://dev.azure.com/<OrganizationName>/_apis/Contribution/HierarchyQuery?api-version=5.0-preview.1

请求正文:

{"contributionIds":["ms.vss-build-web.pipelines-retention-data-provider"],"dataProviderContext":{"properties":{"PurgeArtifacts":"29","PurgePullRequestRuns":"10","PurgeRuns":"33","runsToRetainPerProtectedBranch":"0","sourcePage":{"url":"https://dev.azure.com/<OrganizationName>/<ProjectName>/_settings/settings","routeId":"ms.vss-admin-web.project-admin-hub-route","routeValues":{"project":"MyTestProject","adminPivot":"settings","controller":"ContributedPage","action":"Execute","serviceHost":"c519b80d-5d71-46b3-a8e0-3edf8c026ea2 (MyCustomOrganization)"}}}}}

在此处输入图像描述

注意:不要忘记将 替换为<OrganizationName> <ProjectName>您的 OrganizationName 和,ProjectName并设置 、 等的PurgeArtifacts值。PurgePullRequestRunsPurgeRuns

在此处输入图像描述

希望这可以帮助。


推荐阅读