以编程方式获取插件的 Jenkins 配置
Programmatically getting Jenkins configuration for a plugin
我正在尝试通过 Groovy 控制台中的 Groovy 脚本获取(并希望更改)插件的 Jenkins 配置。我的具体示例是尝试更改 publish-over-ssh 插件的多个 IP 地址。通过命令行(编辑 xml)很容易做到,但经过几个小时的努力,我仍然想知道如何通过 groovy 控制台完成,因为没有除了启蒙之外的其他原因。我查看了 Jenkins API javadoc,但无济于事。
我如何find/change Jenkins 控制台中插件的全局配置?
这里是开始搜索的好地方:
这里是一个添加主机的例子:
import jenkins.model.*
import jenkins.plugins.publish_over_ssh.BapSshHostConfiguration
def inst = Jenkins.getInstance()
def publish_ssh = inst.getDescriptor("jenkins.plugins.publish_over_ssh.BapSshPublisherPlugin")
def configuration = new BapSshHostConfiguration(name,
hostname,
username,
encryptedPassword,
remoteRootDir,
port,
timeout,
overrideKey,
keyPath,
key,
disableExec
)
publish_ssh.addHostConfiguration(configuration)
publish_ssh.save()
在这里我们可以看到几个有用的函数:
- getHostConfigurations()
- removeHostConfiguration(最终字符串名称)
应该是您需要的所有信息,干杯!
我正在尝试通过 Groovy 控制台中的 Groovy 脚本获取(并希望更改)插件的 Jenkins 配置。我的具体示例是尝试更改 publish-over-ssh 插件的多个 IP 地址。通过命令行(编辑 xml)很容易做到,但经过几个小时的努力,我仍然想知道如何通过 groovy 控制台完成,因为没有除了启蒙之外的其他原因。我查看了 Jenkins API javadoc,但无济于事。
我如何find/change Jenkins 控制台中插件的全局配置?
这里是开始搜索的好地方:
这里是一个添加主机的例子:
import jenkins.model.*
import jenkins.plugins.publish_over_ssh.BapSshHostConfiguration
def inst = Jenkins.getInstance()
def publish_ssh = inst.getDescriptor("jenkins.plugins.publish_over_ssh.BapSshPublisherPlugin")
def configuration = new BapSshHostConfiguration(name,
hostname,
username,
encryptedPassword,
remoteRootDir,
port,
timeout,
overrideKey,
keyPath,
key,
disableExec
)
publish_ssh.addHostConfiguration(configuration)
publish_ssh.save()
在这里我们可以看到几个有用的函数:
- getHostConfigurations()
- removeHostConfiguration(最终字符串名称)
应该是您需要的所有信息,干杯!