plugins - 编写 jenkins 插件时如何共享全局配置字段?

标签 plugins jenkins share

我目前正在编写一个具有多个构建器的 jenkins 插件。我想在所有构建器中共享描述符/global.jelly 中的字段。我该如何分享这些信息?我可以使用继承或封装吗?

最佳答案

一个好的起点是搜索 Jenkins github repository

你想要的代码是

Jenkins.getInstance().getDescriptor( MyPluginWithGlobalConfig.class )

这会给你你想要的描述符(因为只有一个描述符实例)

这是我在 plugin 中使用的一个(在 groovy 中)它获取一个描述符然后调用它的方法 source file
@Override
public List<String> rebuild(List<String> list){
    SeleniumDynamicCapability.DescriptorImpl sdcd = Jenkins.getInstance().getDescriptor(SeleniumDynamicCapability.class)

    List<SeleniumCapabilityRO> sc = sdcd.loadDefaultItems()

    if (sc.size() == 0)
        throw(new SeleniumException("No selenium capabilities detected"))

    setSeleniumCapabilities(sc)

    sc.each{list.add(it.toString())}
    return list;
}

关于plugins - 编写 jenkins 插件时如何共享全局配置字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21730788/

相关文章:

android - 有谁知道为什么facebook放错图片

c++ - 如何使 CMake 输出到 'bin' 目录?

android - 如何从 Android App Incoming Intent 获取 URI

java - 无法在 Windows 7 64 位上安装 LuaEclipse

configuration - 如何为多模块 maven 项目配置 Jenkins

maven - SonarQube "The main branch has no lines of code."问题,而 Jenkins 说分析成功

jenkins - 如何在作业开始前清除 Jenkins 管道中的工作区

iphone - 限制共享联系人时打开的内容

spring - SpringSource Tool Suite 2.6 Grails支持是否被破坏了?

cordova - 如何在 IONIC/Cordova(在 JavaScript 代码中)获取应用程序的包名称/捆绑标识符