Artifactory 和 gradle,jenkins 构建 space 问题

Artifactory and gradle, jenkins build space issue

我使用 gradle、Jenkins 和 artifactory 处理我们的项目构建和部署过程 server.I 目前在我们的服务器上面临 space 问题。我查看了服务器上的 artifactory 文件夹,artifactory/data/filestore 大小为 @59GB.Though 我认为我们的项目不需要这么大的 jar。谁能帮助减少文件存储大小及其对项目构建的影响?

有多种原因会导致 Artifactory 存储 space 增长:

  1. 不清理未使用的快照版本
  2. Garbage collection 没有 运行 足够频繁或根本 运行
  3. 未使用的第 3 部分依赖项堆积起来

您应该首先阅读 Artifactory 手册中的 Managing Disk Space Usage。它涵盖了垃圾收集、删除未使用的工件、手动清理等主题。

更新

如果占用存储空间的大部分工件都是发布工件,您需要决定是需要将它们全部存储起来还是可以将它们移动到另一个地方。
通过发布工件,我的意思是已经通过您的 CI 管道并准备好生产的工件,它们可以是:

  • 生产中部署的工件(private/public 云)
  • 其他项目正在使用 libraries/modules 的发布版本
  • Products/Libraries 分发给客户

只要需要此类工件,例如因为其他团队依赖它们进行开发,您就应该将它们保留在原处。如果它们不再被使用但您需要保留它们的副本,您可能希望将它们移动到另一个将用作存档的 Artifactory 服务器。

更新 2

要删除工件,您可以使用以下方法之一:

  1. 使用 delete item REST API 删除 artifacts/folders
  2. 使用delete builds REST API for deleting complete builds. This is useful if you are using the Artifactory build integration
  3. 创建自定义清理user plugin. You can see some examples in Github。这需要 Artifactory Pro。