Ties the parent build of a multi-configuration project to a node. As [JENKINS-7825](https://issues.jenkins-ci.org/browse/JENKINS-7825) is fixed in Jenkins 1.521, this plugin is now deprecated. Please look under the "advanced" option of the matrix project configuration to tie the matrix parent to a label/slave. Simple groovy script to perform the migration. Users are encouraged to backup first. ``` syntaxhighlighter-pre j = Jenkins.instance; jobs = j.items.grep { it instanceof hudson.matrix.MatrixProject } jobs.grep { wrapper(it) != null }.each { println "${it.fullName}" def wrpr = wrapper(it) println "\t${wrpr.labelName}" it.setAssignedLabel(j.getLabel(wrpr.labelName)); it.getBuildWrappersList().remove(wrpr); it.save(); }.size(); def wrapper(mp) { return mp.getBuildWrappersList().get(matrixtieparent.BuildWrapperMtp.class) } ``` ## Usage ![](docs/images/snapshot2.png){width="568" height="118"} Multi-Configuration projects always run one *parent build* job. The *parent build* verifies source control checkout operations, then monitors the execution of child jobs created to satisfy the Configuration Matrix. Sometimes the *parent build* must run on some computers, but not others. This may be due to constraints such as a lack of source control or other software on a computer, file permission issues, etc. Restrict where the *parent build* runs by selecting a specific computer's node name. Or, use a label to restrict the parent build to run only on computers marked with that label. ## Limitations - System property *hudson.model.Hudson.flyweightSupport* must be set to true. This is Jenkins' default setting since v1.337. ## Changelog #### Version 1.1 - August 23, 2010 - Requires **Hudson ver. 1.373** or newer. - Fix exception caused by Hudson core changes introduced in v1.372. Fixed for v1.373 and newer. (Don't use v1.372) #### Version 1.0 - June 8, 2010 - Works with **Hudson versions 1.361 thru 1.371** - Initial release.