diff --git a/changelog.html b/changelog.html
index 59cbd3d0ed6be63ce5401c18652148606ec7e6ca..25dc0661c973bf293beaff8edb53c803f3f42ba3 100644
--- a/changelog.html
+++ b/changelog.html
@@ -57,6 +57,8 @@ Upcoming changes
super.onLoad(parent, combination.toString());
}
+ @Override
+ public boolean isConcurrentBuild() {
+ return getParent().isConcurrentBuild();
+ }
+
+ @Override
+ public void setConcurrentBuild(boolean b) throws IOException {
+ throw new UnsupportedOperationException("The setting can be only changed at MatrixProject");
+ }
+
/**
* Used during loading to set the combination back.
*/
diff --git a/core/src/main/java/hudson/model/AbstractProject.java b/core/src/main/java/hudson/model/AbstractProject.java
index 6b358abe1da859d05950e599244663c187054dcc..8b4bb095caae444a66a764763a9eeaed302faf29 100644
--- a/core/src/main/java/hudson/model/AbstractProject.java
+++ b/core/src/main/java/hudson/model/AbstractProject.java
@@ -299,7 +299,7 @@ public abstract class AbstractProject,R extends A
*/
@Exported
public boolean isConcurrentBuild() {
- return Jenkins.CONCURRENT_BUILD && concurrentBuild;
+ return concurrentBuild;
}
public void setConcurrentBuild(boolean b) throws IOException {
diff --git a/core/src/main/java/jenkins/model/Jenkins.java b/core/src/main/java/jenkins/model/Jenkins.java
index 57959c5d6705f2f739b945d151e1bfe40246f498..07fc692e0f9db0989b042c673dbf4a5385cec943 100755
--- a/core/src/main/java/jenkins/model/Jenkins.java
+++ b/core/src/main/java/jenkins/model/Jenkins.java
@@ -213,6 +213,8 @@ import org.jvnet.hudson.reactor.TaskBuilder;
import org.jvnet.hudson.reactor.TaskGraphBuilder;
import org.jvnet.hudson.reactor.Reactor;
import org.jvnet.hudson.reactor.TaskGraphBuilder.Handle;
+import org.kohsuke.accmod.Restricted;
+import org.kohsuke.accmod.restrictions.NoExternalUse;
import org.kohsuke.args4j.Argument;
import org.kohsuke.args4j.Option;
import org.kohsuke.stapler.Ancestor;
@@ -3802,7 +3804,10 @@ public class Jenkins extends AbstractCIBase implements ModifiableItemGroup
+
diff --git a/core/src/main/resources/hudson/model/AbstractItem/configure-common.jelly b/core/src/main/resources/hudson/model/AbstractItem/configure-common.jelly
index d833d3be72b53bb06bfa57d7322c79b3846c2e5e..df82dfcaba36915a34a36aa15015c4a4218ff372 100644
--- a/core/src/main/resources/hudson/model/AbstractItem/configure-common.jelly
+++ b/core/src/main/resources/hudson/model/AbstractItem/configure-common.jelly
@@ -29,9 +29,7 @@ THE SOFTWARE.
-
-
-
+
diff --git a/core/src/main/resources/hudson/model/AbstractItem/configure-common.properties b/core/src/main/resources/hudson/model/AbstractItem/configure-common.properties
index 1f11eee06a7c32cdf320ee317cdd976b7f3f8f56..bcbdaf1b67a4e29165f683628959c76fa55a789d 100644
--- a/core/src/main/resources/hudson/model/AbstractItem/configure-common.properties
+++ b/core/src/main/resources/hudson/model/AbstractItem/configure-common.properties
@@ -22,5 +22,4 @@
default.value=(Default)
Advanced\ Project\ Options\ configure-common=Advanced Project Options
-title.concurrentbuilds=Execute concurrent builds if necessary
Display\ Name=Display Name
diff --git a/core/src/main/resources/hudson/model/AbstractItem/configure-common_da.properties b/core/src/main/resources/hudson/model/AbstractItem/configure-common_da.properties
index bae909848b37cf82e8e47c2773fb8a90496f7e3c..4f67b673d3ec09982bcd5e368d46c295623a6028 100644
--- a/core/src/main/resources/hudson/model/AbstractItem/configure-common_da.properties
+++ b/core/src/main/resources/hudson/model/AbstractItem/configure-common_da.properties
@@ -23,6 +23,5 @@
Label\ Expression=Etiketudtryk
default.value=(Standard)
Restrict\ where\ this\ project\ can\ be\ run=Begr\u00e6ns hvor dette projekt kan k\u00f8res
-title.concurrentbuilds=K\u00f8r parallelle byg om n\u00f8dvendigt
Advanced\ Project\ Options\ configure-common=Avancerede projektindstillinger
JDK\ to\ be\ used\ for\ this\ project=JDK der skal benyttes til dette projekt
diff --git a/core/src/main/resources/hudson/model/AbstractItem/configure-common_de.properties b/core/src/main/resources/hudson/model/AbstractItem/configure-common_de.properties
index 9a1642a650be522df9ea9be09f0dd721dd69254e..7b88701baf51b23c90e85f6e2d14db57e7c8c3a4 100644
--- a/core/src/main/resources/hudson/model/AbstractItem/configure-common_de.properties
+++ b/core/src/main/resources/hudson/model/AbstractItem/configure-common_de.properties
@@ -23,6 +23,5 @@
JDK\ to\ be\ used\ for\ this\ project=JDK, das für dieses Projekt verwendet wird
default.value=(Vorgabewert)
Advanced\ Project\ Options\ configure-common=Erweiterte Projekteinstellungen
-title.concurrentbuilds=Parallele Builds ausführen, wenn notwendig
Restrict\ where\ this\ project\ can\ be\ run=Beschränke wo dieses Projekt ausgeführt werden darf
Label\ Expression=Label-Ausdruck
diff --git a/core/src/main/resources/hudson/model/AbstractItem/configure-common_es.properties b/core/src/main/resources/hudson/model/AbstractItem/configure-common_es.properties
index b45e975eab0a7899c09f2397a4c3bac2b84487d2..0c03c7d4cfcda06f3b8c8275d415c276bb8161e0 100644
--- a/core/src/main/resources/hudson/model/AbstractItem/configure-common_es.properties
+++ b/core/src/main/resources/hudson/model/AbstractItem/configure-common_es.properties
@@ -22,7 +22,6 @@
default.value=(por defecto)
Advanced\ Project\ Options\ configure-common=Opciones avanzadas del proyecto
-title.concurrentbuilds=Lanzar ejecuciones concurrentes en caso de ser necesario
JDK\ to\ be\ used\ for\ this\ project=JDK que se debe usar para este proyecto
Label\ Expression=Expresión
Restrict\ where\ this\ project\ can\ be\ run=Restringir dónde se puede ejecutar este proyecto.
diff --git a/core/src/main/resources/hudson/model/AbstractItem/configure-common_fr.properties b/core/src/main/resources/hudson/model/AbstractItem/configure-common_fr.properties
index 21748bd072df88c4543c0e02e051df45c71b2e9d..9bcec0762de315eb83264a075ed871df8653641c 100644
--- a/core/src/main/resources/hudson/model/AbstractItem/configure-common_fr.properties
+++ b/core/src/main/resources/hudson/model/AbstractItem/configure-common_fr.properties
@@ -26,4 +26,3 @@ Node=Noeud
Execute\ concurrent\ builds\ if\ necessary\ =Ex\u00E9cuter les builds en parall\u00E8le si n\u00E9cessaire
JDK\ to\ be\ used\ for\ this\ project=Le JDK à utiliser pour ce projet
default.value=(Valeur par défaut)
-title.concurrentbuilds=Ex\u00E9cuter des builds simultan\u00E9ment si n\u00E9cessaire
diff --git a/core/src/main/resources/hudson/model/AbstractItem/configure-common_it.properties b/core/src/main/resources/hudson/model/AbstractItem/configure-common_it.properties
index 428aee755952f0c17713ed32456eedef0527ad4c..4217beb20e5b829874796be9c05796ccb8f711fa 100644
--- a/core/src/main/resources/hudson/model/AbstractItem/configure-common_it.properties
+++ b/core/src/main/resources/hudson/model/AbstractItem/configure-common_it.properties
@@ -21,4 +21,3 @@
# THE SOFTWARE.
Advanced\ Project\ Options\ configure-common=Opzioni avanzate del progetto
-title.concurrentbuilds=Esegui build in concorrenza se necessario (beta)
diff --git a/core/src/main/resources/hudson/model/AbstractItem/configure-common_ja.properties b/core/src/main/resources/hudson/model/AbstractItem/configure-common_ja.properties
index 50b5ad6bfe6db2c4657f2422e1603e67c9fdfd0d..ca2ea1bc12026b184e3e2d41c499df043f62ec65 100644
--- a/core/src/main/resources/hudson/model/AbstractItem/configure-common_ja.properties
+++ b/core/src/main/resources/hudson/model/AbstractItem/configure-common_ja.properties
@@ -23,7 +23,6 @@
JDK\ to\ be\ used\ for\ this\ project=\u3053\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3067\u4f7f\u7528\u3059\u308bJDK
Advanced\ Project\ Options\ configure-common=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u9ad8\u5ea6\u306a\u30aa\u30d7\u30b7\u30e7\u30f3
default.value=\u30c7\u30d5\u30a9\u30eb\u30c8
-title.concurrentbuilds=\u53ef\u80fd\u3067\u3042\u308c\u3070\u4e26\u884c\u3057\u3066\u30d3\u30eb\u30c9
Restrict\ where\ this\ project\ can\ be\ run=\u5b9f\u884c\u3059\u308b\u30ce\u30fc\u30c9\u3092\u5236\u9650
Label\ Expression=\u30e9\u30d9\u30eb\u5f0f
Display\ Name=\u8868\u793a\u7528\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u540d
diff --git a/core/src/main/resources/hudson/model/AbstractItem/configure-common_pt_BR.properties b/core/src/main/resources/hudson/model/AbstractItem/configure-common_pt_BR.properties
index 4f53c24fa736f301e4065f90b4051707db756310..05c2f35f45965fefa75f17a56739ea5f07d22af3 100644
--- a/core/src/main/resources/hudson/model/AbstractItem/configure-common_pt_BR.properties
+++ b/core/src/main/resources/hudson/model/AbstractItem/configure-common_pt_BR.properties
@@ -24,7 +24,5 @@ Advanced\ Project\ Options\ configure-common=Op\u00e7\u00f5es Avan\u00e7adas do
# (Default)
default.value=Default
Node=N\u00f3
-# Execute concurrent builds if necessary (beta)
-title.concurrentbuilds=Execute as construcoes se necessario
Tie\ this\ project\ to\ a\ node=Vincular esse projeto a um N\u00f3
JDK\ to\ be\ used\ for\ this\ project=Necess\u00e1rio usar JDK nesse projeto
diff --git a/core/src/main/resources/hudson/model/AbstractItem/configure-common_zh_CN.properties b/core/src/main/resources/hudson/model/AbstractItem/configure-common_zh_CN.properties
index 0a5f745c2c8733b6df23b0e18e615597faff9f55..2ae6a54b43347971ad9eb55ea5814f071c1f1bd0 100644
--- a/core/src/main/resources/hudson/model/AbstractItem/configure-common_zh_CN.properties
+++ b/core/src/main/resources/hudson/model/AbstractItem/configure-common_zh_CN.properties
@@ -21,4 +21,3 @@
# THE SOFTWARE.
Advanced\ Project\ Options\ configure-common=\u9AD8\u7EA7\u9879\u76EE\u9009\u9879
-title.concurrentbuilds=\u5728\u5FC5\u8981\u7684\u65F6\u5019\u5E76\u53D1\u6784\u5EFA
diff --git a/core/src/main/resources/lib/hudson/project/config-concurrentBuild.jelly b/core/src/main/resources/lib/hudson/project/config-concurrentBuild.jelly
new file mode 100644
index 0000000000000000000000000000000000000000..25a19fa3f8fd3cbf49a6fdde0632e4918d61e9be
--- /dev/null
+++ b/core/src/main/resources/lib/hudson/project/config-concurrentBuild.jelly
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/core/src/main/resources/lib/hudson/project/config-concurrentBuild.properties b/core/src/main/resources/lib/hudson/project/config-concurrentBuild.properties
new file mode 100644
index 0000000000000000000000000000000000000000..f10afbec17293986489052e6c3b73e75f5539041
--- /dev/null
+++ b/core/src/main/resources/lib/hudson/project/config-concurrentBuild.properties
@@ -0,0 +1,23 @@
+# the mit license
+#
+# copyright (c) 2004-2012, sun microsystems, inc., kohsuke kawaguchi, eric lefevre-ardant
+#
+# permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "software"), to deal
+# in the software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
+title.concurrentbuilds=Execute concurrent builds if necessary
diff --git a/core/src/main/resources/lib/hudson/project/config-concurrentBuild_da.properties b/core/src/main/resources/lib/hudson/project/config-concurrentBuild_da.properties
new file mode 100644
index 0000000000000000000000000000000000000000..87a59af54bb0cbfd1d9ad0538c9403413a4b0012
--- /dev/null
+++ b/core/src/main/resources/lib/hudson/project/config-concurrentBuild_da.properties
@@ -0,0 +1,23 @@
+# The MIT License
+#
+# Copyright (c) 2004-2010, Sun Microsystems, Inc. Kohsuke Kawaguchi. Knud Poulsen.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
+title.concurrentbuilds=K\u00f8r parallelle byg om n\u00f8dvendigt
diff --git a/core/src/main/resources/lib/hudson/project/config-concurrentBuild_de.properties b/core/src/main/resources/lib/hudson/project/config-concurrentBuild_de.properties
new file mode 100644
index 0000000000000000000000000000000000000000..c87aa938632d04d0cc9bcae4fced68d6e301063e
--- /dev/null
+++ b/core/src/main/resources/lib/hudson/project/config-concurrentBuild_de.properties
@@ -0,0 +1,23 @@
+# The MIT License
+#
+# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Simon Wiest
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
+title.concurrentbuilds=Parallele Builds ausf?hren, wenn notwendig
diff --git a/core/src/main/resources/lib/hudson/project/config-concurrentBuild_es.properties b/core/src/main/resources/lib/hudson/project/config-concurrentBuild_es.properties
new file mode 100644
index 0000000000000000000000000000000000000000..cb11ba9c5f39f21218e43de52274e1bf3cee2afe
--- /dev/null
+++ b/core/src/main/resources/lib/hudson/project/config-concurrentBuild_es.properties
@@ -0,0 +1,23 @@
+# The MIT License
+#
+# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Eric Lefevre-Ardant
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
+title.concurrentbuilds=Lanzar ejecuciones concurrentes en caso de ser necesario
diff --git a/core/src/main/resources/lib/hudson/project/config-concurrentBuild_fr.properties b/core/src/main/resources/lib/hudson/project/config-concurrentBuild_fr.properties
new file mode 100644
index 0000000000000000000000000000000000000000..dfc65cfb96af58f1938a2c4a7938bcf122bf0641
--- /dev/null
+++ b/core/src/main/resources/lib/hudson/project/config-concurrentBuild_fr.properties
@@ -0,0 +1,23 @@
+# The MIT License
+#
+# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Eric Lefevre-Ardant
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
+title.concurrentbuilds=Ex\u00E9cuter des builds simultan\u00E9ment si n\u00E9cessaire
diff --git a/core/src/main/resources/lib/hudson/project/config-concurrentBuild_it.properties b/core/src/main/resources/lib/hudson/project/config-concurrentBuild_it.properties
new file mode 100644
index 0000000000000000000000000000000000000000..8d439a6b415a223a76266f680d91f509c18c8b0c
--- /dev/null
+++ b/core/src/main/resources/lib/hudson/project/config-concurrentBuild_it.properties
@@ -0,0 +1,23 @@
+# The MIT License
+#
+# Copyright (c) 2004-2010, Sun Microsystems, Inc.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
+title.concurrentbuilds=Esegui build in concorrenza se necessario (beta)
diff --git a/core/src/main/resources/lib/hudson/project/config-concurrentBuild_pt_BR.properties b/core/src/main/resources/lib/hudson/project/config-concurrentBuild_pt_BR.properties
new file mode 100644
index 0000000000000000000000000000000000000000..8eb2b0d000a5750f5203919f5fc4a6e48e401df9
--- /dev/null
+++ b/core/src/main/resources/lib/hudson/project/config-concurrentBuild_pt_BR.properties
@@ -0,0 +1,23 @@
+# The MIT License
+#
+# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Reginaldo L. Russinholi, Cleiber Silva
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
+title.concurrentbuilds=Execute as construcoes se necessario
diff --git a/core/src/main/resources/lib/hudson/project/config-concurrentBuild_zh_CN.properties b/core/src/main/resources/lib/hudson/project/config-concurrentBuild_zh_CN.properties
new file mode 100644
index 0000000000000000000000000000000000000000..952445912ca913faa025676c9664292f190f8180
--- /dev/null
+++ b/core/src/main/resources/lib/hudson/project/config-concurrentBuild_zh_CN.properties
@@ -0,0 +1,23 @@
+# The MIT License
+#
+# Copyright (c) 2004-2010, Sun Microsystems, Inc.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
+title.concurrentbuilds=\u5728\u5FC5\u8981\u7684\u65F6\u5019\u5E76\u53D1\u6784\u5EFA
diff --git a/pom.xml b/pom.xml
index 8e8ddfffb96649d128fc2276c01cec450bc9a52f..00e339e793db4c94b5f9c3671b255737c5c77899 100644
--- a/pom.xml
+++ b/pom.xml
@@ -189,7 +189,7 @@ THE SOFTWARE.
org.jenkins-ci.main
remoting
- 2.14
+ 2.13
diff --git a/test/src/test/groovy/hudson/matrix/MatrixProjectTest.groovy b/test/src/test/groovy/hudson/matrix/MatrixProjectTest.groovy
index 9e8ede88491805dd123b0e2f2f804cdb7afa9270..2285d282dd10b2688b1b4f9f9d4dd6108371939a 100644
--- a/test/src/test/groovy/hudson/matrix/MatrixProjectTest.groovy
+++ b/test/src/test/groovy/hudson/matrix/MatrixProjectTest.groovy
@@ -53,6 +53,9 @@ import hudson.model.FileParameterDefinition
import hudson.model.Cause.LegacyCodeCause
import hudson.model.ParametersAction
import hudson.model.FileParameterValue
+import org.jvnet.hudson.test.MockBuilder
+import org.jvnet.hudson.test.SleepBuilder
+import java.util.concurrent.CountDownLatch
/**
*
@@ -327,4 +330,41 @@ public class MatrixProjectTest extends HudsonTestCase {
assertBuildStatusSuccess(f.get(10,TimeUnit.SECONDS));
}
+
+ /**
+ * Verifies that the concurrent build feature works, and makes sure
+ * that each gets its own unique workspace.
+ */
+ void testConcurrentBuild() {
+ jenkins.numExecutors = 10
+ jenkins.updateComputerList()
+
+ def p = createMatrixProject()
+ p.axes = new AxisList(new TextAxis("foo","1","2"))
+ p.concurrentBuild = true;
+ def latch = new CountDownLatch(4)
+ def dirs = Collections.synchronizedSet(new HashSet())
+
+ p.buildersList.add(new TestBuilder() {
+ boolean perform(AbstractBuild, ?> build, Launcher launcher, BuildListener listener) {
+ dirs << build.workspace.getRemote()
+ def marker = build.workspace.child("file")
+ def name = build.fullDisplayName
+ marker.write(name,"UTF-8")
+ latch.countDown()
+ latch.await()
+ assertEquals(name,marker.readToString())
+ return true
+ }
+ })
+
+ // should have gotten all unique names
+ def f1 = p.scheduleBuild2(0)
+ // get one going
+ Thread.sleep(1000)
+ def f2 = p.scheduleBuild2(0)
+ [f1,f2]*.get().each{ assertBuildStatusSuccess(it)}
+
+ assertEquals 4, dirs.size()
+ }
}