From d49c0df60acce7b03ba4b1d4b27a77373f6eeaab Mon Sep 17 00:00:00 2001 From: dongwenjuan Date: Thu, 23 May 2019 11:46:25 +0800 Subject: [PATCH] add project parameters The plugin missing customed parameters which are defined in project. Change-Id: If9580042590156025b0be6a69675186ee876c2ed Signed-off-by: dongwenjuan --- bindep.txt | 3 +++ .../hudson/plugins/gearman/StartJobWorker.java | 15 +++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 bindep.txt diff --git a/bindep.txt b/bindep.txt new file mode 100644 index 0000000..22c6a33 --- /dev/null +++ b/bindep.txt @@ -0,0 +1,3 @@ +maven [test] +# Javac Compiler in lib/tools.jar +openjdk-7-jdk [test] \ No newline at end of file diff --git a/src/main/java/hudson/plugins/gearman/StartJobWorker.java b/src/main/java/hudson/plugins/gearman/StartJobWorker.java index 33bfd83..45e022f 100644 --- a/src/main/java/hudson/plugins/gearman/StartJobWorker.java +++ b/src/main/java/hudson/plugins/gearman/StartJobWorker.java @@ -20,6 +20,8 @@ package hudson.plugins.gearman; import hudson.model.Action; +import hudson.model.ParameterDefinition; +import hudson.model.ParametersDefinitionProperty; import hudson.model.ParameterValue; import hudson.model.Result; import hudson.model.AbstractBuild; @@ -158,6 +160,19 @@ public class StartJobWorker extends AbstractGearmanFunction { for (Map.Entry entry : inParams.entrySet()) { buildParams.add(new TextParameterValue(entry.getKey(), entry.getValue())); } + + ParametersDefinitionProperty property = + (ParametersDefinitionProperty) project.getProperty( + ParametersDefinitionProperty.class); + + if (property != null) { + List result = new ArrayList(); + for (ParameterDefinition def : property.getParameterDefinitions()) { + result.add(def.getDefaultParameterValue()); + buildParams.add(def.getDefaultParameterValue()); + } + } + String offline = inParams.get("OFFLINE_NODE_WHEN_COMPLETE"); if (offline != null) { if (offline.equals("1") || offline.equals("true") ||