首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >浅蓝型人工制品保留

浅蓝型人工制品保留
EN

Stack Overflow用户
提问于 2022-08-03 18:33:05
回答 1查看 47关注 0票数 0

我有一个mono,它有10个独立的CICD管道,用yaml编写。

我最近注意到,我们已经失去了大量的运行,其中一些成功的生产发行版。

我认为项目租金设置适用于所有管道,对吗?而不是个人?

我一直在ms网站上阅读,我认为为了让它们继续前进,我必须通过powershell脚本使用API。

我假设上述脚本需要在成功部署到生产后运行。

我很惊讶没有一个全球性的选择说“保持所有的生产版本”

EN

回答 1

Stack Overflow用户

发布于 2022-08-04 02:39:02

项目保留策略设置将应用于所有管道运行,而不是单独运行。因此,不能使用此设置直接保留特定的成功生产版本。

要实现这一点,您可以使用PowerShell脚本使用“条件”保留这些特定的运行。添加PowerShell脚本作为部署的最后一个任务,以检查是否需要保留此脚本。请参阅以下官方文档:https://learn.microsoft.com/en-us/azure/devops/pipelines/build/run-retention?view=azure-devops

下面是一个基于条件的永久保留的示例:

代码语言:javascript
运行
复制
- powershell: |
   $contentType = "application/json";
   $headers = @{ Authorization = 'Bearer $(System.AccessToken)' };
   $rawRequest = @{ daysValid = 365000 ; definitionId = $(System.DefinitionId); ownerId = 'User:$(Build.RequestedForId)'; protectPipeline = $false; runId = $(Build.BuildId) };
   $request = ConvertTo-Json @($rawRequest);
   $uri = "$(System.CollectionUri)$(System.TeamProject)/_apis/build/retention/leases?api-version=6.0-preview.1";
   Invoke-RestMethod -uri $uri -method POST -Headers $headers -ContentType $contentType -Body $request;
  displayName: 'PowerShell Script'
  condition: {Your customize condition}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73226210

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档