2017-02-10 53 views
1

我正在构建一个用于Java/Maven项目构建的concourse管道。 我已经成功设置它,以便Maven构建开始。 不幸的是,我自己的内部Maven依赖关系没有得到解决,因为没有包含我们本地Artifactory二进制库的坐标的settings.xml文件。在concourse.ci上构建Maven的自定义settings.xml。

我见过这个sample project,它似乎使用自定义settings.xml,但不知何故该设置被注释掉。

我可以参考定制或从外部传入Java/Maven构建的自定义settings.xml吗?我有哪些选项?

这里是一个来到我的脑海里至今选项列表,但所有的人都是不理想的:

  • 将Artifactory的库信息到项目的pom.xml(不可移植的,在我看来)
  • 仅用一个额外的settings.xml文件构建自定义Docker镜像并将其用于构建(大量工作和需要设置私有Docker回购仅用于参数化1设置?)
  • 以某种方式挂载父/主机文件系统放入用于构建的容器(openjdk:8-jdk),并参考位于其中的settings.xml如示例项目示例中所示(我怎么能从汇合中做到这一点?)

回答

0

我想我找到了一个很好的方法来达到我的目标。

可以将settings.xml签入到源代码管理系统中并引用为资源。因此它可以在构建时在容器文件系统中访问(因为它是任务输入之一)。

+1

这可能是最有效的方法,它也遵循汇合版本范式,所以文件将被缓存在你的工作人员,直到你改变它。 –