如何引用詹金斯共享库特定分支

Bal*_*hna 15 shared-libraries jenkins jenkins-pipeline

我有一个名为“jenkins-shared-library”的 jenkins 共享库的存储库,现在我创建了一个名为“test”的新分支,

我有一个应用程序需要在 jenkins 文件中使用这个 jenkins 共享库,目前它被称为

@Library('jenkins-shared-library')_
Run Code Online (Sandbox Code Playgroud)

我想在 jenkinsfile 中使用 jenkins-shared-library 的这个特定测试分支,如何使用 jenkins-shared-library 的特定分支???

Noa*_*mer 17

查看共享库文档,有多种方法可以跨管道控制共享库的版本。

\n

第一个选项是在全局管道库配置中定义版本- 这将影响使用该库的所有管道。

\n

第二个选项(可能是您需要的)是在加载库时使用版本说明符,格式为@Library(\'my-shared-library@<BranchName>\'). 版本说明符可以是分支名称、git 标签等。

\n
// Using a version specifier, such as branch, tag, etc\n@Library(\'my-shared-library@1.0\') _\n// Accessing multiple libraries with one statement \n@Library([\'my-shared-library\', \'otherlib@abc1234\']) _\n
Run Code Online (Sandbox Code Playgroud)\n

重要如果要覆盖全局管道库中定义的默认库的版本,则必须在共享库\xe2\x80\x99s 配置中启用允许覆盖默认版本- 否则您将无法使用定制版本。

\n

动态加载库时(使用library步骤),您还可以指定 version: library \'my-shared-library@master\',并且由于这是常规步骤,因此可以在运行时计算版本,而不是像注释那样仅使用常量值。
\n例如:library "my-shared-library@$BRANCH_NAME"

\n


小智 7

您只需将“测试”分支声明为

@Library('jenkins-shared-library@test')_