Jenkins Git 轮询可以识别标签吗?
Can Jenkins Git polling be made tag aware?
我必须将 Jenkins 与 Azure Devops 存储库连接起来。不幸的是,Jenkins 处于公司限制之下,无法在更改时从存储库中进行 webhook。
因此,我最终在我的管道工作中进行了良好的轮询。由于该项目使用 gradle scm 工作流插件计算版本号并从 git 结构创建发布,我需要让 jenkins 轮询对标签推送做出反应。
那么,是否有可能让 jenkins 轮询知道远程的标签推送,这意味着没有完成额外的提交?
可以通过如下设置 refspec
和 branch specifier
让 jenkins 轮询知道标签。但如果源代码中没有提交任何更改,它就不起作用。看到这个 open issue.
refspec: +refs/tags/*:refs/remotes/origin/tags/*
branch specifier: **
您可能需要创建两个 jenkins 管道,第一个管道将 运行 每 N 分钟执行一次 git tag
作为 shell 命令并从 [=20= 获取所有标签], 并在some 属性 文件中写入标签,然后与上次的标签进行比较。如果有新标签,则触发第二个管道。请参阅
的评论
我必须将 Jenkins 与 Azure Devops 存储库连接起来。不幸的是,Jenkins 处于公司限制之下,无法在更改时从存储库中进行 webhook。
因此,我最终在我的管道工作中进行了良好的轮询。由于该项目使用 gradle scm 工作流插件计算版本号并从 git 结构创建发布,我需要让 jenkins 轮询对标签推送做出反应。
那么,是否有可能让 jenkins 轮询知道远程的标签推送,这意味着没有完成额外的提交?
可以通过如下设置 refspec
和 branch specifier
让 jenkins 轮询知道标签。但如果源代码中没有提交任何更改,它就不起作用。看到这个 open issue.
refspec: +refs/tags/*:refs/remotes/origin/tags/*
branch specifier: **
您可能需要创建两个 jenkins 管道,第一个管道将 运行 每 N 分钟执行一次 git tag
作为 shell 命令并从 [=20= 获取所有标签], 并在some 属性 文件中写入标签,然后与上次的标签进行比较。如果有新标签,则触发第二个管道。请参阅