提交 695b4ba8 编写于 作者: H huybrechts

[HUDSON-2903] pass parameters in a matrix build

git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@14709 71c3de6d-444a-0410-be80-ed276b4c234a
上级 56a86e2a
......@@ -7,11 +7,10 @@ import hudson.model.Executor;
import hudson.model.Fingerprint;
import hudson.model.Hudson;
import hudson.model.JobProperty;
import hudson.model.ParametersAction;
import hudson.model.Queue;
import hudson.model.Result;
import hudson.tasks.Publisher;
import org.kohsuke.stapler.StaplerRequest;
import org.kohsuke.stapler.StaplerResponse;
import java.io.File;
import java.io.IOException;
......@@ -21,6 +20,9 @@ import java.util.Calendar;
import java.util.Collection;
import java.util.List;
import org.kohsuke.stapler.StaplerRequest;
import org.kohsuke.stapler.StaplerResponse;
/**
* Build of {@link MatrixProject}.
*
......@@ -145,8 +147,13 @@ public class MatrixBuild extends AbstractBuild<MatrixProject,MatrixBuild> {
try {
for(MatrixConfiguration c : activeConfigurations) {
logger.println(Messages.MatrixBuild_Triggering(c.getDisplayName()));
ParametersAction parameters = getAction(ParametersAction.class);
if (parameters != null) {
c.scheduleBuild(parameters);
} else {
c.scheduleBuild();
}
}
// this occupies an executor unnecessarily.
// it would be nice if this can be placed in a temproary executor.
......
......@@ -10,6 +10,9 @@ import hudson.model.ItemGroup;
import hudson.model.JDK;
import hudson.model.Label;
import hudson.model.Node;
import hudson.model.ParameterValue;
import hudson.model.ParameterizedProjectTask;
import hudson.model.ParametersAction;
import hudson.model.Project;
import hudson.model.SCMedItem;
import hudson.scm.SCM;
......@@ -255,4 +258,10 @@ public class MatrixConfiguration extends Project<MatrixConfiguration,MatrixRun>
* jobs to use longer path names.
*/
public static boolean useShortWorkspaceName = Boolean.getBoolean(MatrixConfiguration.class.getName()+".useShortWorkspaceName");
public boolean scheduleBuild(ParametersAction parameters) {
return Hudson.getInstance().getQueue().add(
new ParameterizedProjectTask(this, parameters.getParameters()), getQuietPeriod());
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册