以编程方式获取插件的 Jenkins 配置

2023-12-20

我正在尝试获取(并希望更改)Groovy 控制台内带有 Groovy 脚本的插件的 Jenkins 配置。我的具体示例是尝试更改publish-over-ssh插件的多个IP地址。通过命令行(编辑 xml)可以很容易地做到这一点,但是经过几个小时的努力,我仍然想找到如何通过 groovy 控制台来完成它,除了启发之外没有其他原因。我查看了 Jenkins API javadoc,但无济于事。

如何在 Jenkins 控制台中查找/更改插件的全局配置?


这是开始搜索的好地方:

https://github.com/jenkinsci/publish-over-ssh-plugin/tree/master/src/main/java/jenkins/plugins/publish_over_ssh https://github.com/jenkinsci/publish-over-ssh-plugin/tree/master/src/main/java/jenkins/plugins/publish_over_ssh

以下是添加主机的示例:

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()

在这里我们可以看到一些有用的功能:

https://github.com/jenkinsci/publish-over-ssh-plugin/blob/master/src/main/java/jenkins/plugins/publish_over_ssh/descriptor/BapSshPublisherPluginDescriptor.java https://github.com/jenkinsci/publish-over-ssh-plugin/blob/master/src/main/java/jenkins/plugins/publish_over_ssh/descriptor/BapSshPublisherPluginDescriptor.java

  • 获取主机配置()
  • 删除主机配置(最终字符串名称)

应该是您执行此操作所需的所有信息,干杯!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以编程方式获取插件的 Jenkins 配置 的相关文章

随机推荐