由于我无法访问组织中的“管理Jenkins”菜单,我无法在“管理Jenkins”中的“全局管道库”中配置共享库。
没有在Manage Jenkins中进行配置,是否有其他方法实现此功能?
(或)
是否可以通过管道脚本配置“全球管道库”部分,而不管访问权限如何?
如果可能,请您在答案中共享一些代码片段。
正如上面的一些答案所提到的,您可以在运行时使用库标识符加载库,也可以在您尝试运行的Jenkins作业的文件夹级别配置库。在大多数情况下,开发人员没有对Jenkins的管理员权限。但是,允许他们访问和更新文件夹级别的配置。您可以检查您是否拥有这些特权。在运行时为所有管道脚本加载库会更方便。
加载库
您可以从源代码管理(如git)加载库,如下所示:
def myLib= library(
identifier: 'myLib@master', retriever: modernSCM
(
[
$class: 'GitSCMSource',
remote: 'https://bitbucket.org/shaybc/commonlib.git',
credentialsId: 'bitbucketCreds'
]
)
)
库中的Groovy类
假设这是groovy类:
package my.domain
class Tester
{
public static String staticTest()
{
return "this is from a static method";
}
public String test()
{
return "this is from an instance method";
}
}
从脚本化管道调用方法
然后调用这样的静态方法:
myLib.my.domain.Tester.staticTest();
还有这样一个实例方法:
// call the constructor (you can also call a constructor with parameters)
def tester = myLib.my.domain.Tester.new();
// call your instance method
tester.test();
阅读更多:
>
动态加载库
@Library注释和Library步骤之间的区别
私有共享库示例
无需在“管理Jenkins”中进行配置。我们可以在管道脚本中使用“LibraryIdentifier”来加载jenkins构建中的库。
我们试图切换到jenkins管道,但我在groovy/java的低水平阻止了我们建立一个共享库。 这里是我的共享库(位于bitbucket中git repo的{root}/src/com/pipeline.groovy中)我必须承认,我在这里做什么都不知道,因为我不知道包裹的定义 Jenkins的管道看起来 通过所有这些设置,我最终得到了错误: 我怀疑我的漂亮包裹的定义,但我坚持这样做。 非常欢迎
我将我的Jenkins Pipeline存储为Jenkins共享库中的Groovy脚本。我想为不同的工作使用不同的版本。我的共享库脚本称为如下: 我已将sharedLib repo中的不同版本标记为。万一我想用v1。0,我用注释引用了它,如下所示。 在我的工作中,我通过调用groovy脚本访问了共享库,并使用了上面的注释,如图所示: 我运行这项工作时出错了。以下是我看到的错误。 当我使用。我哪里出
问题内容: 我在Jenkins管道的共享库中有一个方法。想法是使用该库并将文件上传到远程主机。该库将导入到单例库中。 实例化的类如下所示: 即使我在日志中看到该行。我看不到命令正在执行。我缺少某种无法调用的功能吗? 编辑 当我直接在库中使用时,它可以工作。 但是,尝试使用时不起作用。 我得到的异常是: 问题答案: 如此处所述,您需要捕获stdout / stderr才能 _看到_任何内容。 至少:
我在Jenkins管道的共享库中有一个方法。其想法是使用此库并将文件上载到远程主机。该库导入到单例库中。 实例化的类如下所示: 尽管我在日志中看到了println行。我看不到正在执行curl命令。是否有我缺少的不调用cmd的东西。执行才能工作? 编辑 当我在库中直接使用curl时,它可以工作。 但是,当尝试使用时,它不起作用。 我得到的例外是:
可以在jenkins管道共享库中导入和使用常规java库吗?我想导入AWS SDK for java,并在管道代码中直接使用它。我必须将其添加到共享库的src dir中吗?
首先,我是新来的Java,Groovy和Jenkins,所以请对我有耐心;) 我正在准备一个带有管道支持的Jenkins服务器,以备将来在构建环境中使用。我们使用一种特殊的内部脚本语言,为此我必须用java编写一个包装器。只有在Groovy中才能完成这项工作,我们必须使用这种特殊的语言。 我尝试过很多方法将java库引用到这个jenkins项目中,但都没有成功。我主要是在https://githu