这与一年多前回答的问题相同:Jenkinsfile get current tag
那里接受的答案对我不起作用,我认为从那以后行为必须在管道内发生变化。
我的repo有标签(推送到原点!),我添加了Jenkins选项来发现标签,但是我无法从管道步骤中获取或引用它们。 它只显示为空。
在我的MultiBranch Pipeline作业中我添加了“发现代码”步骤。
我有一个带有发布标记集的git repo:
myhost$ git fetch
myhost$ git tag
0.0.42
myhost$ git tag --sort version:refname
0.0.42
在Jenkins文件中,我尝试过:
sh "git tag --sort version:refname | tail -1 > version.tmp"
sh "cat version.tmp"
并
sh(returnStdout: true, script: "git tag --sort version:refname | tail -1").trim()
他们两人都没有返回(null)
答案 0 :(得分:0)
你应该试试
sh "git tag --sort version:refname > tags.tmp"
sh "tail tags.tmp -n 1 > version.tmp"
sh "cat version.tmp"
我认为这种改变应该有效。
谢谢,
答案 1 :(得分:0)