使用Jenkins Pipeline共享库上的版本

but5z9lq  于 2022-11-01  发布在  Jenkins
关注(0)|答案(3)|浏览(249)

我正在尝试弄清楚如何使用特定版本的共享库
Jenkins文档中关于这一点的描述不是很清楚,所以我做了一些试验,但没有成功。
他们基本上说:

但是我应该如何在 Manage Jenkins〉System Config 菜单下的“Global Pipeline Libraries”部分配置somelib,以便我可以使用任何可用的稳定版本?!
问题是:假设我的somelib项目处于版本控制之下,并且目前我已经发布了它的两个稳定版本:v0.1v0.2(因此我有两个名为v0.1v0.2的标记)。
在某些管道中,我想使用somelib的版本v0.1,而在另一个管道中,我需要使用v0.2版本。
我如何使用Jenkins提供的@Library注解来实现这一点?

mzmfm0qo

mzmfm0qo1#

Jenkins〉System Config 下的Global Pipeline Libraries中,如果没有在Jenkinsfile中另外指定,您只能设置要使用的默认库版本。这可能看起来像这样(忽略这里的Failed to connect to repo错误):

Jenkinsfile中,如果不需要默认版本,可以显式指定要使用的版本:

@Library('somelib@<tag/branch/commitRef>')

这样,您就可以随时自由选择项目使用的管道版本。

bvk5enib

bvk5enib2#

在@fishi回复之后,我只想留下一个重要的留言
全局管道库上进行库配置期间,必须选择Modern SCM选项,以便可以无缝工作。
如果选择Legacy Mode,则无法按需使用库。
如果由于某种原因Modern SCM没有出现在Retrieval Mode选项中,这意味着您需要升级Global Pipeline Libraries插件,甚至Jenkins

vulvrdjw

vulvrdjw3#

基本上,“版本”是存储共享库代码的存储库的分支名称。如果除了之外没有任何分支,请确保将其填入全局管道库配置中的默认版本

相关问题