gpt4 book ai didi

git - Jenkins MultiBranch - 从管道文件 (Jenkinsfile) 中引用 git repo 的标签

转载 作者:行者123 更新时间:2023-12-04 12:44:36 27 4
gpt4 key购买 nike

这与一年多以前回答的问题相同:Jenkinsfile get current tag

那里接受的答案对我不起作用,我认为从那时起,管道内的行为一定发生了变化。

我的 repo 有标签(推送到原点!),我添加了 Jenkins 选项来发现标签,但是我无法从管道步骤中收集或引用它们。 它只是显示为空。

在我的 MultiBranch Pipeline 工作中 我添加了“发现标签”步骤 .
discover tags

我有一个带有发布标签集的 git 仓库:

myhost$ git fetch
myhost$ git tag
0.0.42
myhost$ git tag --sort version:refname
0.0.42

在我尝试过的 Jenkinsfile 中:
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()

他们都没有返回(空)

最佳答案

您必须确保 Jenkins 使用标签获取您的存储库。您可以在 Jenkins 构建控制台中查看是否是这种情况。必须有这样一行 git fetch --no-tags ...git fetch --tags ... .

我的 Jenkins 安装似乎有时会在没有明显原因的情况下改变这种行为。为了确保它获取标签,请使用复选框“不获取未标记的标签”将高级克隆行为添加到您的流水线作业。

enter image description here

关于git - Jenkins MultiBranch - 从管道文件 (Jenkinsfile) 中引用 git repo 的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48292080/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com