diff --git a/core/src/main/java/hudson/Functions.java b/core/src/main/java/hudson/Functions.java
index 8b94d14a79..8badbecf04 100644
--- a/core/src/main/java/hudson/Functions.java
+++ b/core/src/main/java/hudson/Functions.java
@@ -55,6 +55,7 @@ import hudson.util.Secret;
import hudson.views.MyViewsTabBar;
import hudson.views.ViewsTabBar;
import hudson.widgets.RenderOnDemandClosure;
+import jenkins.model.GlobalConfiguration;
import jenkins.model.Jenkins;
import org.acegisecurity.providers.anonymous.AnonymousAuthenticationToken;
import org.apache.commons.jelly.JellyContext;
@@ -71,6 +72,7 @@ import org.kohsuke.stapler.StaplerRequest;
import org.kohsuke.stapler.StaplerResponse;
import org.kohsuke.stapler.jelly.InternationalizedStringExpression.RawHtmlArgument;
+import javax.management.modelmbean.DescriptorSupport;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
@@ -730,21 +732,58 @@ public class Functions {
/**
* Gets all the descriptors sorted by their inheritance tree of {@link Describable}
* so that descriptors of similar types come nearby.
+ *
+ *
+ * We sort them by {@link Extension#ordinal()} but only for {@link GlobalConfiguration}s,
+ * as the value is normally used to compare similar kinds of extensions, and we needed
+ * {@link GlobalConfiguration}s to be able to position themselves in a layer above.
+ * This however creates some asymmetry between regular {@link Descriptor}s and {@link GlobalConfiguration}s.
+ * Perhaps it is better to introduce another annotation element? But then,
+ * extensions shouldn't normally concern themselves about ordering too much, and the only reason
+ * we needed this for {@link GlobalConfiguration}s are for backward compatibility.
*/
public static Collection getSortedDescriptorsForGlobalConfig() {
- Map r = new TreeMap();
- for (Descriptor> d : Jenkins.getInstance().getExtensionList(Descriptor.class)) {
- if (d.getGlobalConfigPage()==null) continue;
- r.put(buildSuperclassHierarchy(d.clazz, new StringBuilder()).toString(),d);
+ class Tag implements Comparable {
+ double ordinal;
+ String hierarchy;
+ Descriptor d;
+
+ Tag(double ordinal, Descriptor d) {
+ this.ordinal = ordinal;
+ this.d = d;
+ this.hierarchy = buildSuperclassHierarchy(d.clazz, new StringBuilder()).toString();
+ }
+
+ private StringBuilder buildSuperclassHierarchy(Class c, StringBuilder buf) {
+ Class sc = c.getSuperclass();
+ if (sc!=null) buildSuperclassHierarchy(sc,buf).append(':');
+ return buf.append(c.getName());
+ }
+
+ public int compareTo(Tag that) {
+ int r = Double.compare(this.ordinal, that.ordinal);
+ if (r!=0) return -r; // descending for ordinal
+ return this.hierarchy.compareTo(that.hierarchy);
+ }
}
- return r.values();
+
+ ExtensionList exts = Jenkins.getInstance().getExtensionList(Descriptor.class);
+ List r = new ArrayList(exts.size());
+
+ for (ExtensionComponent c : exts.getComponents()) {
+ Descriptor d = c.getInstance();
+ if (d.getGlobalConfigPage()==null) continue;
+
+ r.add(new Tag(d instanceof GlobalConfiguration ? c.ordinal() : 0, d));
+ }
+ Collections.sort(r);
+
+ List answer = new ArrayList(r.size());
+ for (Tag d : r) answer.add(d.d);
+
+ return answer;
}
- private static StringBuilder buildSuperclassHierarchy(Class c, StringBuilder buf) {
- Class sc = c.getSuperclass();
- if (sc!=null) buildSuperclassHierarchy(sc,buf).append(':');
- return buf.append(c.getName());
- }
/**
* Computes the path to the icon of the given action
diff --git a/core/src/main/java/jenkins/model/GlobalCloudConfiguration.java b/core/src/main/java/jenkins/model/GlobalCloudConfiguration.java
new file mode 100644
index 0000000000..afe4c97ba6
--- /dev/null
+++ b/core/src/main/java/jenkins/model/GlobalCloudConfiguration.java
@@ -0,0 +1,29 @@
+package jenkins.model;
+
+import hudson.Extension;
+import hudson.slaves.Cloud;
+import net.sf.json.JSONObject;
+import org.kohsuke.stapler.StaplerRequest;
+
+import java.io.IOException;
+
+/**
+ * Adds the {@link Cloud} configuration to the system config page.
+ *
+ *
+ * This object just acts as a proxy to configure {@link Jenkins#clouds}
+ *
+ * @author Kohsuke Kawaguchi
+ */
+@Extension(ordinal=-100) // historically this was placed at the very end of the configuration page
+public class GlobalCloudConfiguration extends GlobalConfiguration {
+ @Override
+ public boolean configure(StaplerRequest req, JSONObject json) throws FormException {
+ try {
+ Jenkins.getInstance().clouds.rebuildHetero(req,json, Cloud.all(), "cloud");
+ return true;
+ } catch (IOException e) {
+ throw new FormException(e,"clouds");
+ }
+ }
+}
diff --git a/core/src/main/java/jenkins/model/Jenkins.java b/core/src/main/java/jenkins/model/Jenkins.java
index 033f4efd6e..b9fc57c0fc 100644
--- a/core/src/main/java/jenkins/model/Jenkins.java
+++ b/core/src/main/java/jenkins/model/Jenkins.java
@@ -2519,8 +2519,6 @@ public class Jenkins extends AbstractCIBase implements ModifiableItemGroupCe JDK n''existe pas
-statsBlurb=\
- Aidez-nous à améliorer Jenkins en envoyant sous forme anonyme les statistiques d''utilisation et les rapports de crash au projet Jenkins.
-\#\ of\ executors=Nb d''exécuteurs
-Labels=Libellés
Cloud=
Add\ a\ new\ cloud=Ajouter un nouveau cloud
-Global\ properties=Propriétés globales
-LOADING=CHARGEMENT
+
diff --git a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_hu.properties b/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_hu.properties
deleted file mode 100644
index ba13d6e309..0000000000
--- a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_hu.properties
+++ /dev/null
@@ -1,25 +0,0 @@
-# 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.
-
-#\ of\ executors=A v\u00E9grehajt\u00F3k sz\u00E1ma
-Save=Ment\u00E9s
-System\ Message=Rendszer\u00FCzenet
diff --git a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_ja.properties b/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_ja.properties
index 58fcc34701..0e17dc3e48 100644
--- a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_ja.properties
+++ b/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_ja.properties
@@ -20,31 +20,7 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
-Configure\ System=\u30b7\u30b9\u30c6\u30e0\u306e\u8a2d\u5b9a
-Home\ directory=\u30db\u30fc\u30e0\u30c7\u30a3\u30ec\u30af\u30c8\u30ea
-System\ Message=\u30b7\u30b9\u30c6\u30e0\u30e1\u30c3\u30bb\u30fc\u30b8
-\#\ of\ executors=\u540c\u6642\u30d3\u30eb\u30c9\u6570
-Quiet\ period=\u5f85\u6a5f\u6642\u9593
-SCM\ checkout\ retry\ count=SCM\u30c1\u30a7\u30c3\u30af\u30a2\u30a6\u30c8 \u30ea\u30c8\u30e9\u30a4\u6570
-Enable\ security=\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u3092\u6709\u52b9\u5316
-TCP\ port\ for\ JNLP\ slave\ agents=JNLP\u30b9\u30ec\u30fc\u30d6\u7528TCP\u30dd\u30fc\u30c8\u756a\u53f7
-Fixed=\u56fa\u5b9a
-Random=\u30e9\u30f3\u30c0\u30e0
-Disable=\u306a\u3057
-Markup\ Formatter=\u30de\u30fc\u30af\u30a2\u30c3\u30d7\u8a18\u6cd5
-Access\ Control=\u30a2\u30af\u30bb\u30b9\u5236\u5fa1
-Security\ Realm=\u30e6\u30fc\u30b6\u30fc\u60c5\u5831
-Authorization=\u6a29\u9650\u7ba1\u7406
-Labels=\u30e9\u30d9\u30eb
-Save=\u4fdd\u5b58
-statsBlurb=\
- \u5229\u7528\u72b6\u6cc1\u3068\u30af\u30e9\u30c3\u30b7\u30e5\u30ec\u30dd\u30fc\u30c8\u3092Jenkins\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b\u533f\u540d\u3067\u5831\u544a
-Global\ properties=\u30b0\u30ed\u30fc\u30d0\u30eb \u30d7\u30ed\u30d1\u30c6\u30a3
-Prevent\ Cross\ Site\ Request\ Forgery\ exploits=CSRF\u5bfe\u7b56
-Default\ view=\u30c7\u30d5\u30a9\u30eb\u30c8\u30d3\u30e5\u30fc
Cloud=\u30af\u30e9\u30a6\u30c9
Add\ a\ new\ cloud=\u8ffd\u52a0
Delete\ cloud=\u524a\u9664
-Crumb\ Algorithm=Crumb \u30a2\u30eb\u30b4\u30ea\u30ba\u30e0
-Crumbs=Crumbs
-LOADING=\u30ed\u30fc\u30c9\u4e2d...
+
diff --git a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_nl.properties b/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_nl.properties
deleted file mode 100644
index 4423ce4be0..0000000000
--- a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_nl.properties
+++ /dev/null
@@ -1,58 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, id:sorokh
-#
-# 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.
-
-Global\ properties=Globale eigenschappen
-Home\ directory=Jenkins hoofdfolder
-System\ Message=Systeemboodschap
-\#\ of\ executors=# Uitvoerders
-Prevent\ Cross\ Site\ Request\ Forgery\ exploits=Ga Cross-site Request Forgery exploits tegen
-Quiet\ period=Rustperiode
-Enable\ security=Activeer beveiliging
-TCP\ port\ for\ JNLP\ slave\ agents=TCP-poort voor JNLP-slaafnodes
-Fixed=Vast
-Random=Willekeurig
-Crumb\ Algorithm=Kruimelalgoritme
-Crumbs=Kruimels
-Default\ view=Standaard view
-Disable=Gedesactiveerd
-Access\ Control=Toegangscontrole
-Security\ Realm=Beveiligingszone
-Authorization=Toelatingen
-Master/Slave\ Support=Hoofd/Slaaf-node ondersteuning
-Slaves=Slaafnodes
-slaves.description=\
- Lijst van de slaafnodes geregistreerd op deze Jenkins hoofdnode. Jobs kunnen zo \
- geconfigureerd worden dat ze uitgevoerd worden op slaafnodes. Op deze manier kan \
- uw Jenkins hoofdnode omgaan met een grote hoeveelheid jobs.
-name=Naam
-launch\ command=Lanceer commando
-description=Omschrijving
-remote\ FS\ root=Hoofdfolder op het bestandssyteem op afstand
-statsBlurb=Help Jenkins verbeteren door het opsturen van anonieme gebruiksstatistieken en crashrapporten naar het Jenkinsproject.
-usage=Gebruik
-labels=Merktekens
-JDKs=JDKs
-JDK\ installations=Installatie JDKs
-List\ of\ JDK\ installations\ on\ this\ system=Lijst van de ge\u00EFnstalleerde JDKs op dit systeem
-no.such.JDK=JDK bestaat niet op dit system
-SCM\ checkout\ retry\ count=SCM checkout pogingen
-Save=Bewaar
diff --git a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_pt_BR.properties b/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_pt_BR.properties
index 2a07a48b78..b27c7d802c 100644
--- a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_pt_BR.properties
+++ b/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_pt_BR.properties
@@ -20,31 +20,6 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
-Home\ directory=Diret\u00f3rio Home
-System\ Message=Mensagem do Sistema
-\#\ of\ executors=N\u00famero de executores
-Quiet\ period=Per\u00edodo de sil\u00eancio
-Enable\ security=Habilitar seguranca
-TCP\ port\ for\ JNLP\ slave\ agents=Porta TCP para agentes slave JNLP
-Fixed=Fixo
-Random=Rand\u00f5mico
-Disable=Desabilitar
-Access\ Control=Control de Acesso
-Security\ Realm=Dom\u00ednio (Realm) de Seguran\u00e7a
-Authorization=Autoriza\u00e7\u00e3o
-
-Save=Salvar
-Prevent\ Cross\ Site\ Request\ Forgery\ exploits= Prevenir site contra invas\u00f5es
-Default\ view= View padr\u00e3o
Delete\ cloud= Apagar cloud
-Labels=Etiquetas
-Crumbs=Fra\u00e7\u00e3o
-SCM\ checkout\ retry\ count= Repetir contagem do checkout
-LOADING=Carregando
-Global\ properties=Propriedades Globais
Cloud=Nuvem
-# \
-# Help make Jenkins better by sending anonymous usage statistics and crash reports to the Jenkins project.
-statsBlurb=Ajude o Jenkins a melhorar enviando relat\u00f3rios an\u00f5nimos de erro
-Crumb\ Algorithm=Algoritimo CRUMB
Add\ a\ new\ cloud=Adicionar uma nova nuvem
diff --git a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_ru.properties b/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_ru.properties
deleted file mode 100644
index 89592e3022..0000000000
--- a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_ru.properties
+++ /dev/null
@@ -1,45 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Mike Salnikov
-#
-# 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.
-
-Global\ properties=\u0413\u043B\u043E\u0431\u0430\u043B\u044C\u043D\u044B\u0435 \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438
-Home\ directory=\u0414\u043e\u043c\u0430\u0448\u043d\u044f\u044f \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f
-System\ Message=\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b
-Quiet\ period=\u0417\u0430\u0434\u0435\u0440\u0436\u043a\u0430 \u043f\u0435\u0440\u0435\u0434 \u0441\u0431\u043e\u0440\u043a\u043e\u0439
-Enable\ security=\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0437\u0430\u0449\u0438\u0442\u0443
-TCP\ port\ for\ JNLP\ slave\ agents=TCP \u043f\u043e\u0440\u0442 \u0434\u043b\u044f JNLP \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u043d\u044b\u0445 \u0430\u0433\u0435\u043d\u0442\u043e\u0432
-Fixed=\u0421\u0442\u0430\u0442\u0438\u0447\u043d\u044b\u0439
-Random=\u0421\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0439
-Default\ view=\u0412\u0438\u0434 \u043F\u043E-\u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E
-Disable=\u0417\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d
-#\ of\ executors=\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0441\u0431\u043E\u0440\u0449\u0438\u043A\u043E\u0432
-Access\ Control=\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0430
-SCM\ checkout\ retry\ count=\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u043F\u043E\u043F\u044B\u0442\u043E\u043A \u043E\u0431\u0440\u0430\u0449\u0435\u043D\u0438\u044F \u043A SCM \u0434\u043B\u044F \u0432\u044B\u0433\u0440\u0443\u0437\u043A\u0438 \u043F\u0440\u043E\u0435\u043A\u0442\u043E\u0432
-Save=\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C
-Security\ Realm=\u041e\u0431\u043b\u0430\u0441\u0442\u044c \u0437\u0430\u0449\u0438\u0442\u044b (realm)
-Authorization=\u0410\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f
-description=\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435
-JDKs=JDK
-JDK\ installations=\u0418\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u0438 JDK
-Labels=\u041C\u0435\u0442\u043A\u0438
-List\ of\ JDK\ installations\ on\ this\ system=\u0421\u043f\u0438\u0441\u043e\u043a JDK \u0438\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435
-no.such.JDK=\u0422\u0430\u043a\u043e\u0433\u043e JDK \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442
-statsBlurb=\u0423\u0447\u0430\u0441\u0442\u0432\u043E\u0432\u0430\u0442\u044C \u0432 \u0443\u043B\u0443\u0447\u0448\u0435\u043D\u0438\u0438 Jenkins, \u043F\u043E\u0441\u044B\u043B\u0430\u044F \u0430\u043D\u043E\u043D\u0438\u043C\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435 \u043F\u043E \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u044E \u0438 \u043E\u0442\u0447\u0435\u0442\u044B \u043E \u0441\u0431\u043E\u044F\u0445 Jenkins.
diff --git a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_sv_SE.properties b/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_sv_SE.properties
deleted file mode 100644
index 2b691bc376..0000000000
--- a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_sv_SE.properties
+++ /dev/null
@@ -1,27 +0,0 @@
-# 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.
-
-Default\ view=Standardvy
-Disable=Inaktivera
-Global\ properties=Globala egenskaper
-Labels=Etiketter
-statsBlurb=Hj\u00E4lp g\u00F6ra Jenkins b\u00E4ttre genom att skicka anonyma anv\u00E4ndningsstatistik och kraschrapporter till Jenkins projektet.
diff --git a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_tr.properties b/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_tr.properties
deleted file mode 100644
index ae213057c8..0000000000
--- a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_tr.properties
+++ /dev/null
@@ -1,50 +0,0 @@
-# The MIT License
-#
-# Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Oguz Dag
-#
-# 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.
-
-slaves.description=\
- Bu master Jenkins'a kaydolmu\u015f slave nodlar\u0131n listesidir. B\u00fcy\u00fck i\u015flerin idare edilebilmesi i\u00e7in i\u015fler\
- slave nodlarda \u00e7al\u0131\u015ft\u0131r\u0131lmak \u00fczere ayarlanabilir.
-no.such.JDK=Herhangi bir JDK yok
-Home\ directory=Ana dizin
-System\ Message=Sistem Mesaj\u0131
-\#\ of\ executors=Yap\u0131land\u0131rma i\u015flemleri say\u0131s\u0131
-Quiet\ period=Sessiz periyot
-Enable\ security=G\u00fcvenli\u011fi devreye al
-TCP\ port\ for\ JNLP\ slave\ agents=JNLP Slave ajanlar\u0131 i\u00e7in TCP portu
-Fixed=Sabit
-Random=Rastgele
-Disable=Devre d\u0131\u015f\u0131 b\u0131rak
-Access\ Control=Eri\u015fim Kontrol\u00fc
-Security\ Realm=G\u00fcvenlik Alan\u0131
-Authorization=Yetkilendirme
-Master/Slave\ Support=Master/Slave Deste\u011fi
-Slaves=Slave''ler
-name=isim
-launch\ command=komut \u00e7al\u0131\u015ft\u0131r
-description=a\u00e7\u0131klama
-remote\ FS\ root=Uzak FS k\u00f6k dizini
-usage=kullan\u0131m
-labels=etiketler
-JDKs=JDK'lar
-JDK\ installations=JDK kurulumlar\u0131
-List\ of\ JDK\ installations\ on\ this\ system=Sistemdeki JDK kurulumlar\u0131n\u0131n listesi
-Save=Kaydet
diff --git a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_zh_CN.properties b/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_zh_CN.properties
index 717bc4e684..cb14161756 100644
--- a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_zh_CN.properties
+++ b/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_zh_CN.properties
@@ -20,26 +20,6 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
-\#\ of\ executors=\u6267\u884c\u8005\u6570\u91cf
-Labels=\u6807\u8bb0
-Home\ directory=\u4e3b\u76ee\u5f55
-Quiet\ period=\u751f\u6210\u524d\u7b49\u5f85\u65f6\u95f4
-Enable\ security=\u542f\u7528\u5b89\u5168
-TCP\ port\ for\ JNLP\ slave\ agents=JNLP\u8282\u70b9\u4ee3\u7406\u7684TCP\u7aef\u53e3
-Fixed=\u6307\u5b9a\u7aef\u53e3
-Random=\u968f\u673a\u9009\u53d6
-Disable=\u7981\u7528
-Access\ Control=\u8bbf\u95ee\u63a7\u5236
-Security\ Realm=\u5b89\u5168\u57df
-Authorization=\u6388\u6743\u7b56\u7565
-Prevent\ Cross\ Site\ Request\ Forgery\ exploits=\u9632\u6b62\u8de8\u7ad9\u70b9\u8bf7\u6c42\u4f2a\u9020
-SCM\ checkout\ retry\ count=SCM\u7b7e\u51fa\u91cd\u8bd5\u6b21\u6570
-System\ Message=\u7cfb\u7edf\u6d88\u606f
-
-Global\ properties=\u5168\u5c40\u5c5e\u6027
Cloud=\u4e91
Add\ a\ new\ cloud=\u65b0\u589e\u4e00\u4e2a\u4e91
-JDKs=JDK\u5149\u5b50
-JDK\ installations=JDK\u5b9e\u4f8b
-List\ of\ JDK\ installations\ on\ this\ system=\u7cfb\u7edfJDK\u5b9e\u4f8b\u5217\u8868
diff --git a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_zh_TW.properties b/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_zh_TW.properties
deleted file mode 100644
index fd377a0ced..0000000000
--- a/core/src/main/resources/jenkins/model/GlobalCloudConfiguration/config_zh_TW.properties
+++ /dev/null
@@ -1,26 +0,0 @@
-# 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.
-
-Access\ Control=\u5B58\u53D6\u63A7\u5236
-Random=\u96A8\u6A5F
-Save=\u5132\u5B58
-System\ Message=\u7CFB\u7D71\u8A0A\u606F
diff --git a/core/src/main/resources/jenkins/model/Jenkins/configure.jelly b/core/src/main/resources/jenkins/model/Jenkins/configure.jelly
index 20706a4a85..e807f07ca3 100644
--- a/core/src/main/resources/jenkins/model/Jenkins/configure.jelly
+++ b/core/src/main/resources/jenkins/model/Jenkins/configure.jelly
@@ -186,18 +186,6 @@ THE SOFTWARE.
-
-
-
-
-
-
-
-