当前位置: 首页 > 知识库问答 >
问题:

如何引用jenkins共享库特定分支

邓韬
2023-03-14

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

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

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

我想在我的jenkins文件中使用我的jenkins共享库的这个特定测试分支,我如何使用jenkins共享库的特定分支???

共有2个答案

沈琨
2023-03-14

只需将“test”分支声明

jenkins-shared-library@test_

孟高峰
2023-03-14

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

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

第二个选项,可能是您需要的,是在加载库时使用版本说明符,格式将是@库('my-share d-base@

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

重要信息:如果要覆盖在全局管道库中定义的默认库的版本,则必须在共享库的配置中启用“允许覆盖默认版本”,否则将无法使用自定义版本。

动态加载库时(使用library步骤),还可以指定版本:library'我的共享-library@master“,由于这是一个常规步骤,因此可以在运行时计算版本,而不是像注释那样仅使用常量值
例如:library“我的共享库@$BRANCH\u NAME”

 类似资料:
  • 我的groovy脚本都在git存储库中,使用jenkins checkout SCM。其中一个groovy脚本中有一些常用函数,我想使这个groovy成为一个共享库,而无需打开jenkins并在jenkins管理表中添加共享库。 我可以使用RESTAPI或其他方法添加新库吗?

  • 我试图从一个位于vars下的新脚本中获取信息,该脚本是从共享库Jenkins类调用的,但出错了。 > 需要-全局配置文件。 目标-能够在共享库中获取全局值,而无需从Jenkins文件发送参数。 文件结构 变量/全局变量。棒极了 shared_library类 詹金斯档案 因此,我可以看到管道中第一次打印的值,但对于第二次打印,我得到: 类:src没有这样的属性:globals。组织。詹金斯。共享图

  • 我通过jenkins管道(共享库)运行此代码。 它在本地工作,但在Jenkins管道中,我得到以下错误: 请帮帮我

  • 我有一个Jenkins文件,我正在尝试从共享库实例化groovy类。我得到“无法解决类测试” 我有一个src/com/org/foo。共享库中的groovy文件: 我正试图在我的Jenkins文件中实例化它 如果我将文件作为一个类引用(我没有对其构造函数的访问权限),那么它就会起作用。即: 这很好,让我使用foo函数。但是,我失去了赋予类常量并用参数构造它的能力。 知道如何定义和使用共享库中的类吗

  • 可以合并多个共享Jenkins库吗? 例如,我有一个公共共享库:我的共享库(带有maven项目的git存储库)定义在包含一些作业的jenkins文件夹上。在该文件夹中运行的每个作业都可以使用Jenkins文件中的共享库,包括: 现在,我想创建另一个共享库:包含一些专门管道的my-专门化共享库(在另一个git存储库中,也作为maven项目)。我的专用共享库中的管道(groovy类、脚本等)应该能够使

  • 问题内容: 两个共享库liba.so和libb.so。liba.so使用libb.so。所有c文件都使用-fPIC编译。链接使用- shared。当我们在liba.so上调用dlopen时,它无法在libb.so中找到符号…我们得到“未定义符号”错误。我们可以dlopen libb.so没有错误。我们知道liba正在找到libb,因为我们没有得到文件未找到错误。删除libb.so时,出现文件未找到