【问题标题】:How to delete unwanted artifacts in Azure DevOps如何在 Azure DevOps 中删除不需要的工件
【发布时间】:2020-08-28 13:26:57
【问题描述】:

我们的开发团队制作了许多 NuGet 包,这些包发布到 Azure DevOps Artifacts 源。他们中的大多数人在一两周内变得不受欢迎。

如何选择应保留哪些工件? Azure 仅提供一般配置,基本上只允许指定保留工件的时间。 我正在考虑某种工作,它会选择符合我的条件的工件并删除它们,但我担心 Azure DevOps REST API 不提供工件删除等功能。

例如,我想通过保留政策涵盖所有预发布包。

您可以在此处检查您的工件存储(注意占位符) https://dev.azure.com/<org>/_settings/storage

保留政策概述https://docs.microsoft.com/en-us/azure/devops/pipelines/policies/retention?view=azure-devops&tabs=yaml

工件操作方法 https://docs.microsoft.com/en-us/azure/devops/artifacts/how-to/delete-and-recover-packages?view=azure-devops&tabs=maven

Azure DevOps REST API 上的工件文档 https://docs.microsoft.com/en-us/rest/api/azure/devops/build/artifacts/get%20artifact?view=azure-devops-rest-5.1#artifactresource

【问题讨论】:

    标签: azure-devops azure-artifacts


    【解决方案1】:

    您在问题中提到的其余 api 是关于构建工件的,工件是您希望构建生成的文件。请参考这个document

    我认为你真正需要的是Delete Feedrest api。这个 rest api 可以删除一个提要和它的所有包。 注意:该操作不会导致包移动到 RecycleBin 并且不可逆。

    DELETE https://feeds.dev.azure.com/{organization}/{project}/_apis/packaging/feeds/{feedId}?api-version=5.1-preview.1
    

    要删除一个包,你可以使用NuGet - Delete Package Versionrest api。将包版本从提要发送到其配对的回收站。

    DELETE https://pkgs.dev.azure.com/{organization}/{project}/_apis/packaging/feeds/{feedId}/nuget/packages/{packageName}/versions/{packageVersion}?api-version=5.1-preview.1
    

    【讨论】:

    • 实际上,删除 nuget 包版本是我的目的。然后我可以从回收站中取出包裹,这最终会释放一些存储空间。谢谢!
    • 需要多长时间才能释放空间?我运行这个命令,我仍然看到“2.01GB used”
    猜你喜欢
    • 1970-01-01
    • 2022-08-20
    • 2020-01-05
    • 2010-12-31
    • 2020-02-07
    • 1970-01-01
    • 2022-07-06
    • 2019-03-31
    • 1970-01-01
    相关资源
    最近更新 更多