【发布时间】:2019-05-09 16:36:47
【问题描述】:
我尝试使用 GoCD 作业中的项目版本创建一个变量。
我的项目是用 maven 构建的。项目的版本在 pom.xml 文件中设置(存在于 git 存储库中)。
Maven 允许使用命令检索项目的版本:
mvn help:evaluate -Dexpression=project.version
所以我试图把这个命令的输出放在一个 linux 变量中:
my_version=${mvn help:evaluate -Dexpression=project.version}
然后使用它将项目推送到 docker 存储库:
docker push my_project:$my_version
问题是GoCD似乎有自己的解释器(见https://docs.gocd.org/current/faq/dev_use_current_revision_in_build.html)。要使用变量,我必须这样做:
sh -c docker push my_project:$my_version
但我找不到设置 linux 变量的方法。
GoCD 可以做些什么吗?这样做的正确方法是什么?
【问题讨论】:
标签: maven continuous-integration go-cd