如何删除旧的构建信息?

JFrog支持
2023-01-22十一10

有三种方法可以安全地删除不必要的构建信息:


  1. 使用REST API

  2. 通过Artifactory UI

  3. 使用buildCleanup用户插件。


如果清理工作已经有一段时间没有完成,这些方法中的任何一种都可能是耗时的,这取决于构建的数量和大小;但是,如果定期执行旧构建信息的“修剪”,所需的时间应该不是问题。这个页面包含关于Artifactory中不同清理方法的信息,这些方法可以帮助最小化存储消耗。


使用REST API,整个过程当然可以使用客户端脚本自动化,该脚本在一系列构建号上迭代,以删除一组构建。的buildCleanup用户插件可以用来删除早于给定天数的构建。它可以使用REST API或根据硬编码的cron表达式手动执行(默认每10秒执行一次)。在我们的网站上阅读更多关于Artifactory中的用户插件Wiki页面


我们建议先干运行插件(使用buildCleanup的默认配置。属性文件)密切关注在Artifactory .log上检测到的删除候选(可通过Artifactory UI中的“高级”下的Admin选项卡访问)?系统日志(插件会在artifact .log上打印所有的删除候选项)。有必要在buildCleanup中将“dryRun”属性从“true”更改为“false”。属性文件用于插件实际删除构建。days参数也在该文件中指定,默认值为3.天。


这两个删除构建REST API和buildCleanup用户插件不会删除构建相关的构件。Delete Builds REST API只会删除与构建相关的构件,如果指定了" artifacts "参数,它的默认值是" 0 "。下面是一个没有这个选项的例子:

curl -X DELETE -uadmin:password "http://localhost:8081/artifactory/api/build/maven_multi?buildNumbers=15

该命令将删除“maven_multi”项目的版本号“15”。你也可以删除所有通过不指定buildNumbers参数来创建特定项目下的构建:


curl -X DELETE -uadmin:password "http://localhost:8081/artifactory/api/build/maven_multi