设置 artifactory 以便它用于缓存上游 Hadoop/HBase 项目并为我们的 CI 提供构建工件?

Setup artifactory so that it's used for both caching an upstream Hadoop/HBase project & also provide build artifacts to our CI?

我刚开始使用 Artifactory,对所有术语感到困惑。我想要完成的是以下内容:

$ git clone https://github.com/apache/hbase.git
$ cd hbase
$ git checkout branch-1.2
$ mvn clean install -DskipTests assembly:single

我希望这个上游项目的 git 克隆与 Maven 正在下拉的组件一起存在于 Artifactory 中。此外,mvn 构建的最终产品 zip 文件 hbase-assembly/target/hbase-1.1.6-bin.tar.gz,我也想将其存储在 Artifactory 中,以便我们可以在下游的多个 CI 作业中使用它。

问题

Artifactory 为您提供了 Remote Repository functionality which you can also use to proxy various VCS services,尽管我看不出仅在 Artifactory 中存储 git 存储库的克隆有什么意义 - VCS remotes 主要用于您直接包含不需要影响您自己的代码的源代码的情况(即您不能 git push 更改回 Artifactory - 它们不会保留在上游中git 回购)。

如果您的目标是让您的 CI 作业克隆某个分支,运行 测试、构建它然后将构建工件部署回人工制品,我建议您将作业配置为克隆git 存储库(使用 git 而不是 Artifactory),然后将构建工件部署回 Artifactory 以供下游作业使用。

Artifactory 提供了非常广泛的 integration with popular build servers through which you can achive what's discussed here, your build artifacts should go into a Maven repository and the downstream jobs should reference it with their own pom files - you can quickly setup any Maven client to work with Artifactory using the Set Me Up 对话框。