Artifactory是否应该用于捕获Jenkins生成的构建工件?

时间:2012-08-09 21:01:37

标签: jenkins artifactory

我们使用Jenkins运行持续集成构建。这些构建的输出可能是EAR文件,WAR文件或TAR'd的文件集合,这些文件将部署到上游环境。

到目前为止,我们已经使用Jenkins来管理生成的工件。但是,我们在内部部署了Artifactory。利用Artifactory捕获生成的工件是不是一个坏主意?如果是这样,为什么?例如,Artifactory仅用于保存JAR的版本,这些版本可以在构建时用Maven拉入项目,而不是用于捕获持续集成工具使用的工件?

2 个答案:

答案 0 :(得分:5)

我不这么认为。下图来自sonatype网站:

enter image description here

演示Maven存储库管理器如何成为部署过程的平台

答案 1 :(得分:5)

Artifactory(或任何二进制存储库管理器) 应该 与CI服务器一起使用。 甚至有plugin

维护二进制存储库管理器而非其他解决方案(网络共享,SCM)的原因显而易见:

  1. 为二进制文件量身定做。
  2. 高效。
  3. 安全。
  4. 用于分发的单一可控网关。
  5. 还有更多。

    因此,您使用二进制存储库管理器来控制依赖关系并解决您的工件,但为什么要停在那里?你的整个周期都有二进制文件:

    1. 构建环境的二进制文件。
    2. 构建过程所需的二进制文件。
    3. CI期间制作的二进制文件。
    4. 发布的二进制文件应该分发。
    5. 二进制存储库管理器是保存它们的最安全,最有效和最自然的地方。将所有二进制文件保存在一个位置意味着减少维护并提高构建可重复性。