通过 Artifactory REST 进行高效的服务器端批量删除 API

Efficient serverside batch deletion via Artifactory REST API

我正在寻找一种有效的方法来删除大量工件,这些工件分布在 Artifactory 的不同位置(通过搜索查询可检索)。

我试过使用 JFrog CLI 'rt del' 命令(连同 AQL 文件)搜索然后删除结果,这很有效。但是,我发现我们的实例的移除速度非常慢——大约 1 个工件 removal/sec。我需要移除数十万件神器,这会花费很长时间。所以我正在寻找一种完全在服务器端执行的批量删除机制。

我注意到 Artifactory UI 支持一项 'search stash' 功能,可以执行搜索,然后保存并根据结果采取行动(包括删除行动)。这可以通过 REST API 获得吗?这似乎很适合这个用例。

或者,有没有办法在 UI 中按创建日期执行搜索?如果是这样,我大概可以使用搜索存储功能并对搜索存储执行删除操作。

我能想到的最后一个选择是编写一个自定义插件来完成这项工作,但我希望有一个更简单的方法,因为它看起来像是一个半常见的情况。

提前致谢!

从搜索存储中删除会从存储结果中删除人工制品,但不会从人工制品中删除(根据我的理解)。

有 groovy 插件可用,可以根据一些条件清除您的工件(link 下面)

Groovy Clean Up

我发现 Artifactory AQL 在搜索和删除工件方面很有帮助。

我还编写了一个自定义清理脚本,该脚本反过来使用 aql 删除回购正则表达式匹配的工件,并检查工件提升状态