我正在使用TeamCity运行利用SBT Native Packager将图像发布到Docker的bash脚本。在bash脚本的SBT部分看起来是这样的:将模块版本作为命令行参数发送到SBT
sbt -DdockerRepository=$repo -DpackageName=$packageName -D myproject/docker:publish
我想通过在TeamCity的版本号为版本号到我的包。今天我手动指定版本号在设置在build.sbt:
settings(
version := "0.20",
....,
dockerBaseImage := "example.com:5000/linux/java8:latest",
dockerRepository in Docker := Some("example.com/myoldrepo"),
dockerUpdateLatest := true'
)
我希望能够做到这一点是这样的:
activator -Dversion=0.21 -DpackageName=myproject -D myproject/docker:publish
但这似乎并没有工作。然而像我上面所做的那样重写dockerRepository正在工作。
如何从命令行/ TeamCity将我想要的版本号传递到SBT?
谢谢。什么被认为是更正确的这种方法和Andrzejs上面的答案? –
主要区别在于我的方法不需要改变你的构建。他们都是正确的恕我直言。 – kardapoltsev