我正在尝试使用 Jenkins Groovy 控制台来修改许多作业的配置。我需要访问一个包含此插件传递给 Maven 的附加属性的字段:
https://wiki.jenkins.io/display/JENKINS/Release+Plugin
所以我想出了如何访问插件类:
for(item in Hudson.instance.items) {
if (item instanceof hudson.maven.MavenModuleSet)
{
println("\njob $item.name ");
rw = item.getBuildWrappers().get(hudson.plugins.release.ReleaseWrapper.class);
if (rw == null)
{
println("release build not configured");
}
else
{
println("\nrelease build configured");
println(rw.getParameterDefinitions());
println("\n");
println(rw.getPreBuildSteps());
println("\n");
for(step in rw.getPreBuildSteps()){
println("\nPROPERTIES: " + step.getProperties())
for(property in step.getProperties()){
println("\nPROP: " + property)
}
}
}
}
}
属性:[设置:jenkins.mvn.DefaultSettingsProvider@307e9334,类:class hudson.tasks.Maven,maven:null,globalSettings:jenkins.mvn.DefaultGlobalSettingsProvider@a1e5a0,usePrivateRepository:false,描述符:hudson.tasks.Maven$DescriptorImpl@ 5481ba47,injectBuildVariables:true,目标:release:准备,requiredMonitorService:无]
不幸的是,属性字段是描述常规对象字段的字符串列表,而不是我正在寻找的数据。它应该是一个简单的字符串,包含 Maven 的附加属性。
https://javadoc.jenkins.io/hudson/tasks/Maven.html#properties
看起来 Groovy 已经用它的魔力覆盖了默认方法和字段。有没有办法到达属性?
陪伴而非守候
相关分类