如何使用分支和凭据将 Jenkins 共享库加载到另一个 Jenkins 共享库?

问题描述 投票:0回答:1

在我的 Jenkins 项目中,我有一个库(即

/vars
目录中的 .groovy 文件)。

我需要从不同的 github 存储库加载共享库。事实上,我需要从该存储库的特定分支获取它,并且它是一个需要用户身份验证的私有存储库。

我该怎么做?

github jenkins jenkins-pipeline jenkins-groovy jenkins-shared-libraries
1个回答
0
投票

我能够通过以下代码实现这一目标:

#!groovy

library(
    identifier: 'other-shared-lib@mybranch', 
    retriever: modernSCM([
            $class: 'GitSCMSource',
            remote: '[email protected]:private/a-shared-lib.git',
            credentialsId: 'mycreds'
        ]
    ),
    changelog: false
)

def myFunc() {
    func_in_other_lib()
}

一开始这让我很困惑,因为

identifier
参数奇怪地分为两部分:
@
之前的部分是您在此处命名的新变量,可以在脚本中使用,而
@
之后的部分是要下载的分支的名称。

© www.soinside.com 2019 - 2024. All rights reserved.