如何使用Groovy修改/添加/删除Jenkins从站上的工具安装?

时间:2014-09-17 11:32:56

标签: groovy jenkins

atm我正在使用Groovy脚本来配置我们不同的Jenkins主服务器,包括工具安装,例如:

mavenDesc = Jenkins.instance.getDescriptorByName("hudson.tasks.Maven");
if (mavenDesc != null) {
  MavenInstallation mi = new MavenInstallation("maven3.0.2", "/home/jenkins/apache-maven-3.0.2");
  MavenInstallation mi32 = new MavenInstallation("maven3.2.3", "/home/jenkins/apache-maven-3.2.3");
  mavenDesc.setInstallations(mi, mi32);
}

这很好但现在我想对奴隶做同样的事情(不同的操作系统如此不同的位置)。无法弄清楚如何......这是我得到的最远:

for (aSlave in jenkins.slaves) {
  for ( ToolLocationNodeProperty.ToolLocation toolLocation : aSlave.getNodeProperties().get(ToolLocationNodeProperty.class).getLocations()) {
    //println(toolLocation.getKey())    
    //println(toolLocation.getType())
    println(toolLocation.getName())
    println(toolLocation.getHome())
  }
}

所有实例看起来都是不可改变的,我似乎没有找到任何方法将工具位置添加到奴隶。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

nodeProperties.replace(toolLocation)应该完成这项工作。