提交 b2df57e4 编写于 作者: K kohsuke

[FIXED HUDSON-6497] slightly revised the patch, to avoid using a boolean flag...

[FIXED HUDSON-6497] slightly revised the patch, to avoid using a boolean flag for a concurrency control. It affects the serialization format, and it's not concurrency safe.

Given the use case described in the bug, I wonder if it's better to have a different extension point (sort of like ComputerListener) that can contribute build variables to any builds going on in the system.

git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@32257 71c3de6d-444a-0410-be80-ed276b4c234a
上级 59317c93
......@@ -740,6 +740,13 @@ public abstract class AbstractBuild<P extends AbstractProject<P,R>,R extends Abs
if (v!=null) r.put(p.getName(),v);
}
}
// allow the BuildWrappers to contribute additional build variables
if (project instanceof BuildableItemWithBuildWrappers) {
for (BuildWrapper bw : ((BuildableItemWithBuildWrappers) project).getBuildWrappersList())
bw.makeBuildVariables(this,r);
}
return r;
}
......
......@@ -33,6 +33,7 @@ import hudson.model.Run.RunnerAbortedException;
import java.io.IOException;
import java.util.Collection;
import java.util.Collections;
import java.util.Map;
/**
* Pluggability point for performing pre/post actions for the build process.
......@@ -203,6 +204,22 @@ public abstract class BuildWrapper extends AbstractDescribableImpl<BuildWrapper>
return Collections.singletonList(a);
}
/**
* Called to define {@linkplain AbstractBuild#getBuildVariables()}.
*
* This provides an opportunity for a BuildWrapper to append any additional
* build variables defined for the current build.
*
* @param build
* The build in progress for which this {@link BuildWrapper} is called. Never null.
* @param variables
* Contains existing build variables. Add additional build variables that you contribute
* to this map.
*/
public void makeBuildVariables(AbstractBuild build, Map<String,String> variables) {
// noop
}
/**
* Returns all the registered {@link BuildWrapper} descriptors.
*/
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册