Azure DevOps 工件 - 保留策略说明

Azure DevOps Artifacts - Retention policy clarification

我想了解 Artifacts Feed 的保留政策是如何运作的。

我通读了这篇文章

Azure Artifacts/Delete and recover packages

但尚不清楚保留政策是仅在达到 "the maximum number of versions to keep" 时适用,还是适用于所有版本。也不清楚是否会始终保留最新版本,无论保留策略如何。

例如,我使用以下保留策略设置了一个供稿:

Maximum number of versions per package: 10
Days to keep recently downloaded packages 2

Retention policies

然后我创建了一个管道,将构建工件作为通用包上传到提要。 从下图可以看出

Package versions

即使超过 "max days to keep" 值,旧软件包版本仍可供下载。

有人可以阐明 Azure Devops 工件保留策略的实际工作原理吗?

提前致谢

从我的测试中,我发现了工件保留策略的工作原理。当包版本超过Maximum number of versions per package时,策略将检查超出的版本,如果在Days to keep recently downloaded packages期间下载了版本,则策略不会删除它们,否则将删除超出的版本。

例如:

我有两个 16 个包版本的提要,两个设置如下:

如果我从不下载任何版本,超出的最旧版本将被删除:

如果我下载最旧的两个,那么最老的两个暂时不会被删除,会在Days to keep recently downloaded packages:

之后删除