From 00956ff9dad31897c84e5d50466b3904684006df Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Fri, 7 Jul 2017 19:01:01 -0400 Subject: [PATCH 001/109] [JENKINS-39738, JENKINS-43668] - Pick up SSHD module including sshd-core 1.6.0 (#2853) * Pick up SSHD module including sshd-core 1.4.0. * [FIXED JENKINS-39738] Picking up https://github.com/jenkinsci/sshd-module/commit/bb6963453086edef4e600abb2740182cd2f4ade0 * Picking up Apache SSHD 1.6.0 & Jenkins sshd module 2.0. --- cli/pom.xml | 2 +- cli/src/main/java/hudson/cli/SSHCLI.java | 2 +- test/src/test/java/hudson/cli/CLITest.java | 5 +---- war/pom.xml | 2 +- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 4e0636df98..6d97d96729 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -55,7 +55,7 @@ org.apache.sshd sshd-core - 1.2.0 + 1.6.0 true diff --git a/cli/src/main/java/hudson/cli/SSHCLI.java b/cli/src/main/java/hudson/cli/SSHCLI.java index 023a304e7f..bdd6c2beb5 100644 --- a/cli/src/main/java/hudson/cli/SSHCLI.java +++ b/cli/src/main/java/hudson/cli/SSHCLI.java @@ -47,9 +47,9 @@ import org.apache.sshd.client.keyverifier.KnownHostsServerKeyVerifier; import org.apache.sshd.client.keyverifier.ServerKeyVerifier; import org.apache.sshd.client.session.ClientSession; import org.apache.sshd.common.future.WaitableFuture; -import org.apache.sshd.common.util.SecurityUtils; import org.apache.sshd.common.util.io.NoCloseInputStream; import org.apache.sshd.common.util.io.NoCloseOutputStream; +import org.apache.sshd.common.util.security.SecurityUtils; /** * Implements SSH connection mode of {@link CLI}. diff --git a/test/src/test/java/hudson/cli/CLITest.java b/test/src/test/java/hudson/cli/CLITest.java index 41d6756a32..cd0f3b9a66 100644 --- a/test/src/test/java/hudson/cli/CLITest.java +++ b/test/src/test/java/hudson/cli/CLITest.java @@ -26,7 +26,6 @@ package hudson.cli; import com.gargoylesoftware.htmlunit.WebResponse; import com.google.common.collect.Lists; -import hudson.Functions; import hudson.Launcher; import hudson.Proc; import hudson.model.FreeStyleProject; @@ -48,6 +47,7 @@ import jenkins.model.Jenkins; import org.apache.commons.io.FileUtils; import org.apache.commons.io.IOUtils; import org.apache.commons.io.output.TeeOutputStream; +import org.apache.sshd.common.util.io.ModifiableFileWatcher; import static org.hamcrest.Matchers.*; import org.jenkinsci.main.modules.cli.auth.ssh.UserPropertyImpl; import org.jenkinsci.main.modules.sshd.SSHD; @@ -102,11 +102,8 @@ public class CLITest { } catch (IOException x) { assumeNoException("Sometimes on Windows KnownHostsServerKeyVerifier.acceptIncompleteHostKeys says WARNING: Failed (FileSystemException) to reload server keys from …\\\\.ssh\\\\known_hosts: … Incorrect function.", x); } - /* TODO impossible to do this until the bundled sshd module uses a sufficiently new version of sshd-core: assumeThat("or on Windows DefaultKnownHostsServerKeyVerifier.reloadKnownHosts says invalid file permissions: Owner violation (Administrators)", ModifiableFileWatcher.validateStrictConfigFilePermissions(known_hosts.toPath()), nullValue()); - */ - assumeFalse(Functions.isWindows()); // TODO can remove when above check is restored return home; } diff --git a/war/pom.xml b/war/pom.xml index c350066e2c..74736e0a77 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -134,7 +134,7 @@ THE SOFTWARE. org.jenkins-ci.modules sshd - 1.11 + 2.0 org.jenkins-ci.ui From c064d88a3b418e4cc6e3a75b4faa7db4c69880f2 Mon Sep 17 00:00:00 2001 From: Oleg Nenashev Date: Sun, 9 Jul 2017 11:56:40 +0200 Subject: [PATCH 002/109] [JENKINS-34914] - Prevent NPE in Jenkins#getRootURL() when the nstance is not fully loaded --- core/src/main/java/jenkins/model/Jenkins.java | 15 ++++++++++++--- .../model/JenkinsLocationConfiguration.java | 6 ++++++ 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/jenkins/model/Jenkins.java b/core/src/main/java/jenkins/model/Jenkins.java index 64c297c1bd..67fa8723f8 100644 --- a/core/src/main/java/jenkins/model/Jenkins.java +++ b/core/src/main/java/jenkins/model/Jenkins.java @@ -2326,12 +2326,21 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve * It is done in this order so that it can work correctly even in the face * of a reverse proxy. * - * @return null if this parameter is not configured by the user and the calling thread is not in an HTTP request; otherwise the returned URL will always have the trailing {@code /} + * @return {@code null} if this parameter is not configured by the user and the calling thread is not in an HTTP request; + * otherwise the returned URL will always have the trailing {@code /} + * @throws IllegalStateException {@link JenkinsLocationConfiguration} cannot be retrieved. + * Jenkins instance may be not ready, or there is an extension loading glitch. * @since 1.66 * @see Hyperlinks in HTML */ - public @Nullable String getRootUrl() { - String url = JenkinsLocationConfiguration.get().getUrl(); + public @Nullable String getRootUrl() throws IllegalStateException { + final JenkinsLocationConfiguration config = JenkinsLocationConfiguration.get(); + if (config == null) { + // Try to get standard message if possible + final Jenkins j = Jenkins.getInstance(); + throw new IllegalStateException("Jenkins instance " + j + " has been successfully initialized, but JenkinsLocationConfiguration is undefined."); + } + String url = config.getUrl(); if(url!=null) { return Util.ensureEndsWith(url,"/"); } diff --git a/core/src/main/java/jenkins/model/JenkinsLocationConfiguration.java b/core/src/main/java/jenkins/model/JenkinsLocationConfiguration.java index 981ef9a3a6..b7390ad3d3 100644 --- a/core/src/main/java/jenkins/model/JenkinsLocationConfiguration.java +++ b/core/src/main/java/jenkins/model/JenkinsLocationConfiguration.java @@ -41,6 +41,12 @@ public class JenkinsLocationConfiguration extends GlobalConfiguration { // just to suppress warnings private transient String charset,useSsl; + /** + * Gets local configuration. + * + * @return {@code null} if the {@link GlobalConfiguration#all()} list does not contain this extension. + * Most likely it means that the Jenkins instance has not been fully loaded yet. + */ public static @CheckForNull JenkinsLocationConfiguration get() { return GlobalConfiguration.all().get(JenkinsLocationConfiguration.class); } From cf0183d1ed1e999a04a1445b2cd369b58e1268bf Mon Sep 17 00:00:00 2001 From: Nikolas Falco Date: Sun, 9 Jul 2017 19:36:05 +0200 Subject: [PATCH 003/109] [JENKINS-14807] Fix path separator when EnvVars overrides variable like PATH+XYZ The getEnvironment(Node, TaskListener) now returns an environment setup correctly with the platform value of the computer node where the job is executed. --- core/src/main/java/hudson/model/Job.java | 12 ++-- core/src/test/java/hudson/model/JobTest.java | 58 +++++++++++++++++++- 2 files changed, 64 insertions(+), 6 deletions(-) diff --git a/core/src/main/java/hudson/model/Job.java b/core/src/main/java/hudson/model/Job.java index 0575724d99..b089d70635 100644 --- a/core/src/main/java/hudson/model/Job.java +++ b/core/src/main/java/hudson/model/Job.java @@ -374,13 +374,15 @@ public abstract class Job, RunT extends Run job = Mockito.mock(FreeStyleProject.class); + Mockito.when(job.getEnvironment(Mockito.any(Node.class), Mockito.any(TaskListener.class))).thenCallRealMethod(); + Mockito.when(job.getCharacteristicEnvVars()).thenReturn(emptyEnv); + + Computer c = Mockito.mock(Computer.class); + // ensure that PATH variable exists to perform the path separator join + if (!slaveEnv.containsKey("PATH")) { + slaveEnv.put("PATH", "/bin/bash"); + } + Mockito.when(c.getEnvironment()).thenReturn(slaveEnv); + Mockito.when(c.buildEnvironment(Mockito.any(TaskListener.class))).thenReturn(emptyEnv); + + Node node = PowerMockito.mock(Node.class); + PowerMockito.doReturn(c).when(node).toComputer(); + + EnvVars env = job.getEnvironment(node, null); + String path = "/test"; + env.override("PATH+TEST", path); + + assertThat("The contributed PATH was not joined using the path separator defined in slave node", // + env.get("PATH"), // + CoreMatchers.containsString(path + (slavePlatform == Platform.WINDOWS ? ';' : ':'))); + } + } From a0118d359c16d3bd18b783a92f0e992b5e7b713e Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Mon, 10 Jul 2017 07:23:23 -0700 Subject: [PATCH 004/109] [maven-release-plugin] prepare release jenkins-2.69 --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 6d97d96729..5bad281e94 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.69-SNAPSHOT + 2.69 cli diff --git a/core/pom.xml b/core/pom.xml index 6d1fa1704e..98549ebd61 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.69-SNAPSHOT + 2.69 jenkins-core diff --git a/pom.xml b/pom.xml index 2e56f450ff..1a1f20530f 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.69-SNAPSHOT + 2.69 pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - HEAD + jenkins-2.69 diff --git a/test/pom.xml b/test/pom.xml index 123d949507..da5e89a860 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.69-SNAPSHOT + 2.69 test diff --git a/war/pom.xml b/war/pom.xml index 74736e0a77..de06837e9a 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.69-SNAPSHOT + 2.69 jenkins-war From 55d34871584cd9ba3ee3a37473f37f1ab5868f9f Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Mon, 10 Jul 2017 07:23:24 -0700 Subject: [PATCH 005/109] [maven-release-plugin] prepare for next development iteration --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 5bad281e94..6a80e49c98 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.69 + 2.70-SNAPSHOT cli diff --git a/core/pom.xml b/core/pom.xml index 98549ebd61..16caeeef39 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.69 + 2.70-SNAPSHOT jenkins-core diff --git a/pom.xml b/pom.xml index 1a1f20530f..e63916c8bf 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.69 + 2.70-SNAPSHOT pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - jenkins-2.69 + HEAD diff --git a/test/pom.xml b/test/pom.xml index da5e89a860..0e631fecec 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.69 + 2.70-SNAPSHOT test diff --git a/war/pom.xml b/war/pom.xml index de06837e9a..0a2dbbb091 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.69 + 2.70-SNAPSHOT jenkins-war From 91129b81e8d5cd3904c437818ad6c36feca43218 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Mon, 10 Jul 2017 16:57:41 +1000 Subject: [PATCH 006/109] last winstone for http2 connector Signed-off-by: olivier lamy --- war/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/war/pom.xml b/war/pom.xml index 0a2dbbb091..5ac88e527b 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -93,7 +93,7 @@ THE SOFTWARE. --> org.jenkins-ci winstone - 4.0 + 4.1-SNAPSHOT test From c7e55fbd65d3b70a8c8ff6d53d79275ff9b56eb1 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Tue, 11 Jul 2017 11:42:13 +1000 Subject: [PATCH 007/109] use new executable-war to fix classloading issue with services loader Signed-off-by: olivier lamy --- war/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/war/pom.xml b/war/pom.xml index 5ac88e527b..7238479538 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -49,7 +49,7 @@ THE SOFTWARE. org.jenkins-ci executable-war - 1.35.1 + 1.36-SNAPSHOT provided From e509d27b74027eef28c830d47d9683ba6ce508b6 Mon Sep 17 00:00:00 2001 From: Daniel Beck Date: Wed, 12 Jul 2017 00:05:43 +0200 Subject: [PATCH 008/109] Show actual Jenkins version on upgrade wizard banner --- .../jenkins/install/UpgradeWizard/client-scripts.jelly | 2 +- .../jenkins/install/UpgradeWizard/client-scripts.properties | 2 +- .../install/UpgradeWizard/client-scripts_de.properties | 2 +- .../install/UpgradeWizard/client-scripts_fr.properties | 6 +++--- .../install/UpgradeWizard/client-scripts_lt.properties | 4 ++-- .../install/UpgradeWizard/client-scripts_sr.properties | 2 +- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts.jelly b/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts.jelly index a00b91d05e..6a538a59c0 100644 --- a/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts.jelly +++ b/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts.jelly @@ -65,7 +65,7 @@ %{Snooze}
- ${%msg.before} + ${%msg.before(app.VERSION)} ${%msg.link} ${%msg.after}
diff --git a/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts.properties b/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts.properties index e28a990ddf..e2834adc04 100644 --- a/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts.properties +++ b/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts.properties @@ -1,3 +1,3 @@ -msg.before=Welcome to Jenkins 2!\u0020 +msg.before=Welcome to Jenkins {0}!\u0020 msg.link=Upgrade now msg.after=\u0020to get the new features diff --git a/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_de.properties b/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_de.properties index ea8816a077..85a1ef7ccf 100644 --- a/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_de.properties +++ b/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_de.properties @@ -22,4 +22,4 @@ msg.link=Jetzt aktualisieren msg.after=\u0020um neue Funktionen zu bekommen -msg.before=Willkommen bei Jenkins 2!\u0020 +msg.before=Willkommen bei Jenkins {0}!\u0020 diff --git a/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_fr.properties b/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_fr.properties index f1c518c519..f460962d9e 100644 --- a/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_fr.properties +++ b/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_fr.properties @@ -1,3 +1,3 @@ -msg.before=Bienvenue sur Jenkins 2 !\u0020 -msg.link=Installer les nouvelles fonctionnalit\u00e9s -msg.after=\u0020pour terminer la mise \u00e0 jour +msg.before=Bienvenue sur Jenkins {0} !\u0020 +msg.link=Installer les nouvelles fonctionnalit\u00E9s +msg.after=\u0020pour terminer la mise \u00E0 jour diff --git a/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_lt.properties b/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_lt.properties index f1147d3e4f..e98ac9af72 100644 --- a/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_lt.properties +++ b/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_lt.properties @@ -1,3 +1,3 @@ -msg.before=Jus sveikina Jenkins 2!\u0020 -msg.link=\u012ediegti naujas savybes +msg.before=Jus sveikina Jenkins {0}!\u0020 +msg.link=\u012Ediegti naujas savybes msg.after=\u0020kad baigtum\u0117te atnaujinim\u0105 diff --git a/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_sr.properties b/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_sr.properties index 454c68e0dd..f397fc69a2 100644 --- a/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_sr.properties +++ b/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_sr.properties @@ -1,5 +1,5 @@ # This file is under the MIT License by authors -msg.before=\u0414\u043E\u0431\u0440\u043E\u0434\u043E\u0448\u043B\u0438 \u043D\u0430 Jenkins 2!\u0020 +msg.before=\u0414\u043E\u0431\u0440\u043E\u0434\u043E\u0448\u043B\u0438 \u043D\u0430 Jenkins {0}!\u0020 msg.link=\u0410\u0436\u0443\u0440\u0438\u0440\u0430\u0458 \u0441\u0430\u0434\u0430 msg.after=\u0020 \u0434\u0430 \u0437\u0430\u0434\u043E\u0431\u0438\u0458\u0435\u0442\u0435 \u043D\u043E\u0432\u0435 \u043E\u0434\u043B\u0438\u043A\u0435 \ No newline at end of file From 2e6e619935a3d29e1c656dddea76698f03a14d10 Mon Sep 17 00:00:00 2001 From: Daniel Beck Date: Wed, 12 Jul 2017 00:05:57 +0200 Subject: [PATCH 009/109] [JENKINS-45459] Fix 'shortened' Jenkins version in upgrade wizard --- war/src/main/js/pluginSetupWizardGui.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/war/src/main/js/pluginSetupWizardGui.js b/war/src/main/js/pluginSetupWizardGui.js index 15711c8baa..923f6a3f27 100644 --- a/war/src/main/js/pluginSetupWizardGui.js +++ b/war/src/main/js/pluginSetupWizardGui.js @@ -203,7 +203,7 @@ var createPluginSetupWizard = function(appendTarget) { }; var getJenkinsVersion = function() { - return getJenkinsVersionFull().replace(/(\d[.]\d).*/,'$1'); + return getJenkinsVersionFull().replace(/(\d[.][\d.]+).*/,'$1'); }; // call this to set the panel in the app, this performs some additional things & adds common transitions From 7df33034fe8760119789390a2b7c45a71822b966 Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Thu, 13 Jul 2017 09:09:14 -0400 Subject: [PATCH 010/109] Deleting obsolete SECURITY-144-compat exclusion. --- test/pom.xml | 8 -------- 1 file changed, 8 deletions(-) diff --git a/test/pom.xml b/test/pom.xml index 0e631fecec..a307bc70bd 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -81,14 +81,6 @@ THE SOFTWARE. org.apache.httpcomponents httpcore - - - org.jenkins-ci - SECURITY-144-compat - commons-codec commons-codec From 245ad0bdb17ebd33eca81c099e8a19a893c049e3 Mon Sep 17 00:00:00 2001 From: Curt Moore Date: Thu, 13 Jul 2017 09:52:18 -0500 Subject: [PATCH 011/109] [JENKINS-45516] Fix null pointer exception when checking for previous completed build --- core/src/main/java/hudson/model/AbstractBuild.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/hudson/model/AbstractBuild.java b/core/src/main/java/hudson/model/AbstractBuild.java index cf035f6b03..9644c2c0de 100644 --- a/core/src/main/java/hudson/model/AbstractBuild.java +++ b/core/src/main/java/hudson/model/AbstractBuild.java @@ -337,7 +337,7 @@ public abstract class AbstractBuild

,R extends Abs AbstractBuild p = getPreviousCompletedBuild(); if (upstreamCulprits) { // If we have dependencies since the last successful build, add their authors to our list - if (p.getPreviousNotFailedBuild() != null) { + if (p != null && p.getPreviousNotFailedBuild() != null) { Map depmap = p.getDependencyChanges(p.getPreviousSuccessfulBuild()); for (AbstractBuild.DependencyChange dep : depmap.values()) { From f3426ddf826108c6b943260ab6adb6690cce880c Mon Sep 17 00:00:00 2001 From: Daniel Beck Date: Sun, 16 Jul 2017 14:18:39 +0200 Subject: [PATCH 012/109] Fix @since tags --- core/src/main/java/hudson/cli/RunRangeCommand.java | 2 +- core/src/main/java/hudson/console/HudsonExceptionNote.java | 2 +- core/src/main/java/hudson/model/Computer.java | 2 +- core/src/main/java/hudson/model/Job.java | 2 +- core/src/main/java/hudson/model/listeners/ItemListener.java | 2 +- core/src/main/java/hudson/model/queue/Tasks.java | 2 +- core/src/main/java/hudson/scheduler/CronTab.java | 6 +++--- core/src/main/java/hudson/scm/SCM.java | 5 ++++- core/src/main/java/hudson/slaves/Cloud.java | 4 ++-- core/src/main/java/hudson/slaves/ComputerLauncher.java | 2 +- core/src/main/java/hudson/tools/BatchCommandInstaller.java | 4 ++-- core/src/main/java/hudson/util/PersistedList.java | 2 +- core/src/main/java/jenkins/FilePathFilter.java | 2 +- core/src/main/java/jenkins/FilePathFilterAggregator.java | 2 +- core/src/main/java/jenkins/MasterToSlaveFileCallable.java | 2 +- core/src/main/java/jenkins/ReflectiveFilePathFilter.java | 2 +- core/src/main/java/jenkins/SlaveToMasterFileCallable.java | 2 +- core/src/main/java/jenkins/model/Jenkins.java | 2 +- core/src/main/java/jenkins/model/queue/ItemDeletion.java | 2 +- core/src/main/java/jenkins/scm/RunWithSCM.java | 2 +- .../src/main/java/jenkins/security/ChannelConfigurator.java | 2 +- .../main/java/jenkins/security/MasterToSlaveCallable.java | 2 +- .../jenkins/security/NotReallyRoleSensitiveCallable.java | 2 +- core/src/main/java/jenkins/security/Roles.java | 2 +- .../main/java/jenkins/security/SlaveToMasterCallable.java | 2 +- .../java/jenkins/security/s2m/AdminCallableMonitor.java | 2 +- .../main/java/jenkins/security/s2m/AdminFilePathFilter.java | 2 +- .../java/jenkins/security/s2m/CallableDirectionChecker.java | 2 +- .../main/java/jenkins/security/s2m/CallableWhitelist.java | 2 +- .../jenkins/security/s2m/MasterKillSwitchConfiguration.java | 2 +- .../java/jenkins/security/s2m/MasterKillSwitchWarning.java | 2 +- .../main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java | 2 +- .../main/java/jenkins/slaves/JnlpSlaveAgentProtocol4.java | 4 ++-- 33 files changed, 41 insertions(+), 38 deletions(-) diff --git a/core/src/main/java/hudson/cli/RunRangeCommand.java b/core/src/main/java/hudson/cli/RunRangeCommand.java index 2ba4b3b015..ceb3ffc33f 100644 --- a/core/src/main/java/hudson/cli/RunRangeCommand.java +++ b/core/src/main/java/hudson/cli/RunRangeCommand.java @@ -10,7 +10,7 @@ import java.util.List; /** * {@link CLICommand} that acts on a series of {@link Run}s. - * @since FIXME + * @since 2.62 */ public abstract class RunRangeCommand extends CLICommand { @Argument(metaVar="JOB",usage="Name of the job to build",required=true,index=0) diff --git a/core/src/main/java/hudson/console/HudsonExceptionNote.java b/core/src/main/java/hudson/console/HudsonExceptionNote.java index 83511694ce..574bdabb22 100644 --- a/core/src/main/java/hudson/console/HudsonExceptionNote.java +++ b/core/src/main/java/hudson/console/HudsonExceptionNote.java @@ -40,7 +40,7 @@ import org.jenkinsci.Symbol; * * @author Kohsuke Kawaguchi * @since 1.349 - produces search hyperlinks to the http://stacktrace.jenkins-ci.org service - * @since TODO - does nothing due to JENKINS-42861 + * @since 2.56 - does nothing due to JENKINS-42861 * @deprecated This ConsoleNote used to provide hyperlinks to the * http://stacktrace.jenkins-ci.org/ service, which is dead now (JENKINS-42861). * This console note does nothing right now. diff --git a/core/src/main/java/hudson/model/Computer.java b/core/src/main/java/hudson/model/Computer.java index 2ac0b2a107..afad020673 100644 --- a/core/src/main/java/hudson/model/Computer.java +++ b/core/src/main/java/hudson/model/Computer.java @@ -976,7 +976,7 @@ public /*transient*/ abstract class Computer extends Actionable implements Acces * Gets the read-only snapshot view of all {@link Executor} instances including {@linkplain OneOffExecutor}s. * * @return the read-only snapshot view of all {@link Executor} instances including {@linkplain OneOffExecutor}s. - * @since TODO + * @since 2.55 */ public List getAllExecutors() { List result = new ArrayList<>(executors.size() + oneOffExecutors.size()); diff --git a/core/src/main/java/hudson/model/Job.java b/core/src/main/java/hudson/model/Job.java index 0575724d99..a904a60436 100644 --- a/core/src/main/java/hudson/model/Job.java +++ b/core/src/main/java/hudson/model/Job.java @@ -1051,7 +1051,7 @@ public abstract class Job, RunT extends Run, ExtensionPoint { * are going to provide information about check out (like SVN revision number that was checked out), be prepared * for the possibility that the check out hasn't happened yet. * - * @since FIXME + * @since 2.60 */ public void buildEnvironment(@Nonnull Run build, @Nonnull Map env) { if (build instanceof AbstractBuild) { @@ -535,6 +535,9 @@ public abstract class SCM implements Describable, ExtensionPoint { } } + /** + * @deprecated in favor of {@link #buildEnvironment(Run, Map)}. + */ @Deprecated public void buildEnvVars(AbstractBuild build, Map env) { if (Util.isOverridden(SCM.class, getClass(), "buildEnvironment", Run.class, Map.class)) { diff --git a/core/src/main/java/hudson/slaves/Cloud.java b/core/src/main/java/hudson/slaves/Cloud.java index c1bc5d7d89..6f074da3b8 100644 --- a/core/src/main/java/hudson/slaves/Cloud.java +++ b/core/src/main/java/hudson/slaves/Cloud.java @@ -80,7 +80,7 @@ import java.util.concurrent.Future; * *

Views

* - * Since version TODO, Jenkins clouds are visualized in UI. Implementations can provide top or main view + * Since version 2.64, Jenkins clouds are visualized in UI. Implementations can provide top or main view * to be presented at the top of the page or at the bottom respectively. In the middle, actions have their summary * views displayed. Actions further contribute to sidepanel with box views. All mentioned views are * optional to preserve backward compatibility. @@ -110,7 +110,7 @@ public abstract class Cloud extends Actionable implements ExtensionPoint, Descri /** * Get URL of the cloud. * - * @since TODO + * @since 2.64 * @return Jenkins relative URL. */ public @Nonnull String getUrl() { diff --git a/core/src/main/java/hudson/slaves/ComputerLauncher.java b/core/src/main/java/hudson/slaves/ComputerLauncher.java index 603df116de..9691408eeb 100644 --- a/core/src/main/java/hudson/slaves/ComputerLauncher.java +++ b/core/src/main/java/hudson/slaves/ComputerLauncher.java @@ -48,7 +48,7 @@ import org.apache.tools.ant.util.DeweyDecimal; * * * @author Stephen Connolly - * @since 24-Apr-2008 22:12:35 + * @since 1.216-ish * @see ComputerConnector */ public abstract class ComputerLauncher extends AbstractDescribableImpl implements ExtensionPoint { diff --git a/core/src/main/java/hudson/tools/BatchCommandInstaller.java b/core/src/main/java/hudson/tools/BatchCommandInstaller.java index 48b6a8d24b..f163b74a3a 100644 --- a/core/src/main/java/hudson/tools/BatchCommandInstaller.java +++ b/core/src/main/java/hudson/tools/BatchCommandInstaller.java @@ -33,8 +33,8 @@ import java.io.ObjectStreamException; /** * Installs tool via script execution of Batch script. - * Inspired by "Command installer" from the Jenkins core. - * @since 0.1 + * + * @since 1.549 */ public class BatchCommandInstaller extends AbstractCommandInstaller { diff --git a/core/src/main/java/hudson/util/PersistedList.java b/core/src/main/java/hudson/util/PersistedList.java index 17fcc66381..ae27fbfc48 100644 --- a/core/src/main/java/hudson/util/PersistedList.java +++ b/core/src/main/java/hudson/util/PersistedList.java @@ -45,7 +45,7 @@ import java.util.List; * Collection whose change is notified to the parent object for persistence. * * @author Kohsuke Kawaguchi - * @since 1.MULTISOURCE + * @since 1.333 */ public class PersistedList extends AbstractList { protected final CopyOnWriteList data = new CopyOnWriteList(); diff --git a/core/src/main/java/jenkins/FilePathFilter.java b/core/src/main/java/jenkins/FilePathFilter.java index bb6a47a9f9..501a005a5d 100644 --- a/core/src/main/java/jenkins/FilePathFilter.java +++ b/core/src/main/java/jenkins/FilePathFilter.java @@ -23,7 +23,7 @@ import java.io.File; * * @author Kohsuke Kawaguchi * @see FilePath - * @since 1.THU + * @since 1.587 / 1.580.1 */ public abstract class FilePathFilter { /** diff --git a/core/src/main/java/jenkins/FilePathFilterAggregator.java b/core/src/main/java/jenkins/FilePathFilterAggregator.java index 8bf4949e17..f81ce2f77f 100644 --- a/core/src/main/java/jenkins/FilePathFilterAggregator.java +++ b/core/src/main/java/jenkins/FilePathFilterAggregator.java @@ -15,7 +15,7 @@ import java.util.concurrent.CopyOnWriteArrayList; * * @author Kohsuke Kawaguchi * @see FilePath - * @since 1.THU + * @since 1.587 / 1.580.1 */ class FilePathFilterAggregator extends FilePathFilter { private final CopyOnWriteArrayList all = new CopyOnWriteArrayList(); diff --git a/core/src/main/java/jenkins/MasterToSlaveFileCallable.java b/core/src/main/java/jenkins/MasterToSlaveFileCallable.java index cad6813c18..18a39dedb7 100644 --- a/core/src/main/java/jenkins/MasterToSlaveFileCallable.java +++ b/core/src/main/java/jenkins/MasterToSlaveFileCallable.java @@ -7,7 +7,7 @@ import org.jenkinsci.remoting.RoleChecker; /** * {@link FileCallable}s that are meant to be only used on the master. * - * @since 1.THU + * @since 1.587 / 1.580.1 */ public abstract class MasterToSlaveFileCallable implements FileCallable { @Override diff --git a/core/src/main/java/jenkins/ReflectiveFilePathFilter.java b/core/src/main/java/jenkins/ReflectiveFilePathFilter.java index ce963943cd..f35186aebc 100644 --- a/core/src/main/java/jenkins/ReflectiveFilePathFilter.java +++ b/core/src/main/java/jenkins/ReflectiveFilePathFilter.java @@ -7,7 +7,7 @@ import java.io.File; * operations as a single string argument. * * @author Kohsuke Kawaguchi - * @since 1.THU + * @since 1.587 / 1.580.1 */ public abstract class ReflectiveFilePathFilter extends FilePathFilter { /** diff --git a/core/src/main/java/jenkins/SlaveToMasterFileCallable.java b/core/src/main/java/jenkins/SlaveToMasterFileCallable.java index bda39cff47..10071cf1f8 100644 --- a/core/src/main/java/jenkins/SlaveToMasterFileCallable.java +++ b/core/src/main/java/jenkins/SlaveToMasterFileCallable.java @@ -7,7 +7,7 @@ import org.jenkinsci.remoting.RoleChecker; /** * {@link FileCallable}s that can be executed on the master, sent by the agent. * - * @since 1.THU + * @since 1.587 / 1.580.1 */ public abstract class SlaveToMasterFileCallable implements FileCallable { @Override diff --git a/core/src/main/java/jenkins/model/Jenkins.java b/core/src/main/java/jenkins/model/Jenkins.java index 64c297c1bd..ff6be31cde 100644 --- a/core/src/main/java/jenkins/model/Jenkins.java +++ b/core/src/main/java/jenkins/model/Jenkins.java @@ -2176,7 +2176,7 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve /** * Returns the enabled and activated administrative monitors. - * @since TODO + * @since 2.64 */ public List getActiveAdministrativeMonitors() { return administrativeMonitors.stream().filter(m -> m.isEnabled() && m.isActivated()).collect(Collectors.toList()); diff --git a/core/src/main/java/jenkins/model/queue/ItemDeletion.java b/core/src/main/java/jenkins/model/queue/ItemDeletion.java index 32d55c6023..c8bef94b0b 100644 --- a/core/src/main/java/jenkins/model/queue/ItemDeletion.java +++ b/core/src/main/java/jenkins/model/queue/ItemDeletion.java @@ -41,7 +41,7 @@ import javax.annotation.concurrent.GuardedBy; /** * A {@link Queue.QueueDecisionHandler} that blocks items being deleted from entering the queue. * - * @since TODO + * @since 2.55 */ @Extension public class ItemDeletion extends Queue.QueueDecisionHandler { diff --git a/core/src/main/java/jenkins/scm/RunWithSCM.java b/core/src/main/java/jenkins/scm/RunWithSCM.java index 551716503c..dce404243a 100644 --- a/core/src/main/java/jenkins/scm/RunWithSCM.java +++ b/core/src/main/java/jenkins/scm/RunWithSCM.java @@ -48,7 +48,7 @@ import java.util.logging.Logger; /** * Allows a {@link Run} to provide {@link SCM}-related methods, such as providing changesets and culprits. * - * @since FIXME + * @since 2.60 */ public interface RunWithSCM, RunT extends Run & RunWithSCM> { diff --git a/core/src/main/java/jenkins/security/ChannelConfigurator.java b/core/src/main/java/jenkins/security/ChannelConfigurator.java index fd7c26e229..91aba88846 100644 --- a/core/src/main/java/jenkins/security/ChannelConfigurator.java +++ b/core/src/main/java/jenkins/security/ChannelConfigurator.java @@ -13,7 +13,7 @@ import javax.annotation.Nullable; * Intercepts the new creation of {@link Channel} and tweak its configuration. * * @author Kohsuke Kawaguchi - * @since 1.THU + * @since 1.587 / 1.580.1 */ public abstract class ChannelConfigurator implements ExtensionPoint { /** diff --git a/core/src/main/java/jenkins/security/MasterToSlaveCallable.java b/core/src/main/java/jenkins/security/MasterToSlaveCallable.java index e348ec1e49..1e71fcee5d 100644 --- a/core/src/main/java/jenkins/security/MasterToSlaveCallable.java +++ b/core/src/main/java/jenkins/security/MasterToSlaveCallable.java @@ -8,7 +8,7 @@ import org.jenkinsci.remoting.RoleChecker; * Convenient {@link Callable} meant to be run on agent. * * @author Kohsuke Kawaguchi - * @since 1.THU + * @since 1.587 / 1.580.1 */ public abstract class MasterToSlaveCallable implements Callable { @Override diff --git a/core/src/main/java/jenkins/security/NotReallyRoleSensitiveCallable.java b/core/src/main/java/jenkins/security/NotReallyRoleSensitiveCallable.java index 953c5ba69d..b2dee77bd2 100644 --- a/core/src/main/java/jenkins/security/NotReallyRoleSensitiveCallable.java +++ b/core/src/main/java/jenkins/security/NotReallyRoleSensitiveCallable.java @@ -8,7 +8,7 @@ import org.jenkinsci.remoting.RoleChecker; * just as a convenient function that has parameterized return value and exception type. * * @author Kohsuke Kawaguchi - * @since 1.THU + * @since 1.587 / 1.580.1 */ public abstract class NotReallyRoleSensitiveCallable implements Callable { @Override diff --git a/core/src/main/java/jenkins/security/Roles.java b/core/src/main/java/jenkins/security/Roles.java index ada2ca96c0..e37b323acc 100644 --- a/core/src/main/java/jenkins/security/Roles.java +++ b/core/src/main/java/jenkins/security/Roles.java @@ -12,7 +12,7 @@ import org.jenkinsci.remoting.Role; * not have any role. * * @author Kohsuke Kawaguchi - * @since 1.THU + * @since 1.587 / 1.580.1 */ public class Roles { /** diff --git a/core/src/main/java/jenkins/security/SlaveToMasterCallable.java b/core/src/main/java/jenkins/security/SlaveToMasterCallable.java index 34b227c5bf..2f256f2e9d 100644 --- a/core/src/main/java/jenkins/security/SlaveToMasterCallable.java +++ b/core/src/main/java/jenkins/security/SlaveToMasterCallable.java @@ -8,7 +8,7 @@ import org.jenkinsci.remoting.RoleChecker; * Convenient {@link Callable} that are meant to run on the master (sent by agent/CLI/etc). * * @author Kohsuke Kawaguchi - * @since 1.THU + * @since 1.587 / 1.580.1 */ public abstract class SlaveToMasterCallable implements Callable { @Override diff --git a/core/src/main/java/jenkins/security/s2m/AdminCallableMonitor.java b/core/src/main/java/jenkins/security/s2m/AdminCallableMonitor.java index 3a9d095af1..8f491d2929 100644 --- a/core/src/main/java/jenkins/security/s2m/AdminCallableMonitor.java +++ b/core/src/main/java/jenkins/security/s2m/AdminCallableMonitor.java @@ -18,7 +18,7 @@ import java.io.IOException; * Report any rejected {@link Callable}s and {@link FilePath} executions and allow * admins to whitelist them. * - * @since 1.THU + * @since 1.587 / 1.580.1 * @author Kohsuke Kawaguchi */ @Extension @Symbol("slaveToMasterAccessControl") diff --git a/core/src/main/java/jenkins/security/s2m/AdminFilePathFilter.java b/core/src/main/java/jenkins/security/s2m/AdminFilePathFilter.java index 7832f82bbb..d5d94b52d5 100644 --- a/core/src/main/java/jenkins/security/s2m/AdminFilePathFilter.java +++ b/core/src/main/java/jenkins/security/s2m/AdminFilePathFilter.java @@ -17,7 +17,7 @@ import java.io.File; * This class is just a glue, and the real logic happens inside {@link AdminWhitelistRule} * * @author Kohsuke Kawaguchi - * @since 1.THU + * @since 1.587 / 1.580.1 */ public class AdminFilePathFilter extends ReflectiveFilePathFilter { diff --git a/core/src/main/java/jenkins/security/s2m/CallableDirectionChecker.java b/core/src/main/java/jenkins/security/s2m/CallableDirectionChecker.java index d21c5a5880..194e83c813 100644 --- a/core/src/main/java/jenkins/security/s2m/CallableDirectionChecker.java +++ b/core/src/main/java/jenkins/security/s2m/CallableDirectionChecker.java @@ -22,7 +22,7 @@ import java.util.logging.Logger; * Inspects {@link Callable}s that run on the master. * * @author Kohsuke Kawaguchi - * @since 1.THU + * @since 1.587 / 1.580.1 */ @Restricted(NoExternalUse.class) // used implicitly via listener public class CallableDirectionChecker extends RoleChecker { diff --git a/core/src/main/java/jenkins/security/s2m/CallableWhitelist.java b/core/src/main/java/jenkins/security/s2m/CallableWhitelist.java index 50023a0cd0..27ef63143e 100644 --- a/core/src/main/java/jenkins/security/s2m/CallableWhitelist.java +++ b/core/src/main/java/jenkins/security/s2m/CallableWhitelist.java @@ -18,7 +18,7 @@ import java.util.Collection; * {@link Callable#checkRoles(RoleChecker)} method. * * @author Kohsuke Kawaguchi - * @since 1.THU + * @since 1.587 / 1.580.1 */ public abstract class CallableWhitelist implements ExtensionPoint { /** diff --git a/core/src/main/java/jenkins/security/s2m/MasterKillSwitchConfiguration.java b/core/src/main/java/jenkins/security/s2m/MasterKillSwitchConfiguration.java index 69bb8e34bc..3a1e2b063d 100644 --- a/core/src/main/java/jenkins/security/s2m/MasterKillSwitchConfiguration.java +++ b/core/src/main/java/jenkins/security/s2m/MasterKillSwitchConfiguration.java @@ -12,7 +12,7 @@ import org.kohsuke.stapler.StaplerRequest; * Exposes {@link AdminWhitelistRule#masterKillSwitch} to the admin. * * @author Kohsuke Kawaguchi - * @since 1.THU + * @since 1.587 / 1.580.1 */ @Extension public class MasterKillSwitchConfiguration extends GlobalConfiguration { diff --git a/core/src/main/java/jenkins/security/s2m/MasterKillSwitchWarning.java b/core/src/main/java/jenkins/security/s2m/MasterKillSwitchWarning.java index 54164c00c1..ccbb09c6f0 100644 --- a/core/src/main/java/jenkins/security/s2m/MasterKillSwitchWarning.java +++ b/core/src/main/java/jenkins/security/s2m/MasterKillSwitchWarning.java @@ -14,7 +14,7 @@ import java.io.IOException; * If {@link AdminWhitelistRule#masterKillSwitch} is on, warn the user. * * @author Kohsuke Kawaguchi - * @since 1.THU + * @since 1.587 / 1.580.1 */ @Extension public class MasterKillSwitchWarning extends AdministrativeMonitor { diff --git a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java index 50779ee9da..8d235f6114 100644 --- a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java +++ b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java @@ -25,7 +25,7 @@ import org.kohsuke.accmod.restrictions.NoExternalUse; * *

@see {@link org.jenkinsci.remoting.engine.JnlpProtocol3Handler} for more details. * - * @since 1.XXX + * @since 1.653 */ @Deprecated @Extension diff --git a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol4.java b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol4.java index cfa4ac8de7..d932f3b5d8 100644 --- a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol4.java +++ b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol4.java @@ -58,8 +58,8 @@ import org.jenkinsci.remoting.protocol.cert.PublicKeyMatchingX509ExtendedTrustMa * *

@see {@link org.jenkinsci.remoting.engine.JnlpProtocol4Handler} for more details. * - * @since 2.27 available as the experimental protocol - * @since TODO enabled by default + * @since 2.27 available as experimental protocol + * @since 2.41 enabled by default */ @Extension public class JnlpSlaveAgentProtocol4 extends AgentProtocol { From eac4221941380860287db1e1e497846fc2d70875 Mon Sep 17 00:00:00 2001 From: Daniel Beck Date: Sun, 16 Jul 2017 14:28:20 +0200 Subject: [PATCH 013/109] Fix more since tags --- core/src/main/java/hudson/model/listeners/ItemListener.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/hudson/model/listeners/ItemListener.java b/core/src/main/java/hudson/model/listeners/ItemListener.java index 2d9f55f40b..f72a8acff3 100644 --- a/core/src/main/java/hudson/model/listeners/ItemListener.java +++ b/core/src/main/java/hudson/model/listeners/ItemListener.java @@ -64,7 +64,7 @@ public class ItemListener implements ExtensionPoint { * @param src the item being copied * @param parent the proposed parent * @throws Failure to veto the operation. - * @since TODO + * @since 2.51 */ public void onCheckCopy(Item src, ItemGroup parent) throws Failure { } From c8b2b5246b2f1eff62976d67c8258a3c929a8b96 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Sun, 16 Jul 2017 19:34:42 -0700 Subject: [PATCH 014/109] [maven-release-plugin] prepare release jenkins-2.70 --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 6a80e49c98..b23ced16d1 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.70-SNAPSHOT + 2.70 cli diff --git a/core/pom.xml b/core/pom.xml index 16caeeef39..c9ff056058 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.70-SNAPSHOT + 2.70 jenkins-core diff --git a/pom.xml b/pom.xml index e63916c8bf..cfa04ca612 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.70-SNAPSHOT + 2.70 pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - HEAD + jenkins-2.70 diff --git a/test/pom.xml b/test/pom.xml index 0e631fecec..d1c1c2abcd 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.70-SNAPSHOT + 2.70 test diff --git a/war/pom.xml b/war/pom.xml index 0a2dbbb091..93e34a5f1a 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.70-SNAPSHOT + 2.70 jenkins-war From 82d2e5c4aae317fae5597311d4470dd8b41535c3 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Sun, 16 Jul 2017 19:34:42 -0700 Subject: [PATCH 015/109] [maven-release-plugin] prepare for next development iteration --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index b23ced16d1..0a8ec5658a 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.70 + 2.71-SNAPSHOT cli diff --git a/core/pom.xml b/core/pom.xml index c9ff056058..db4811997b 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.70 + 2.71-SNAPSHOT jenkins-core diff --git a/pom.xml b/pom.xml index cfa04ca612..66b138199e 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.70 + 2.71-SNAPSHOT pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - jenkins-2.70 + HEAD diff --git a/test/pom.xml b/test/pom.xml index d1c1c2abcd..c34c7b1a58 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.70 + 2.71-SNAPSHOT test diff --git a/war/pom.xml b/war/pom.xml index 93e34a5f1a..0b4aefe481 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.70 + 2.71-SNAPSHOT jenkins-war From 0c26fef6b20e4994c2bb6b39beaea515c68c2b59 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Mon, 17 Jul 2017 21:04:39 +1000 Subject: [PATCH 016/109] executable-war 1.36 Signed-off-by: olivier lamy --- war/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/war/pom.xml b/war/pom.xml index 7238479538..46f80ad55f 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -49,7 +49,7 @@ THE SOFTWARE. org.jenkins-ci executable-war - 1.36-SNAPSHOT + 1.36 provided From 0f9143da61eaa178b167a3110e858130a7e6e4c2 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Wed, 19 Jul 2017 15:31:47 -0700 Subject: [PATCH 017/109] [maven-release-plugin] prepare release jenkins-2.60.2 --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index c2eb35cbe0..053f57a714 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.60.2-SNAPSHOT + 2.60.2 cli diff --git a/core/pom.xml b/core/pom.xml index 83809ddb77..5489d3eef1 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.2-SNAPSHOT + 2.60.2 jenkins-core diff --git a/pom.xml b/pom.xml index ccc542bf2e..95a7acbb47 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.2-SNAPSHOT + 2.60.2 pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - HEAD + jenkins-2.60.2 diff --git a/test/pom.xml b/test/pom.xml index 5d24b74d31..aa701e5001 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.2-SNAPSHOT + 2.60.2 test diff --git a/war/pom.xml b/war/pom.xml index 0a7303a479..7d66f86735 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.2-SNAPSHOT + 2.60.2 jenkins-war From 07e7f47244f50d0f69595996ed18ae68688b6156 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Wed, 19 Jul 2017 15:31:47 -0700 Subject: [PATCH 018/109] [maven-release-plugin] prepare for next development iteration --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 053f57a714..27b67003b2 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.60.2 + 2.60.3-SNAPSHOT cli diff --git a/core/pom.xml b/core/pom.xml index 5489d3eef1..2b9a0fe9d9 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.2 + 2.60.3-SNAPSHOT jenkins-core diff --git a/pom.xml b/pom.xml index 95a7acbb47..9df84cc800 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.2 + 2.60.3-SNAPSHOT pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - jenkins-2.60.2 + HEAD diff --git a/test/pom.xml b/test/pom.xml index aa701e5001..a5dfe2a8e6 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.2 + 2.60.3-SNAPSHOT test diff --git a/war/pom.xml b/war/pom.xml index 7d66f86735..7011c89a6e 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.2 + 2.60.3-SNAPSHOT jenkins-war From fc9283e553180f96378c636bdeee793266c0a471 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Thu, 20 Jul 2017 11:20:51 +1000 Subject: [PATCH 019/109] no need anymore to ignore jetty spdy classes as it doesn't exist anymore Signed-off-by: olivier lamy --- pom.xml | 3 --- 1 file changed, 3 deletions(-) diff --git a/pom.xml b/pom.xml index e63916c8bf..cf2ba11938 100644 --- a/pom.xml +++ b/pom.xml @@ -689,9 +689,6 @@ THE SOFTWARE. 1.${java.level} - - org.eclipse.jetty.spdy.* - From 99cf772da11823ec965874b17e89866a3931ebc1 Mon Sep 17 00:00:00 2001 From: Daniel Beck Date: Thu, 20 Jul 2017 11:12:26 +0200 Subject: [PATCH 020/109] [FIX JENKINS-45679] JNLP needs to request Java 8 --- .../hudson/slaves/SlaveComputer/slave-agent.jnlp.jelly | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/resources/hudson/slaves/SlaveComputer/slave-agent.jnlp.jelly b/core/src/main/resources/hudson/slaves/SlaveComputer/slave-agent.jnlp.jelly index aff376cb8a..07f6f25144 100644 --- a/core/src/main/resources/hudson/slaves/SlaveComputer/slave-agent.jnlp.jelly +++ b/core/src/main/resources/hudson/slaves/SlaveComputer/slave-agent.jnlp.jelly @@ -50,10 +50,10 @@ THE SOFTWARE. - + - + From c2163c5b3cb4a0c42cdc31cf404a82bcecb05082 Mon Sep 17 00:00:00 2001 From: Oleg Nenashev Date: Mon, 26 Jun 2017 11:02:52 +0200 Subject: [PATCH 021/109] [JENKINS-38527] - Prevent NullPointerException in Slave#createLauncher() and add cause diagnostics (#2923) * [JENKINS-38527] - Prevent NullPointerException in Slave#createLauncher() and add cause diagnostics The original issue comes from the isUnix() unboxing, but we can also get into an issue later if we pass a null Channel instance to the logic. This change adds some diagnostics which discovers potential root causes of such potential NPEs due to the race conditions with Computer reconnection * [JENKINS-38527] - Also handle cases when Channel#isClosingOrClosed() as @stephenc suggested (cherry picked from commit 78a42d5a4a5d545324c2d3230de6947e1ec8806e) --- core/src/main/java/hudson/model/Slave.java | 57 +++++++++++++++++++++- 1 file changed, 55 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/hudson/model/Slave.java b/core/src/main/java/hudson/model/Slave.java index 0835e66ec2..7d3721fbbd 100644 --- a/core/src/main/java/hudson/model/Slave.java +++ b/core/src/main/java/hudson/model/Slave.java @@ -57,6 +57,8 @@ import java.util.ArrayList; import java.util.Collection; import java.util.List; import java.util.Set; +import java.util.logging.Level; +import java.util.logging.Logger; import javax.annotation.CheckForNull; import javax.annotation.Nonnull; import javax.servlet.ServletException; @@ -92,6 +94,9 @@ import org.kohsuke.stapler.StaplerResponse; * @author Kohsuke Kawaguchi */ public abstract class Slave extends Node implements Serializable { + + private static final Logger LOGGER = Logger.getLogger(Slave.class.getName()); + /** * Name of this agent node. */ @@ -412,13 +417,61 @@ public abstract class Slave extends Node implements Serializable { * If there is no computer it will return a {@link hudson.Launcher.DummyLauncher}, otherwise it * will return a {@link hudson.Launcher.RemoteLauncher} instead. */ + @Nonnull public Launcher createLauncher(TaskListener listener) { SlaveComputer c = getComputer(); if (c == null) { - listener.error("Issue with creating launcher for agent " + name + "."); + listener.error("Issue with creating launcher for agent " + name + ". Computer has been disconnected"); return new Launcher.DummyLauncher(listener); } else { - return new RemoteLauncher(listener, c.getChannel(), c.isUnix()).decorateFor(this); + // TODO: ideally all the logic below should be inside the SlaveComputer class with proper locking to prevent race conditions, + // but so far there is no locks for setNode() hence it requires serious refactoring + + // Ensure that the Computer instance still points to this node + // Otherwise we may end up running the command on a wrong (reconnected) Node instance. + Slave node = c.getNode(); + if (node != this) { + String message = "Issue with creating launcher for agent " + name + ". Computer has been reconnected"; + if (LOGGER.isLoggable(Level.WARNING)) { + LOGGER.log(Level.WARNING, message, new IllegalStateException("Computer has been reconnected, this Node instance cannot be used anymore")); + } + return new Launcher.DummyLauncher(listener); + } + + // RemoteLauncher requires an active Channel instance to operate correctly + final Channel channel = c.getChannel(); + if (channel == null) { + reportLauncerCreateError("The agent has not been fully initialized yet", + "No remoting channel to the agent OR it has not been fully initialized yet", listener); + return new Launcher.DummyLauncher(listener); + } + if (channel.isClosingOrClosed()) { + reportLauncerCreateError("The agent is being disconnected", + "Remoting channel is either in the process of closing down or has closed down", listener); + return new Launcher.DummyLauncher(listener); + } + final Boolean isUnix = c.isUnix(); + if (isUnix == null) { + // isUnix is always set when the channel is not null, so it should never happen + reportLauncerCreateError("The agent has not been fully initialized yet", + "Cannot determing if the agent is a Unix one, the System status request has not completed yet. " + + "It is an invalid channel state, please report a bug to Jenkins if you see it.", + listener); + return new Launcher.DummyLauncher(listener); + } + + return new RemoteLauncher(listener, channel, isUnix).decorateFor(this); + } + } + + private void reportLauncerCreateError(@Nonnull String humanReadableMsg, @CheckForNull String exceptionDetails, @Nonnull TaskListener listener) { + String message = "Issue with creating launcher for agent " + name + ". " + humanReadableMsg; + listener.error(message); + if (LOGGER.isLoggable(Level.WARNING)) { + // Send stacktrace to the log as well in order to diagnose the root cause of issues like JENKINS-38527 + LOGGER.log(Level.WARNING, message + + "Probably there is a race condition with Agent reconnection or disconnection, check other log entries", + new IllegalStateException(exceptionDetails != null ? exceptionDetails : humanReadableMsg)); } } From c2c6306d2aeba4cb436af9c4b5acaccd38b98985 Mon Sep 17 00:00:00 2001 From: Oleg Nenashev Date: Mon, 22 May 2017 10:38:58 +0200 Subject: [PATCH 022/109] [JENKINS-44103] - Cleanup usages of the "JNLP" term in TcpSlaveAgentListener (cherry picked from commit b5fe89cc9873a1c16c580ced43054b62ef70589b) --- .../java/hudson/TcpSlaveAgentListener.java | 19 +++++++++++++------ .../hudson/TcpSlaveAgentListener/index.jelly | 2 +- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/core/src/main/java/hudson/TcpSlaveAgentListener.java b/core/src/main/java/hudson/TcpSlaveAgentListener.java index 5a626a30d5..3b926261c6 100644 --- a/core/src/main/java/hudson/TcpSlaveAgentListener.java +++ b/core/src/main/java/hudson/TcpSlaveAgentListener.java @@ -23,6 +23,7 @@ */ package hudson; +import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.io.ByteArrayInputStream; import java.io.SequenceInputStream; import java.io.Writer; @@ -57,9 +58,11 @@ import org.apache.commons.io.Charsets; import org.apache.commons.io.IOUtils; import org.apache.commons.io.output.NullOutputStream; import org.apache.commons.lang.StringUtils; +import org.kohsuke.accmod.Restricted; +import org.kohsuke.accmod.restrictions.NoExternalUse; /** - * Listens to incoming TCP connections from JNLP agents and CLI. + * Listens to incoming TCP connections from JNLP agents and Remoting CLI. * *

* Aside from the HTTP endpoint, Jenkins runs {@link TcpSlaveAgentListener} that listens on a TCP socket. @@ -95,7 +98,7 @@ public final class TcpSlaveAgentListener extends Thread { } this.configuredPort = port; - LOGGER.log(Level.FINE, "JNLP agent listener started on TCP port {0}", getPort()); + LOGGER.log(Level.FINE, "TCP agent listener started on port {0}", getPort()); start(); } @@ -155,7 +158,7 @@ public final class TcpSlaveAgentListener extends Thread { } } catch (IOException e) { if(!shuttingDown) { - LOGGER.log(Level.SEVERE,"Failed to accept JNLP agent connections",e); + LOGGER.log(Level.SEVERE,"Failed to accept TCP connections", e); } } } @@ -241,14 +244,14 @@ public final class TcpSlaveAgentListener extends Thread { LOGGER.log(Level.WARNING,"Connection #"+id+" aborted",e); try { s.close(); - } catch (IOException _) { + } catch (IOException ex) { // try to clean up the socket } } catch (IOException e) { LOGGER.log(Level.WARNING,"Connection #"+id+" failed",e); try { s.close(); - } catch (IOException _) { + } catch (IOException ex) { // try to clean up the socket } } @@ -292,7 +295,7 @@ public final class TcpSlaveAgentListener extends Thread { private void error(PrintWriter out, String msg) throws IOException { out.println(msg); - LOGGER.log(Level.WARNING,"Connection #"+id+" is aborted: "+msg); + LOGGER.log(Level.WARNING, "Connection #{0} is aborted: {1}", new Object[]{id, msg}); s.close(); } } @@ -398,6 +401,8 @@ public final class TcpSlaveAgentListener extends Thread { * * TODO: think about how to expose this (including whether this needs to be exposed at all.) */ + @SuppressFBWarnings(value = "MS_SHOULD_BE_FINAL", justification = "Accessible via System Groovy Scripts") + @Restricted(NoExternalUse.class) public static String CLI_HOST_NAME = SystemProperties.getString(TcpSlaveAgentListener.class.getName()+".hostName"); /** @@ -410,6 +415,8 @@ public final class TcpSlaveAgentListener extends Thread { * * @since 1.611 */ + @SuppressFBWarnings(value = "MS_SHOULD_BE_FINAL", justification = "Accessible via System Groovy Scripts") + @Restricted(NoExternalUse.class) public static Integer CLI_PORT = SystemProperties.getInteger(TcpSlaveAgentListener.class.getName()+".port"); } diff --git a/core/src/main/resources/hudson/TcpSlaveAgentListener/index.jelly b/core/src/main/resources/hudson/TcpSlaveAgentListener/index.jelly index 9be4024272..85471432ae 100644 --- a/core/src/main/resources/hudson/TcpSlaveAgentListener/index.jelly +++ b/core/src/main/resources/hudson/TcpSlaveAgentListener/index.jelly @@ -26,7 +26,7 @@ THE SOFTWARE. From 8cd6fd81a5fd9960a05bd485afec9c3976324cb5 Mon Sep 17 00:00:00 2001 From: Oleg Nenashev Date: Sat, 1 Jul 2017 08:11:16 +0200 Subject: [PATCH 023/109] [JENKINS-43496] - Add handling of the null Node#createComputer() result. (#2922) * [JENKINS-43496] - Add handling of the null Node#createComputer() result. it is a follow-up to https://github.com/jenkinsci/jenkins/pull/2836#discussion_r110604865 De-facto many Cloud plugins return `null` in `Node#createLauncher()`, but it has never been documented. In order to prevent possible API misusages in the future, I have added annotations and fixed handling of the extension point in `AbstractCIBase#updateComputer()` which may fail in the case of `null` or `RuntimeException` in the Node implementation. * [JENKINS-43496] - Use ProtectedExternally to protect Node#createComputer() * [JENKINS-43496] - Remove the erroneous Nonnull annotation after the feedback from @jglick * [JENKINS-43496] - Fix typos noticed by @daniel-beck (cherry picked from commit bcf55ecd7f8a22046c5cb3c4c50016d936e5460c) --- .../java/hudson/model/AbstractCIBase.java | 21 ++++++++++++++++--- core/src/main/java/hudson/model/Node.java | 8 +++++++ .../java/hudson/slaves/RetentionStrategy.java | 6 ++++-- core/src/main/java/jenkins/model/Jenkins.java | 2 ++ 4 files changed, 32 insertions(+), 5 deletions(-) diff --git a/core/src/main/java/hudson/model/AbstractCIBase.java b/core/src/main/java/hudson/model/AbstractCIBase.java index 16744334e5..3cef84804b 100644 --- a/core/src/main/java/hudson/model/AbstractCIBase.java +++ b/core/src/main/java/hudson/model/AbstractCIBase.java @@ -39,6 +39,7 @@ import java.util.concurrent.CopyOnWriteArraySet; import java.util.logging.Level; import java.util.logging.Logger; import javax.annotation.CheckForNull; +import javax.annotation.Nonnull; import jenkins.model.Configuration; @@ -125,7 +126,18 @@ public abstract class AbstractCIBase extends Node implements ItemGroup0 || n==Jenkins.getInstance()) { - computers.put(n, c = n.createComputer()); + try { + c = n.createComputer(); + } catch(RuntimeException ex) { // Just in case there is a bogus extension + LOGGER.log(Level.WARNING, "Error retrieving computer for node " + n.getNodeName() + ", continuing", ex); + } + if (c == null) { + LOGGER.log(Level.WARNING, "Cannot create computer for node {0}, the {1}#createComputer() method returned null. Skipping this node", + new Object[]{n.getNodeName(), n.getClass().getName()}); + return; + } + + computers.put(n, c); if (!n.isHoldOffLaunchUntilSave() && automaticSlaveLaunch) { RetentionStrategy retentionStrategy = c.getRetentionStrategy(); if (retentionStrategy != null) { @@ -136,8 +148,11 @@ public abstract class AbstractCIBase extends Node implements ItemGroup used = new HashSet(old.size()); + Set used = new HashSet<>(old.size()); updateComputer(AbstractCIBase.this, byName, used, automaticSlaveLaunch); for (Node s : getNodes()) { diff --git a/core/src/main/java/hudson/model/Node.java b/core/src/main/java/hudson/model/Node.java index 42b40a17d2..ab1ca6ca66 100644 --- a/core/src/main/java/hudson/model/Node.java +++ b/core/src/main/java/hudson/model/Node.java @@ -40,6 +40,7 @@ import hudson.remoting.VirtualChannel; import hudson.security.ACL; import hudson.security.AccessControlled; import hudson.security.Permission; +import hudson.slaves.Cloud; import hudson.slaves.ComputerListener; import hudson.slaves.NodeDescriptor; import hudson.slaves.NodeProperty; @@ -65,6 +66,8 @@ import jenkins.util.io.OnMaster; import net.sf.json.JSONObject; import org.acegisecurity.Authentication; import org.jvnet.localizer.Localizable; +import org.kohsuke.accmod.Restricted; +import org.kohsuke.accmod.restrictions.ProtectedExternally; import org.kohsuke.stapler.BindInterceptor; import org.kohsuke.stapler.Stapler; import org.kohsuke.stapler.StaplerRequest; @@ -214,8 +217,13 @@ public abstract class Node extends AbstractModelObject implements Reconfigurable /** * Creates a new {@link Computer} object that acts as the UI peer of this {@link Node}. + * * Nobody but {@link Jenkins#updateComputerList()} should call this method. + * @return Created instance of the computer. + * Can be {@code null} if the {@link Node} implementation does not support it (e.g. {@link Cloud} agent). */ + @CheckForNull + @Restricted(ProtectedExternally.class) protected abstract Computer createComputer(); /** diff --git a/core/src/main/java/hudson/slaves/RetentionStrategy.java b/core/src/main/java/hudson/slaves/RetentionStrategy.java index 3d8c79e544..0e33a9dc6c 100644 --- a/core/src/main/java/hudson/slaves/RetentionStrategy.java +++ b/core/src/main/java/hudson/slaves/RetentionStrategy.java @@ -39,6 +39,7 @@ import javax.annotation.concurrent.GuardedBy; import java.util.concurrent.TimeUnit; import java.util.logging.Level; import java.util.logging.Logger; +import javax.annotation.Nonnull; /** * Controls when to take {@link Computer} offline, bring it back online, or even to destroy it. @@ -57,7 +58,7 @@ public abstract class RetentionStrategy extends AbstractDesc * rechecked earlier or later that this! */ @GuardedBy("hudson.model.Queue.lock") - public abstract long check(T c); + public abstract long check(@Nonnull T c); /** * This method is called to determine whether manual launching of the agent is allowed at this point in time. @@ -92,9 +93,10 @@ public abstract class RetentionStrategy extends AbstractDesc * The default implementation of this method delegates to {@link #check(Computer)}, * but this allows {@link RetentionStrategy} to distinguish the first time invocation from the rest. * + * @param c Computer instance * @since 1.275 */ - public void start(final T c) { + public void start(final @Nonnull T c) { Queue.withLock(new Runnable() { @Override public void run() { diff --git a/core/src/main/java/jenkins/model/Jenkins.java b/core/src/main/java/jenkins/model/Jenkins.java index 9eccb6b753..11b0b676d7 100644 --- a/core/src/main/java/jenkins/model/Jenkins.java +++ b/core/src/main/java/jenkins/model/Jenkins.java @@ -3051,6 +3051,8 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve return getLabelAtom("master"); } + @Override + @Nonnull public Computer createComputer() { return new Hudson.MasterComputer(); } From de4f28558a63381c6f53648aa89960c89eb6c7c0 Mon Sep 17 00:00:00 2001 From: Oleg Nenashev Date: Sat, 1 Jul 2017 12:50:41 +0200 Subject: [PATCH 024/109] Merge pull request #2931 from jglick/ReloadConfigurationCommand [JENKINS-45256] The reload-configuration CLI command ought to wait until the reload is finished (cherry picked from commit cc1615b9efbf1e24a53c1d978abf81fa2be6193e) --- .../cli/ReloadConfigurationCommand.java | 25 +++++++++++++++++-- .../java/hudson/util/JenkinsReloadFailed.java | 2 +- core/src/main/java/jenkins/model/Jenkins.java | 4 +-- .../cli/ReloadConfigurationCommandTest.java | 7 ------ 4 files changed, 26 insertions(+), 12 deletions(-) diff --git a/core/src/main/java/hudson/cli/ReloadConfigurationCommand.java b/core/src/main/java/hudson/cli/ReloadConfigurationCommand.java index 25199ec5be..adb61e12c6 100644 --- a/core/src/main/java/hudson/cli/ReloadConfigurationCommand.java +++ b/core/src/main/java/hudson/cli/ReloadConfigurationCommand.java @@ -25,7 +25,10 @@ package hudson.cli; import hudson.Extension; +import hudson.util.HudsonIsLoading; +import hudson.util.JenkinsReloadFailed; import jenkins.model.Jenkins; +import org.kohsuke.stapler.WebApp; /** * Reload everything from the file system. @@ -43,8 +46,26 @@ public class ReloadConfigurationCommand extends CLICommand { @Override protected int run() throws Exception { - Jenkins.getActiveInstance().doReload(); - return 0; + Jenkins j = Jenkins.getInstance(); + // Or perhaps simpler to inline the thread body of doReload? + j.doReload(); + Object app; + while ((app = WebApp.get(j.servletContext).getApp()) instanceof HudsonIsLoading) { + Thread.sleep(100); + } + if (app instanceof Jenkins) { + return 0; + } else if (app instanceof JenkinsReloadFailed) { + Throwable t = ((JenkinsReloadFailed) app).cause; + if (t instanceof Exception) { + throw (Exception) t; + } else { + throw new RuntimeException(t); + } + } else { + stderr.println("Unexpected status " + app); + return 1; // could throw JenkinsReloadFailed.cause if it were not deprecated + } } } diff --git a/core/src/main/java/hudson/util/JenkinsReloadFailed.java b/core/src/main/java/hudson/util/JenkinsReloadFailed.java index 7022844bce..ab27d5969f 100644 --- a/core/src/main/java/hudson/util/JenkinsReloadFailed.java +++ b/core/src/main/java/hudson/util/JenkinsReloadFailed.java @@ -9,7 +9,7 @@ import org.kohsuke.accmod.restrictions.NoExternalUse; * @author Kohsuke Kawaguchi */ public class JenkinsReloadFailed extends BootFailure { - @Restricted(NoExternalUse.class) @Deprecated + @Restricted(NoExternalUse.class) public final Throwable cause; public JenkinsReloadFailed(Throwable cause) { diff --git a/core/src/main/java/jenkins/model/Jenkins.java b/core/src/main/java/jenkins/model/Jenkins.java index 11b0b676d7..acb561edf8 100644 --- a/core/src/main/java/jenkins/model/Jenkins.java +++ b/core/src/main/java/jenkins/model/Jenkins.java @@ -3988,7 +3988,7 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve LOGGER.log(Level.WARNING, "Reloading Jenkins as requested by {0}", getAuthentication().getName()); // engage "loading ..." UI and then run the actual task in a separate thread - servletContext.setAttribute("app", new HudsonIsLoading()); + WebApp.get(servletContext).setApp(new HudsonIsLoading()); new Thread("Jenkins config reload thread") { @Override @@ -4027,7 +4027,7 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve User.reload(); queue.load(); - servletContext.setAttribute("app", this); + WebApp.get(servletContext).setApp(this); } /** diff --git a/test/src/test/java/hudson/cli/ReloadConfigurationCommandTest.java b/test/src/test/java/hudson/cli/ReloadConfigurationCommandTest.java index a6018a8874..092fd6ee50 100644 --- a/test/src/test/java/hudson/cli/ReloadConfigurationCommandTest.java +++ b/test/src/test/java/hudson/cli/ReloadConfigurationCommandTest.java @@ -173,13 +173,6 @@ public class ReloadConfigurationCommandTest { final CLICommandInvoker.Result result = command.invoke(); assertThat(result, succeededSilently()); - - // reload-configuration is performed in a separate thread - // we have to wait until it finishes - while (!(j.jenkins.servletContext.getAttribute("app") instanceof Jenkins)) { - System.out.println("Jenkins reload operation is performing, sleeping 1s..."); - Thread.sleep(1000); - } } private void replace(String path, String search, String replace) { From ece79da3e2780be36e791a1fceb3cfc38a088378 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Thu, 20 Jul 2017 22:01:10 +1000 Subject: [PATCH 025/109] use release 4.1 of winstone Signed-off-by: olivier lamy --- war/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/war/pom.xml b/war/pom.xml index 46f80ad55f..1f378fe39c 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -93,7 +93,7 @@ THE SOFTWARE. --> org.jenkins-ci winstone - 4.1-SNAPSHOT + 4.1 test From 9dede06404a8bd6fbeab76ed13a00bbd25def03e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Oliver=20Gond=C5=BEa?= Date: Fri, 21 Jul 2017 08:58:11 +0200 Subject: [PATCH 026/109] Update accmod for latest restrictions --- cli/pom.xml | 1 - core/pom.xml | 1 - pom.xml | 10 +++++++++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 27b67003b2..17569e230d 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -27,7 +27,6 @@ org.kohsuke access-modifier-annotation - 1.7 commons-codec diff --git a/core/pom.xml b/core/pom.xml index 2b9a0fe9d9..66c9d7a021 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -575,7 +575,6 @@ THE SOFTWARE. org.kohsuke access-modifier-annotation - 1.4 diff --git a/pom.xml b/pom.xml index 9df84cc800..27b8adb594 100644 --- a/pom.xml +++ b/pom.xml @@ -95,6 +95,9 @@ THE SOFTWARE. 3.0.4 true 1.2 + 1.12 + ${access-modifier.version} + ${access-modifier.version} 8 @@ -223,6 +226,11 @@ THE SOFTWARE. jcifs 1.3.17-kohsuke-1 + + org.kohsuke + access-modifier-annotation + ${access-modifier-annotation.version} + @@ -432,7 +440,7 @@ THE SOFTWARE. org.kohsuke access-modifier-checker - 1.7 + ${access-modifier-checker.version} com.cloudbees From f4d5c764212df6e287e4db69c6c5b9e65207d4ad Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Sat, 22 Jul 2017 13:59:20 -0400 Subject: [PATCH 027/109] [JENKINS-45737] - User mapping should be stored in a per-Jenkins field and getAll should be called just once per session unless we reload (#2928) [JENKINS-45737] - User mapping should be stored in a per-Jenkins field and getAll should be called just once per session unless we reload --- .../main/java/hudson/init/InitMilestone.java | 2 +- core/src/main/java/hudson/model/User.java | 101 ++++++++++-------- .../cli/ReloadConfigurationCommandTest.java | 7 +- .../hudson/model/MyViewsPropertyTest.java | 26 +++-- .../java/hudson/model/UserRestartTest.java | 61 +++++++++++ test/src/test/java/hudson/model/UserTest.java | 86 ++++++++------- .../model/JenkinsReloadConfigurationTest.java | 23 +--- 7 files changed, 198 insertions(+), 108 deletions(-) create mode 100644 test/src/test/java/hudson/model/UserRestartTest.java diff --git a/core/src/main/java/hudson/init/InitMilestone.java b/core/src/main/java/hudson/init/InitMilestone.java index 3d5412e0bf..b6bd3a528f 100644 --- a/core/src/main/java/hudson/init/InitMilestone.java +++ b/core/src/main/java/hudson/init/InitMilestone.java @@ -82,7 +82,7 @@ public enum InitMilestone implements Milestone { * By this milestone, all programmatically constructed extension point implementations * should be added. */ - EXTENSIONS_AUGMENTED("Augmented all extensions"), + EXTENSIONS_AUGMENTED("Augmented all extensions"), // TODO nothing attains() this so when does it actually happen? /** * By this milestone, all jobs and their build records are loaded from disk. diff --git a/core/src/main/java/hudson/model/User.java b/core/src/main/java/hudson/model/User.java index 0ebd2342e9..845d769862 100644 --- a/core/src/main/java/hudson/model/User.java +++ b/core/src/main/java/hudson/model/User.java @@ -34,6 +34,8 @@ import hudson.ExtensionPoint; import hudson.FeedAdapter; import hudson.Util; import hudson.XmlFile; +import hudson.init.InitMilestone; +import hudson.init.Initializer; import hudson.model.Descriptor.FormException; import hudson.model.listeners.SaveableListener; import hudson.security.ACL; @@ -427,7 +429,7 @@ public class User extends AbstractModelObject implements AccessControlled, Descr byNameLock.readLock().lock(); User u; try { - u = byName.get(idkey); + u = AllUsers.byName().get(idkey); } finally { byNameLock.readLock().unlock(); } @@ -465,7 +467,7 @@ public class User extends AbstractModelObject implements AccessControlled, Descr User prev; byNameLock.readLock().lock(); try { - prev = byName.putIfAbsent(idkey, u = tmp); + prev = AllUsers.byName().putIfAbsent(idkey, u = tmp); } finally { byNameLock.readLock().unlock(); } @@ -535,36 +537,15 @@ public class User extends AbstractModelObject implements AccessControlled, Descr return getOrCreate(id, id, create); } - private static volatile long lastScanned; - /** * Gets all the users. */ public static @Nonnull Collection getAll() { final IdStrategy strategy = idStrategy(); - if(System.currentTimeMillis() -lastScanned>10000) { - // occasionally scan the file system to check new users - // whether we should do this only once at start up or not is debatable. - // set this right away to avoid another thread from doing the same thing while we do this. - // having two threads doing the work won't cause race condition, but it's waste of time. - lastScanned = System.currentTimeMillis(); - - File[] subdirs = getRootDir().listFiles((FileFilter)DirectoryFileFilter.INSTANCE); - if(subdirs==null) return Collections.emptyList(); // shall never happen - - for (File subdir : subdirs) - if(new File(subdir,"config.xml").exists()) { - String name = strategy.idFromFilename(subdir.getName()); - User.getOrCreate(name, name, true); - } - - lastScanned = System.currentTimeMillis(); - } - byNameLock.readLock().lock(); ArrayList r; try { - r = new ArrayList(byName.values()); + r = new ArrayList(AllUsers.byName().values()); } finally { byNameLock.readLock().unlock(); } @@ -578,27 +559,32 @@ public class User extends AbstractModelObject implements AccessControlled, Descr } /** - * Reloads the configuration from disk. + * To be called from {@link Jenkins#reload} only. */ + @Restricted(NoExternalUse.class) public static void reload() { byNameLock.readLock().lock(); try { - for (User u : byName.values()) { - u.load(); - } + AllUsers.byName().clear(); } finally { byNameLock.readLock().unlock(); - UserDetailsCache.get().invalidateAll(); } + UserDetailsCache.get().invalidateAll(); + AllUsers.scanAll(); } /** - * Stop gap hack. Don't use it. To be removed in the trunk. + * @deprecated Used to be called by test harnesses; now ignored in that case. */ + @Deprecated public static void clear() { + if (ExtensionList.lookup(AllUsers.class).isEmpty()) { + // Historically this was called by JenkinsRule prior to startup. Ignore! + return; + } byNameLock.writeLock().lock(); try { - byName.clear(); + AllUsers.byName().clear(); } finally { byNameLock.writeLock().unlock(); } @@ -612,6 +598,7 @@ public class User extends AbstractModelObject implements AccessControlled, Descr final IdStrategy strategy = idStrategy(); byNameLock.writeLock().lock(); try { + ConcurrentMap byName = AllUsers.byName(); for (Map.Entry e : byName.entrySet()) { String idkey = strategy.keyFor(e.getValue().id); if (!idkey.equals(e.getKey())) { @@ -758,7 +745,7 @@ public class User extends AbstractModelObject implements AccessControlled, Descr final IdStrategy strategy = idStrategy(); byNameLock.readLock().lock(); try { - byName.remove(strategy.keyFor(id)); + AllUsers.byName().remove(strategy.keyFor(id)); } finally { byNameLock.readLock().unlock(); } @@ -865,16 +852,7 @@ public class User extends AbstractModelObject implements AccessControlled, Descr } /** - * Keyed by {@link User#id}. This map is used to ensure - * singleton-per-id semantics of {@link User} objects. - * - * The key needs to be generated by {@link IdStrategy#keyFor(String)}. - */ - @GuardedBy("byNameLock") - private static final ConcurrentMap byName = new ConcurrentHashMap(); - - /** - * This lock is used to guard access to the {@link #byName} map. Use + * This lock is used to guard access to the {@link AllUsers#byName} map. Use * {@link java.util.concurrent.locks.ReadWriteLock#readLock()} for normal access and * {@link java.util.concurrent.locks.ReadWriteLock#writeLock()} for {@link #rekey()} or any other operation * that requires operating on the map as a whole. @@ -1013,6 +991,45 @@ public class User extends AbstractModelObject implements AccessControlled, Descr return res; } + /** Per-{@link Jenkins} holder of all known {@link User}s. */ + @Extension + @Restricted(NoExternalUse.class) + public static final class AllUsers { + + @Initializer(after = InitMilestone.JOB_LOADED) // so Jenkins.loadConfig has been called + public static void scanAll() { + IdStrategy strategy = idStrategy(); + File[] subdirs = getRootDir().listFiles((FileFilter) DirectoryFileFilter.INSTANCE); + if (subdirs != null) { + for (File subdir : subdirs) { + if (new File(subdir, "config.xml").exists()) { + String name = strategy.idFromFilename(subdir.getName()); + getOrCreate(name, /* calls load(), probably clobbering this anyway */name, true); + } + } + } + } + + @GuardedBy("User.byNameLock") + private final ConcurrentMap byName = new ConcurrentHashMap(); + + /** + * Keyed by {@link User#id}. This map is used to ensure + * singleton-per-id semantics of {@link User} objects. + * + * The key needs to be generated by {@link IdStrategy#keyFor(String)}. + */ + @GuardedBy("User.byNameLock") + static ConcurrentMap byName() { + ExtensionList instances = ExtensionList.lookup(AllUsers.class); + if (instances.size() != 1) { + throw new IllegalStateException(); + } + return instances.get(0).byName; + } + + } + public static abstract class CanonicalIdResolver extends AbstractDescribableImpl implements ExtensionPoint, Comparable { /** diff --git a/test/src/test/java/hudson/cli/ReloadConfigurationCommandTest.java b/test/src/test/java/hudson/cli/ReloadConfigurationCommandTest.java index 092fd6ee50..1f4094dfdf 100644 --- a/test/src/test/java/hudson/cli/ReloadConfigurationCommandTest.java +++ b/test/src/test/java/hudson/cli/ReloadConfigurationCommandTest.java @@ -107,6 +107,7 @@ public class ReloadConfigurationCommandTest { @Test public void reloadUserConfig() throws Exception { + { User user = User.get("some_user", true, null); user.setFullName("oldName"); user.save(); @@ -114,10 +115,12 @@ public class ReloadConfigurationCommandTest { replace("users/some_user/config.xml", "oldName", "newName"); assertThat(user.getFullName(), equalTo("oldName")); - + } reloadJenkinsConfigurationViaCliAndWait(); - + { + User user = User.getById("some_user", false); assertThat(user.getFullName(), equalTo("newName")); + } } @Test diff --git a/test/src/test/java/hudson/model/MyViewsPropertyTest.java b/test/src/test/java/hudson/model/MyViewsPropertyTest.java index 7e5f4cfc97..84d798aa67 100644 --- a/test/src/test/java/hudson/model/MyViewsPropertyTest.java +++ b/test/src/test/java/hudson/model/MyViewsPropertyTest.java @@ -53,7 +53,8 @@ public class MyViewsPropertyTest { property.readResolve(); assertNotNull("Property should contain " + AllView.DEFAULT_VIEW_NAME + " by default.", property.getView(AllView.DEFAULT_VIEW_NAME)); } - + + /* TODO unclear what exactly this is purporting to assert @Test public void testSave() throws IOException { User user = User.get("User"); @@ -75,6 +76,7 @@ public class MyViewsPropertyTest { property = User.get("User").getProperty(property.getClass()); assertEquals("Property should have primary view " + view.name + " instead of " + property.getPrimaryViewName(), view.name, property.getPrimaryViewName()); } + */ @Test public void testGetViews() throws IOException { @@ -179,7 +181,8 @@ public class MyViewsPropertyTest { } @Test - public void testAddView() throws IOException { + public void testAddView() throws Exception { + { User user = User.get("User"); MyViewsProperty property = new MyViewsProperty(AllView.DEFAULT_VIEW_NAME); property.readResolve(); @@ -188,14 +191,18 @@ public class MyViewsPropertyTest { View view = new ListView("foo", property); property.addView(view); assertTrue("Property should contain view " + view.name, property.getViews().contains(view)); - User.reload(); - user = User.get("User"); - property = user.getProperty(property.getClass()); - assertTrue("Property should save changes.", property.getViews().contains(property.getView(view.name))); + } + rule.jenkins.reload(); + { + User user = User.get("User"); + MyViewsProperty property = user.getProperty(MyViewsProperty.class); + assertTrue("Property should save changes.", property.getViews().contains(property.getView("foo"))); + } } @Test public void testDoCreateView() throws Exception { + { User user = User.get("User"); MyViewsProperty property = new MyViewsProperty(AllView.DEFAULT_VIEW_NAME); property.readResolve(); @@ -206,9 +213,12 @@ public class MyViewsPropertyTest { form.getRadioButtonsByName("mode").get(0).setChecked(true); rule.submit(form); assertNotNull("Property should contain view foo", property.getView("foo")); - User.reload(); - property = User.get("User").getProperty(property.getClass()); + } + rule.jenkins.reload(); + { + MyViewsProperty property = User.get("User").getProperty(MyViewsProperty.class); assertNotNull("Property should save changes", property.getView("foo")); + } } @Test diff --git a/test/src/test/java/hudson/model/UserRestartTest.java b/test/src/test/java/hudson/model/UserRestartTest.java new file mode 100644 index 0000000000..43fbbc80ec --- /dev/null +++ b/test/src/test/java/hudson/model/UserRestartTest.java @@ -0,0 +1,61 @@ +/* + * The MIT License + * + * Copyright 2017 CloudBees, 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. + */ + +package hudson.model; + +import hudson.tasks.Mailer; +import org.junit.Test; +import static org.junit.Assert.*; +import org.junit.Rule; +import org.junit.runners.model.Statement; +import org.jvnet.hudson.test.RestartableJenkinsRule; + +public class UserRestartTest { + + @Rule + public RestartableJenkinsRule rr = new RestartableJenkinsRule(); + + @Test public void persistedUsers() throws Exception { + rr.addStep(new Statement() { + @Override + public void evaluate() throws Throwable { + User bob = User.getById("bob", true); + bob.setFullName("Bob"); + bob.addProperty(new Mailer.UserProperty("bob@nowhere.net")); + } + }); + rr.addStep(new Statement() { + @Override + public void evaluate() throws Throwable { + User bob = User.getById("bob", false); + assertNotNull(bob); + assertEquals("Bob", bob.getFullName()); + Mailer.UserProperty email = bob.getProperty(Mailer.UserProperty.class); + assertNotNull(email); + assertEquals("bob@nowhere.net", email.getAddress()); + } + }); + } + +} diff --git a/test/src/test/java/hudson/model/UserTest.java b/test/src/test/java/hudson/model/UserTest.java index f87238de07..ee462096a0 100644 --- a/test/src/test/java/hudson/model/UserTest.java +++ b/test/src/test/java/hudson/model/UserTest.java @@ -24,7 +24,6 @@ */ package hudson.model; -import com.gargoylesoftware.htmlunit.FailingHttpStatusCodeException; import com.gargoylesoftware.htmlunit.WebAssert; import com.gargoylesoftware.htmlunit.html.HtmlForm; import com.gargoylesoftware.htmlunit.html.HtmlPage; @@ -60,7 +59,6 @@ import org.acegisecurity.userdetails.UsernameNotFoundException; import static org.junit.Assert.*; import static org.junit.Assume.*; -import org.junit.Assert; import org.junit.Rule; import org.junit.Test; import org.jvnet.hudson.test.FakeChangeLogSCM; @@ -164,17 +162,21 @@ public class UserTest { } @Test - public void testGetUser() { + public void testGetUser() throws Exception { + { User user = User.get("John Smith"); User user2 = User.get("John Smith2"); user2.setFullName("John Smith"); assertNotSame("Users should not have the same id.", user.getId(), user2.getId()); - User.clear(); + } + j.jenkins.reload(); + { User user3 = User.get("John Smith"); user3.setFullName("Alice Smith"); - assertEquals("Users should not have the same id.", user.getId(), user3.getId()); + assertEquals("What was this asserting exactly?", "John Smith", user3.getId()); User user4 = User.get("Marie",false, Collections.EMPTY_MAP); assertNull("User should not be created because Marie does not exists.", user4); + } } @Test @@ -243,15 +245,19 @@ public class UserTest { } @Test - public void testAddAndGetProperty() throws IOException { + public void testAddAndGetProperty() throws Exception { + { User user = User.get("John Smith"); UserProperty prop = new SomeUserProperty(); user.addProperty(prop); assertNotNull("User should have SomeUserProperty property.", user.getProperty(SomeUserProperty.class)); assertEquals("UserProperty1 should be assigned to its descriptor", prop, user.getProperties().get(prop.getDescriptor())); assertTrue("User should should contain SomeUserProperty.", user.getAllProperties().contains(prop)); - User.reload(); - assertNotNull("User should have SomeUserProperty property.", user.getProperty(SomeUserProperty.class)); + } + j.jenkins.reload(); + { + assertNotNull("User should have SomeUserProperty property.", User.getById("John Smith", false).getProperty(SomeUserProperty.class)); + } } @Test @@ -283,27 +289,20 @@ public class UserTest { } @Test - public void testReload() throws IOException{ + public void testReload() throws Exception { + { User user = User.get("John Smith", true, Collections.emptyMap()); user.save(); String config = user.getConfigFile().asString(); config = config.replace("John Smith", "Alice Smith"); PrintStream st = new PrintStream(user.getConfigFile().getFile()); st.print(config); - User.clear(); - assertEquals("User should have full name John Smith.", "John Smith", user.getFullName()); - User.reload(); - user = User.get(user.getId(), false, Collections.emptyMap()); + } + j.jenkins.reload(); + { + User user = User.get("John Smith", false, Collections.emptyMap()); assertEquals("User should have full name Alice Smith.", "Alice Smith", user.getFullName()); - } - - @Test - public void testClear() { - User user = User.get("John Smith", true, Collections.emptyMap()); - assertNotNull("User should not be null.", user); - user.clear(); - user = User.get("John Smith", false, Collections.emptyMap()); - assertNull("User should be null", user); + } } @Test @@ -333,34 +332,44 @@ public class UserTest { } @Test - public void testSave() throws IOException { + public void testSave() throws Exception { + { User user = User.get("John Smith", true, Collections.emptyMap()); - User.clear(); - User.reload(); - user = User.get("John Smith", false, Collections.emptyMap()); + } + j.jenkins.reload(); + { + User user = User.get("John Smith", false, Collections.emptyMap()); assertNull("User should be null.", user); user = User.get("John Smithl", true, Collections.emptyMap()); user.addProperty(new SomeUserProperty()); user.save(); - User.clear(); - User.reload(); - user = User.get("John Smithl", false, Collections.emptyMap()); + } + j.jenkins.reload(); + { + User user = User.get("John Smithl", false, Collections.emptyMap()); assertNotNull("User should not be null.", user); assertNotNull("User should be saved with all changes.", user.getProperty(SomeUserProperty.class)); + } } @Issue("JENKINS-16332") @Test public void unrecoverableFullName() throws Throwable { + String id; + { User u = User.get("John Smith "); assertEquals("jsmith@nowhere.net", MailAddressResolver.resolve(u)); - String id = u.getId(); - User.clear(); // simulate Jenkins restart - u = User.get(id); + id = u.getId(); + } + j.jenkins.reload(); + { + User u = User.get(id); assertEquals("jsmith@nowhere.net", MailAddressResolver.resolve(u)); + } } @Test - public void testDelete() throws IOException { + public void testDelete() throws Exception { + { User user = User.get("John Smith", true, Collections.emptyMap()); user.save(); user.delete(); @@ -368,15 +377,18 @@ public class UserTest { assertFalse("User should be deleted from memory.", User.getAll().contains(user)); user = User.get("John Smith", false, Collections.emptyMap()); assertNull("User should be deleted from memory.", user); - User.reload(); + } + j.jenkins.reload(); + { boolean contained = false; for(User u: User.getAll()){ - if(u.getId().equals(user.getId())){ + if(u.getId().equals("John Smith")){ contained = true; break; } } assertFalse("User should not be loaded.", contained); + } } @Test @@ -414,6 +426,7 @@ public class UserTest { } + /* TODO cannot follow what this is purporting to test @Test public void testDoDoDelete() throws Exception { GlobalMatrixAuthorizationStrategy auth = new GlobalMatrixAuthorizationStrategy(); @@ -457,9 +470,8 @@ public class UserTest { } assertTrue("User should not delete himself from memory.", User.getAll().contains(user)); assertTrue("User should not delete his persistent data.", user.getConfigFile().exists()); - User.reload(); - assertNotNull("Deleted user should be loaded.",User.get(user.getId(),false, Collections.EMPTY_MAP)); } + */ @Test public void testHasPermission() throws IOException { diff --git a/test/src/test/java/jenkins/model/JenkinsReloadConfigurationTest.java b/test/src/test/java/jenkins/model/JenkinsReloadConfigurationTest.java index 0009b8f5b3..89016dae70 100644 --- a/test/src/test/java/jenkins/model/JenkinsReloadConfigurationTest.java +++ b/test/src/test/java/jenkins/model/JenkinsReloadConfigurationTest.java @@ -54,23 +54,9 @@ public class JenkinsReloadConfigurationTest { j.jenkins.reload(); } - @Test - public void reloadUserConfig() throws Exception { - User user = User.get("some_user", true, null); - user.setFullName("oldName"); - user.save(); - - replace("users/some_user/config.xml", "oldName", "newName"); - - assertEquals("oldName", user.getFullName()); - - User.reload(); - - assertEquals("newName", user.getFullName()); - } - @Test public void reloadUserConfigUsingGlobalReload() throws Exception { + { User user = User.get("some_user", true, null); user.setFullName("oldName"); user.save(); @@ -78,10 +64,11 @@ public class JenkinsReloadConfigurationTest { replace("users/some_user/config.xml", "oldName", "newName"); assertEquals("oldName", user.getFullName()); - + } j.jenkins.reload(); - - assertEquals("newName", user.getFullName()); + { + assertEquals("newName", User.getById("some_user", false).getFullName()); + } } @Test From 354f3802430bf114869796279305177a0091aa70 Mon Sep 17 00:00:00 2001 From: Kevin Formsma Date: Sat, 22 Jul 2017 14:03:35 -0400 Subject: [PATCH 028/109] [JENKINS-45519] Fix keepUndefinedParameters option for suppressing warnings (#2939) * Update ParametersAction.java Pull request 2687 added a 'false' setting for this flag to prevent warning messages from being logged, but the logic doesn't match the message or the documentation. This updates the check, so that the warning message is correctly suppressed if `hudson.model.ParametersAction.keepUndefinedParameters` is set to false. * Updated check to use optBoolean --- core/src/main/java/hudson/model/ParametersAction.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/hudson/model/ParametersAction.java b/core/src/main/java/hudson/model/ParametersAction.java index fa2ed5b013..6f7ecca9f8 100644 --- a/core/src/main/java/hudson/model/ParametersAction.java +++ b/core/src/main/java/hudson/model/ParametersAction.java @@ -316,8 +316,8 @@ public class ParametersAction implements RunAction2, Iterable, Q return parameters; } - String shouldKeepFlag = SystemProperties.getString(KEEP_UNDEFINED_PARAMETERS_SYSTEM_PROPERTY_NAME); - if ("true".equalsIgnoreCase(shouldKeepFlag)) { + Boolean shouldKeepFlag = SystemProperties.optBoolean(KEEP_UNDEFINED_PARAMETERS_SYSTEM_PROPERTY_NAME); + if (shouldKeepFlag != null && shouldKeepFlag.booleanValue()) { return parameters; } @@ -326,7 +326,7 @@ public class ParametersAction implements RunAction2, Iterable, Q for (ParameterValue v : this.parameters) { if (this.parameterDefinitionNames.contains(v.getName()) || isSafeParameter(v.getName())) { filteredParameters.add(v); - } else if ("false".equalsIgnoreCase(shouldKeepFlag)) { + } else if (shouldKeepFlag == null) { LOGGER.log(Level.WARNING, "Skipped parameter `{0}` as it is undefined on `{1}`. Set `-D{2}=true` to allow " + "undefined parameters to be injected as environment variables or `-D{3}=[comma-separated list]` to whitelist specific parameter names, " + "even though it represents a security breach or `-D{2}=false` to no longer show this message.", From 88e540cf9dbb6687224d32463f454943fc062fed Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Sun, 23 Jul 2017 20:57:12 -0700 Subject: [PATCH 029/109] [maven-release-plugin] prepare release jenkins-2.71 --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 0a8ec5658a..6c4b1b047c 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.71-SNAPSHOT + 2.71 cli diff --git a/core/pom.xml b/core/pom.xml index db4811997b..216b4ffef9 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.71-SNAPSHOT + 2.71 jenkins-core diff --git a/pom.xml b/pom.xml index 73c3aaca96..1b6c43ac85 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.71-SNAPSHOT + 2.71 pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - HEAD + jenkins-2.71 diff --git a/test/pom.xml b/test/pom.xml index 2edc52e101..ec05d52b63 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.71-SNAPSHOT + 2.71 test diff --git a/war/pom.xml b/war/pom.xml index a72e2c4bb1..0922838f28 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.71-SNAPSHOT + 2.71 jenkins-war From 85d6a780f61a0aa3c3b97f718f6d050f17602773 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Sun, 23 Jul 2017 20:57:12 -0700 Subject: [PATCH 030/109] [maven-release-plugin] prepare for next development iteration --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 6c4b1b047c..425689c1d8 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.71 + 2.72-SNAPSHOT cli diff --git a/core/pom.xml b/core/pom.xml index 216b4ffef9..dc3231db45 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.71 + 2.72-SNAPSHOT jenkins-core diff --git a/pom.xml b/pom.xml index 1b6c43ac85..0d5a01206f 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.71 + 2.72-SNAPSHOT pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - jenkins-2.71 + HEAD diff --git a/test/pom.xml b/test/pom.xml index ec05d52b63..8f62c5547e 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.71 + 2.72-SNAPSHOT test diff --git a/war/pom.xml b/war/pom.xml index 0922838f28..fd146f2cf3 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.71 + 2.72-SNAPSHOT jenkins-war From e97ac1ba36e064907e58dfc9a77f9f0f44cdd76b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jochen=20F=C3=BCrbacher?= Date: Wed, 26 Jul 2017 10:17:15 +0200 Subject: [PATCH 031/109] Fixed typo in German translation. --- core/src/main/resources/jenkins/slaves/Messages_de.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/resources/jenkins/slaves/Messages_de.properties b/core/src/main/resources/jenkins/slaves/Messages_de.properties index f101fba225..7f40698e9b 100644 --- a/core/src/main/resources/jenkins/slaves/Messages_de.properties +++ b/core/src/main/resources/jenkins/slaves/Messages_de.properties @@ -24,4 +24,4 @@ JnlpSlaveAgentProtocol4.displayName=Java-Web-Start-Agentenprotokoll Version 4 (TLS-Verschl\u00FCsselung) JnlpSlaveAgentProtocol2.displayName=Java-Web-Start-Agentenprotokoll Version 2 (unverschl\u00FCsselt) JnlpSlaveAgentProtocol.displayName=Java-Web-Start-Agentenprotokoll Version 1 (unverschl\u00FCsselt) -JnlpSlaveAgentProtocol3.displayName=Java-Web-Start-Agentenprotokoll Version (einfache Verschl\u00FCsselung) +JnlpSlaveAgentProtocol3.displayName=Java-Web-Start-Agentenprotokoll Version 3 (einfache Verschl\u00FCsselung) From 2d65333658ccc558941cbce438e08a1c005820b8 Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Thu, 27 Jul 2017 18:16:03 -0400 Subject: [PATCH 032/109] Avoid calling Task.getFullDisplayName unless and until we need to. --- core/src/main/java/hudson/model/Queue.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/core/src/main/java/hudson/model/Queue.java b/core/src/main/java/hudson/model/Queue.java index a5ec695c71..5938360ed8 100644 --- a/core/src/main/java/hudson/model/Queue.java +++ b/core/src/main/java/hudson/model/Queue.java @@ -1540,7 +1540,7 @@ public class Queue extends ResourceController implements Saveable { continue; } - String taskDisplayName = p.task.getFullDisplayName(); + String taskDisplayName = LOGGER.isLoggable(Level.FINEST) ? p.task.getFullDisplayName() : null; if (p.task instanceof FlyweightTask) { Runnable r = makeFlyWeightTaskBuildable(new BuildableItem(p)); @@ -1617,7 +1617,7 @@ public class Queue extends ResourceController implements Saveable { */ private @CheckForNull Runnable makeBuildable(final BuildableItem p) { if (p.task instanceof FlyweightTask) { - String taskDisplayName = p.task.getFullDisplayName(); + String taskDisplayName = LOGGER.isLoggable(Level.FINEST) ? p.task.getFullDisplayName() : null; if (!isBlockedByShutdown(p.task)) { Runnable runnable = makeFlyWeightTaskBuildable(p); @@ -1665,7 +1665,8 @@ public class Queue extends ResourceController implements Saveable { hash.addAll(hashSource); Label lbl = p.getAssignedLabel(); - for (Node n : hash.list(p.task.getFullDisplayName())) { + String fullDisplayName = p.task.getFullDisplayName(); + for (Node n : hash.list(fullDisplayName)) { final Computer c = n.toComputer(); if (c == null || c.isOffline()) { continue; @@ -1677,7 +1678,7 @@ public class Queue extends ResourceController implements Saveable { continue; } - LOGGER.log(Level.FINEST, "Creating flyweight task {0} for computer {1}", new Object[]{p.task.getFullDisplayName(), c.getName()}); + LOGGER.log(Level.FINEST, "Creating flyweight task {0} for computer {1}", new Object[]{fullDisplayName, c.getName()}); return new Runnable() { @Override public void run() { c.startFlyWeightTask(new WorkUnitContext(p).createWorkUnit(p.task)); From 8d7f9b5ee0c1875d8664c34b1a23adb0fd91894e Mon Sep 17 00:00:00 2001 From: Daniel Beck Date: Fri, 28 Jul 2017 23:36:36 +0200 Subject: [PATCH 033/109] [JENKINS-38185] Always follow redirects for DownloadService --- .../main/java/hudson/model/DownloadService.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/hudson/model/DownloadService.java b/core/src/main/java/hudson/model/DownloadService.java index ad26b130ae..6c28c80d0f 100644 --- a/core/src/main/java/hudson/model/DownloadService.java +++ b/core/src/main/java/hudson/model/DownloadService.java @@ -40,7 +40,9 @@ import java.io.File; import java.io.IOException; import java.io.InputStream; import java.lang.reflect.Field; +import java.net.HttpURLConnection; import java.net.URL; +import java.net.URLConnection; import java.net.URLEncoder; import java.util.ArrayList; import java.util.List; @@ -169,7 +171,12 @@ public class DownloadService extends PageDecorator { */ @Restricted(NoExternalUse.class) public static String loadJSON(URL src) throws IOException { - try (InputStream is = ProxyConfiguration.open(src).getInputStream()) { + URLConnection con = ProxyConfiguration.open(src); + if (con instanceof HttpURLConnection) { + // prevent problems from misbehaving plugins disabling redirects by default + ((HttpURLConnection) con).setInstanceFollowRedirects(true); + } + try (InputStream is = con.getInputStream()) { String jsonp = IOUtils.toString(is, "UTF-8"); int start = jsonp.indexOf('{'); int end = jsonp.lastIndexOf('}'); @@ -189,7 +196,12 @@ public class DownloadService extends PageDecorator { */ @Restricted(NoExternalUse.class) public static String loadJSONHTML(URL src) throws IOException { - try (InputStream is = ProxyConfiguration.open(src).getInputStream()) { + URLConnection con = ProxyConfiguration.open(src); + if (con instanceof HttpURLConnection) { + // prevent problems from misbehaving plugins disabling redirects by default + ((HttpURLConnection) con).setInstanceFollowRedirects(true); + } + try (InputStream is = con.getInputStream()) { String jsonp = IOUtils.toString(is, "UTF-8"); String preamble = "window.parent.postMessage(JSON.stringify("; int start = jsonp.indexOf(preamble); From 9dc2cdbb4892ddfb1579658fc88b4018a1ad7d8a Mon Sep 17 00:00:00 2001 From: Oleg Nenashev Date: Sat, 29 Jul 2017 21:32:16 +0300 Subject: [PATCH 034/109] [JENKINS-44112] - Enable WorkDir in JNLPLauncher (#2945) * [JENKINS-44112] - Enable Work Directories by defaul in new agents with JNLP launcher * [JENKINS-44112] - Add test for the legacy data migration * [JENKINS-44112] - Add test for API calls * [JENKINS-44112] - Apply new APIs within core and tests * [JENKINS-44112] - Cleanup tests * [JENKINS-44112] - Cleanup API of JNLPLauncher * [JENKINS-44112] - Address the leftover code review comments --- core/src/main/java/hudson/model/Slave.java | 5 +- .../main/java/hudson/slaves/JNLPLauncher.java | 72 +++++- .../java/hudson/util/ArgumentListBuilder.java | 11 + .../slaves/RemotingWorkDirSettings.java | 229 ++++++++++++++++++ .../hudson/slaves/JNLPLauncher/config.jelly | 1 + .../hudson/slaves/JNLPLauncher/main.jelly | 4 +- .../SlaveComputer/slave-agent.jnlp.jelly | 16 ++ .../RemotingWorkDirSettings/config.jelly | 39 +++ .../help-disabled.html | 4 + .../help-failIfWorkDirIsMissing.html | 4 + .../help-internalDir.html | 4 + .../help-workDirPath.html | 4 + .../bugs/JnlpAccessWithSecuredHudsonTest.java | 2 +- .../java/hudson/slaves/JNLPLauncherTest.java | 62 ++++- .../hudson/tools/InstallerTranslatorTest.java | 2 +- .../jenkins/security/Security218Test.java | 2 +- .../testNoWorkDirMigration/config.xml | 37 +++ .../nodes/Foo/config.xml | 14 ++ 18 files changed, 495 insertions(+), 17 deletions(-) create mode 100644 core/src/main/java/jenkins/slaves/RemotingWorkDirSettings.java create mode 100644 core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/config.jelly create mode 100644 core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-disabled.html create mode 100644 core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-failIfWorkDirIsMissing.html create mode 100644 core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-internalDir.html create mode 100644 core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-workDirPath.html create mode 100644 test/src/test/resources/hudson/slaves/JNLPLauncherTest/testNoWorkDirMigration/config.xml create mode 100644 test/src/test/resources/hudson/slaves/JNLPLauncherTest/testNoWorkDirMigration/nodes/Foo/config.xml diff --git a/core/src/main/java/hudson/model/Slave.java b/core/src/main/java/hudson/model/Slave.java index 7d3721fbbd..4224f19cfc 100644 --- a/core/src/main/java/hudson/model/Slave.java +++ b/core/src/main/java/hudson/model/Slave.java @@ -225,7 +225,8 @@ public abstract class Slave extends Node implements Serializable { } public ComputerLauncher getLauncher() { - return launcher == null ? new JNLPLauncher() : launcher; + // Default launcher does not use Work Directory + return launcher == null ? new JNLPLauncher(false) : launcher; } public void setLauncher(ComputerLauncher launcher) { @@ -504,7 +505,7 @@ public abstract class Slave extends Node implements Serializable { // convert the old format to the new one if (launcher == null) { launcher = (agentCommand == null || agentCommand.trim().length() == 0) - ? new JNLPLauncher() + ? new JNLPLauncher(false) : new CommandLauncher(agentCommand); } if(nodeProperties==null) diff --git a/core/src/main/java/hudson/slaves/JNLPLauncher.java b/core/src/main/java/hudson/slaves/JNLPLauncher.java index c83382f796..18c97e55a5 100644 --- a/core/src/main/java/hudson/slaves/JNLPLauncher.java +++ b/core/src/main/java/hudson/slaves/JNLPLauncher.java @@ -25,13 +25,17 @@ package hudson.slaves; import hudson.Extension; import hudson.Util; +import hudson.model.Computer; import hudson.model.Descriptor; import hudson.model.DescriptorVisibilityFilter; import hudson.model.TaskListener; import javax.annotation.CheckForNull; import javax.annotation.Nonnull; import jenkins.model.Jenkins; +import jenkins.slaves.RemotingWorkDirSettings; import org.jenkinsci.Symbol; +import org.kohsuke.accmod.Restricted; +import org.kohsuke.accmod.restrictions.NoExternalUse; import org.kohsuke.stapler.DataBoundConstructor; /** @@ -52,24 +56,72 @@ public class JNLPLauncher extends ComputerLauncher { * * @since 1.250 */ + @CheckForNull public final String tunnel; /** * Additional JVM arguments. Can be null. * @since 1.297 */ + @CheckForNull public final String vmargs; + @Nonnull + private RemotingWorkDirSettings workDirSettings; + @DataBoundConstructor - public JNLPLauncher(String tunnel, String vmargs) { + public JNLPLauncher(@CheckForNull String tunnel, @CheckForNull String vmargs, @Nonnull RemotingWorkDirSettings workDirSettings) { this.tunnel = Util.fixEmptyAndTrim(tunnel); this.vmargs = Util.fixEmptyAndTrim(vmargs); + this.workDirSettings = workDirSettings; + } + + @Deprecated + public JNLPLauncher(String tunnel, String vmargs) { + // TODO: Enable workDir by default in API? Otherwise classes inheriting from JNLPLauncher + // will need to enable the feature by default as well. + // https://github.com/search?q=org%3Ajenkinsci+%22extends+JNLPLauncher%22&type=Code + this(tunnel, vmargs, RemotingWorkDirSettings.getDisabledDefaults()); } + /** + * @deprecated This Launcher does not enable the work directory. + * It is recommended to use {@link #JNLPLauncher(boolean)} + */ + @Deprecated public JNLPLauncher() { - this(null,null); + this(false); + } + + /** + * Constructor with default options. + * + * @param enableWorkDir If {@code true}, the work directory will be enabled with default settings. + */ + public JNLPLauncher(boolean enableWorkDir) { + this(null, null, enableWorkDir + ? RemotingWorkDirSettings.getEnabledDefaults() + : RemotingWorkDirSettings.getDisabledDefaults()); + } + + protected Object readResolve() { + if (workDirSettings == null) { + // For the migrated code agents are always disabled + workDirSettings = RemotingWorkDirSettings.getDisabledDefaults(); + } + return this; } + /** + * Returns work directory settings. + * + * @since TODO + */ + @Nonnull + public RemotingWorkDirSettings getWorkDirSettings() { + return workDirSettings; + } + @Override public boolean isLaunchSupported() { return false; @@ -86,6 +138,22 @@ public class JNLPLauncher extends ComputerLauncher { */ public static /*almost final*/ Descriptor DESCRIPTOR; + /** + * Gets work directory options as a String. + * + * In public API {@code getWorkDirSettings().toCommandLineArgs(computer)} should be used instead + * @param computer Computer + * @return Command line options for launching with the WorkDir + */ + @Nonnull + @Restricted(NoExternalUse.class) + public String getWorkDirOptions(@Nonnull Computer computer) { + if(!(computer instanceof SlaveComputer)) { + return ""; + } + return workDirSettings.toCommandLineString((SlaveComputer)computer); + } + @Extension @Symbol("jnlp") public static class DescriptorImpl extends Descriptor { public DescriptorImpl() { diff --git a/core/src/main/java/hudson/util/ArgumentListBuilder.java b/core/src/main/java/hudson/util/ArgumentListBuilder.java index 87e2683587..fb488b2471 100644 --- a/core/src/main/java/hudson/util/ArgumentListBuilder.java +++ b/core/src/main/java/hudson/util/ArgumentListBuilder.java @@ -38,6 +38,7 @@ import java.io.Serializable; import java.io.File; import java.io.IOException; import java.util.Set; +import javax.annotation.Nonnull; /** * Used to build up arguments for a process invocation. @@ -132,6 +133,16 @@ public class ArgumentListBuilder implements Serializable, Cloneable { } return this; } + + /** + * @since TODO + */ + public ArgumentListBuilder add(@Nonnull Iterable args) { + for (String arg : args) { + add(arg); + } + return this; + } /** * Decomposes the given token into multiple arguments by splitting via whitespace. diff --git a/core/src/main/java/jenkins/slaves/RemotingWorkDirSettings.java b/core/src/main/java/jenkins/slaves/RemotingWorkDirSettings.java new file mode 100644 index 0000000000..c82a040145 --- /dev/null +++ b/core/src/main/java/jenkins/slaves/RemotingWorkDirSettings.java @@ -0,0 +1,229 @@ +/* + * The MIT License + * + * Copyright (c) 2017 CloudBees, 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. + */ +package jenkins.slaves; + +import hudson.Extension; +import hudson.Util; +import hudson.model.Describable; +import hudson.model.Descriptor; +import hudson.model.Slave; +import hudson.slaves.SlaveComputer; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import javax.annotation.CheckForNull; +import javax.annotation.Nonnull; +import jenkins.model.Jenkins; +import org.kohsuke.accmod.Restricted; +import org.kohsuke.accmod.restrictions.NoExternalUse; +import org.kohsuke.stapler.DataBoundConstructor; + +/** + * Defines settings of the Remoting work directory. + * + * This class contains Remoting Work Directory settings, which can be used when starting Jenkins agents. + * See Remoting Work Dir Documentation. + * + * @author Oleg Nenashev + * @since TODO + */ +public class RemotingWorkDirSettings implements Describable { + + private static final String DEFAULT_INTERNAL_DIR = "remoting"; + private static final RemotingWorkDirSettings LEGACY_DEFAULT = new RemotingWorkDirSettings(true, null, DEFAULT_INTERNAL_DIR, false); + private static final RemotingWorkDirSettings ENABLED_DEFAULT = new RemotingWorkDirSettings(false, null, DEFAULT_INTERNAL_DIR, false); + + + private final boolean disabled; + @CheckForNull + private final String workDirPath; + @Nonnull + private final String internalDir; + private final boolean failIfWorkDirIsMissing; + + @DataBoundConstructor + public RemotingWorkDirSettings(boolean disabled, + @CheckForNull String workDirPath, @CheckForNull String internalDir, + boolean failIfWorkDirIsMissing) { + this.disabled = disabled; + this.workDirPath = Util.fixEmptyAndTrim(workDirPath); + this.failIfWorkDirIsMissing = failIfWorkDirIsMissing; + String internalDirName = Util.fixEmptyAndTrim(internalDir); + this.internalDir = internalDirName != null ? internalDirName : DEFAULT_INTERNAL_DIR; + } + + public RemotingWorkDirSettings() { + // Enabled by default + this(false, null, DEFAULT_INTERNAL_DIR, false); + } + + /** + * Check if workdir is disabled. + * + * @return {@code true} if the property is disabled. + * In such case Remoting will use the legacy mode. + */ + public boolean isDisabled() { + return disabled; + } + + /** + * Indicates that agent root directory should be used as work directory. + * + * @return {@code true} if the agent root should be a work directory. + */ + public boolean isUseAgentRootDir() { + return workDirPath == null; + } + + /** + * Check if startup should fail if the workdir is missing. + * + * @return {@code true} if Remoting should fail if the the work directory is missing instead of creating it + */ + public boolean isFailIfWorkDirIsMissing() { + return failIfWorkDirIsMissing; + } + + /** + * Gets path to the custom workdir path. + * + * @return Custom workdir path. + * If {@code null}, an agent root directory path should be used instead. + */ + @CheckForNull + public String getWorkDirPath() { + return workDirPath; + } + + @Nonnull + public String getInternalDir() { + return internalDir; + } + + @Override + public Descriptor getDescriptor() { + return Jenkins.getInstance().getDescriptor(RemotingWorkDirSettings.class); + } + + /** + * Gets list of command-line arguments for the work directory. + * @param computer Computer, for which the arguments are being created + * @return Non-modifiable list of command-line arguments + */ + public List toCommandLineArgs(@Nonnull SlaveComputer computer) { + if(disabled) { + return Collections.emptyList(); + } + + ArrayList args = new ArrayList<>(); + args.add("-workDir"); + if (workDirPath == null) { + Slave node = computer.getNode(); + if (node == null) { + // It is not possible to launch this node anyway. + return Collections.emptyList(); + } + args.add(node.getRemoteFS()); + } else { + args.add(workDirPath); + } + + if (!DEFAULT_INTERNAL_DIR.equals(internalDir)) { + args.add("-internalDir"); + args.add(internalDir);; + } + + if (failIfWorkDirIsMissing) { + args.add(" -failIfWorkDirIsMissing"); + } + + return Collections.unmodifiableList(args); + } + + /** + * Gets a command line string, which can be passed to agent start command. + * + * @param computer Computer, for which the arguments need to be constructed. + * @return Command line arguments. + * It may be empty if the working directory is disabled or + * if the Computer type is not {@link SlaveComputer}. + */ + @Nonnull + @Restricted(NoExternalUse.class) + public String toCommandLineString(@Nonnull SlaveComputer computer) { + if(disabled) { + return ""; + } + + StringBuilder bldr = new StringBuilder(); + bldr.append("-workDir \""); + if (workDirPath == null) { + Slave node = computer.getNode(); + if (node == null) { + // It is not possible to launch this node anyway. + return ""; + } + bldr.append(node.getRemoteFS()); + } else { + bldr.append(workDirPath); + } + bldr.append("\""); + + if (!DEFAULT_INTERNAL_DIR.equals(internalDir)) { + bldr.append(" -internalDir \""); + bldr.append(internalDir); + bldr.append("\""); + } + + if (failIfWorkDirIsMissing) { + bldr.append(" -failIfWorkDirIsMissing"); + } + + return bldr.toString(); + } + + @Extension + public static class DescriptorImpl extends Descriptor { + + } + + /** + * Gets default settings for the disabled work directory. + * + * @return Legacy value: disabled work directory. + */ + @Nonnull + public static RemotingWorkDirSettings getDisabledDefaults() { + return LEGACY_DEFAULT; + } + + /** + * Gets default settings of the enabled work directory. + */ + @Nonnull + public static RemotingWorkDirSettings getEnabledDefaults() { + return ENABLED_DEFAULT; + } +} diff --git a/core/src/main/resources/hudson/slaves/JNLPLauncher/config.jelly b/core/src/main/resources/hudson/slaves/JNLPLauncher/config.jelly index b1d938a50d..85aa8aafda 100644 --- a/core/src/main/resources/hudson/slaves/JNLPLauncher/config.jelly +++ b/core/src/main/resources/hudson/slaves/JNLPLauncher/config.jelly @@ -24,6 +24,7 @@ THE SOFTWARE. + diff --git a/core/src/main/resources/hudson/slaves/JNLPLauncher/main.jelly b/core/src/main/resources/hudson/slaves/JNLPLauncher/main.jelly index e371a9b040..e5ddc0ba46 100644 --- a/core/src/main/resources/hudson/slaves/JNLPLauncher/main.jelly +++ b/core/src/main/resources/hudson/slaves/JNLPLauncher/main.jelly @@ -57,7 +57,7 @@ THE SOFTWARE.

${%Or if the agent is headless:}

-
java${it.launcher.vmargs == null ? '' : ' ' + it.launcher.vmargs} -jar slave.jar -jnlpUrl ${h.inferHudsonURL(request)}${it.url}slave-agent.jnlp
+
java${it.launcher.vmargs == null ? '' : ' ' + it.launcher.vmargs} -jar slave.jar -jnlpUrl ${h.inferHudsonURL(request)}${it.url}slave-agent.jnlp ${it.launcher.getWorkDirOptions(it)}
@@ -66,7 +66,7 @@ THE SOFTWARE. ${%Run from agent command line:}

-
java${it.launcher.vmargs == null ? '' : ' ' + it.launcher.vmargs} -jar slave.jar -jnlpUrl ${h.inferHudsonURL(request)}${it.url}slave-agent.jnlp -secret ${it.jnlpMac}
+
java${it.launcher.vmargs == null ? '' : ' ' + it.launcher.vmargs} -jar slave.jar -jnlpUrl ${h.inferHudsonURL(request)}${it.url}slave-agent.jnlp -secret ${it.jnlpMac} ${it.launcher.getWorkDirOptions(it)}
diff --git a/core/src/main/resources/hudson/slaves/SlaveComputer/slave-agent.jnlp.jelly b/core/src/main/resources/hudson/slaves/SlaveComputer/slave-agent.jnlp.jelly index 07f6f25144..1f55586f1d 100644 --- a/core/src/main/resources/hudson/slaves/SlaveComputer/slave-agent.jnlp.jelly +++ b/core/src/main/resources/hudson/slaves/SlaveComputer/slave-agent.jnlp.jelly @@ -66,6 +66,22 @@ THE SOFTWARE. -tunnel ${it.launcher.tunnel} + + -workDir + + + ${it.node.remoteFS} + + + ${it.launcher.workDirSettings.workDirPath} + + + -internalDir + ${it.launcher.workDirSettings.internalDir} + + -failIfWorkDirIsMissing + + -url ${rootURL} diff --git a/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/config.jelly b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/config.jelly new file mode 100644 index 0000000000..3c8fc13315 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/config.jelly @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + diff --git a/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-disabled.html b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-disabled.html new file mode 100644 index 0000000000..d35717026a --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-disabled.html @@ -0,0 +1,4 @@ +
+ Allows disabling Remoting Work Directory for the agent. + In such case the agent will be running in the legacy mode without logging enabled by default. +
diff --git a/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-failIfWorkDirIsMissing.html b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-failIfWorkDirIsMissing.html new file mode 100644 index 0000000000..fbb4c572cc --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-failIfWorkDirIsMissing.html @@ -0,0 +1,4 @@ +
+ If defined, Remoting will fail at startup if the target work directory is missing. + The option may be used to detect infrastructure issues like failed mount. +
diff --git a/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-internalDir.html b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-internalDir.html new file mode 100644 index 0000000000..39f1b29fe4 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-internalDir.html @@ -0,0 +1,4 @@ +
+ Defines a storage directory for the internal data. + This directory will be created within the Remoting working directory. +
diff --git a/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-workDirPath.html b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-workDirPath.html new file mode 100644 index 0000000000..761945eaab --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-workDirPath.html @@ -0,0 +1,4 @@ +
+ If defined, a custom Remoting work directory will be used instead of the Agent Root Directory. + This option has no environment variable resolution so far, it is recommended to use only absolute paths. +
diff --git a/test/src/test/java/hudson/bugs/JnlpAccessWithSecuredHudsonTest.java b/test/src/test/java/hudson/bugs/JnlpAccessWithSecuredHudsonTest.java index af0c270163..5ba3d079de 100644 --- a/test/src/test/java/hudson/bugs/JnlpAccessWithSecuredHudsonTest.java +++ b/test/src/test/java/hudson/bugs/JnlpAccessWithSecuredHudsonTest.java @@ -64,7 +64,7 @@ public class JnlpAccessWithSecuredHudsonTest extends HudsonTestCase { * Creates a new slave that needs to be launched via JNLP. */ protected Slave createNewJnlpSlave(String name) throws Exception { - return new DumbSlave(name,"",System.getProperty("java.io.tmpdir")+'/'+name,"2", Mode.NORMAL, "", new JNLPLauncher(), RetentionStrategy.INSTANCE, Collections.EMPTY_LIST); + return new DumbSlave(name,"",System.getProperty("java.io.tmpdir")+'/'+name,"2", Mode.NORMAL, "", new JNLPLauncher(true), RetentionStrategy.INSTANCE, Collections.EMPTY_LIST); } @PresetData(DataSet.NO_ANONYMOUS_READACCESS) diff --git a/test/src/test/java/hudson/slaves/JNLPLauncherTest.java b/test/src/test/java/hudson/slaves/JNLPLauncherTest.java index e30f365a6e..3f44428525 100644 --- a/test/src/test/java/hudson/slaves/JNLPLauncherTest.java +++ b/test/src/test/java/hudson/slaves/JNLPLauncherTest.java @@ -51,11 +51,14 @@ import java.util.concurrent.TimeUnit; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; +import static org.junit.Assert.assertThat; import static org.junit.Assert.fail; import java.awt.*; +import static org.hamcrest.Matchers.instanceOf; import org.junit.rules.TemporaryFolder; import org.jvnet.hudson.test.Issue; +import org.jvnet.hudson.test.recipes.LocalData; /** * Tests of {@link JNLPLauncher}. @@ -73,10 +76,10 @@ public class JNLPLauncherTest { public void testLaunch() throws Exception { Assume.assumeFalse("Skipping JNLPLauncherTest.testLaunch because we are running headless", GraphicsEnvironment.isHeadless()); - Computer c = addTestSlave(); + Computer c = addTestSlave(false); launchJnlpAndVerify(c, buildJnlpArgs(c)); } - + /** * Starts a JNLP agent and makes sure it successfully connects to Jenkins. */ @@ -86,7 +89,7 @@ public class JNLPLauncherTest { Assume.assumeFalse("Skipping JNLPLauncherTest.testLaunch because we are running headless", GraphicsEnvironment.isHeadless()); File workDir = tmpDir.newFolder("workDir"); - Computer c = addTestSlave(); + Computer c = addTestSlave(false); launchJnlpAndVerify(c, buildJnlpArgs(c).add("-workDir", workDir.getAbsolutePath())); assertTrue("Remoting work dir should have been created", new File(workDir, "remoting").exists()); } @@ -97,22 +100,56 @@ public class JNLPLauncherTest { */ @Test public void testHeadlessLaunch() throws Exception { - Computer c = addTestSlave(); + Computer c = addTestSlave(false); launchJnlpAndVerify(c, buildJnlpArgs(c).add("-arg","-headless")); // make sure that onOffline gets called just the right number of times assertEquals(1, ComputerListener.all().get(ListenerImpl.class).offlined); } @Test - @Issue("JENKINS-39370") + @Issue("JENKINS-44112") public void testHeadlessLaunchWithWorkDir() throws Exception { Assume.assumeFalse("Skipping JNLPLauncherTest.testLaunch because we are running headless", GraphicsEnvironment.isHeadless()); + + Computer c = addTestSlave(true); + launchJnlpAndVerify(c, buildJnlpArgs(c).add("-arg","-headless")); + assertEquals(1, ComputerListener.all().get(ListenerImpl.class).offlined); + } + + @Test + @Issue("JENKINS-39370") + public void testHeadlessLaunchWithCustomWorkDir() throws Exception { + Assume.assumeFalse("Skipping JNLPLauncherTest.testLaunch because we are running headless", GraphicsEnvironment.isHeadless()); File workDir = tmpDir.newFolder("workDir"); - Computer c = addTestSlave(); + Computer c = addTestSlave(false); launchJnlpAndVerify(c, buildJnlpArgs(c).add("-arg","-headless", "-workDir", workDir.getAbsolutePath())); assertEquals(1, ComputerListener.all().get(ListenerImpl.class).offlined); } + + @Test + @LocalData + @Issue("JENKINS-44112") + public void testNoWorkDirMigration() throws Exception { + Computer computer = j.jenkins.getComputer("Foo"); + assertThat(computer, instanceOf(SlaveComputer.class)); + + SlaveComputer c = (SlaveComputer)computer; + ComputerLauncher launcher = c.getLauncher(); + assertThat(launcher, instanceOf(JNLPLauncher.class)); + JNLPLauncher jnlpLauncher = (JNLPLauncher)launcher; + assertNotNull("Work Dir Settings should be defined", + jnlpLauncher.getWorkDirSettings()); + assertTrue("Work directory should be disabled for the migrated agent", + jnlpLauncher.getWorkDirSettings().isDisabled()); + } + + @Issue("JENKINS-44112") + public void testDefaults() throws Exception { + String errorMsg = "Work directory should be disabled for agents created via old API"; + assertTrue(errorMsg, new JNLPLauncher().getWorkDirSettings().isDisabled()); + assertTrue(errorMsg, new JNLPLauncher(null, null).getWorkDirSettings().isDisabled()); + } @TestExtension("testHeadlessLaunch") public static class ListenerImpl extends ComputerListener { @@ -132,6 +169,15 @@ public class JNLPLauncherTest { args.add("-headless","-basedir"); args.add(j.createTmpDir()); args.add("-nosecurity","-jnlp", getJnlpLink(c)); + + if (c instanceof SlaveComputer) { + SlaveComputer sc = (SlaveComputer)c; + ComputerLauncher launcher = sc.getLauncher(); + if (launcher instanceof JNLPLauncher) { + args.add(((JNLPLauncher)launcher).getWorkDirSettings().toCommandLineArgs(sc)); + } + } + return args; } @@ -178,11 +224,11 @@ public class JNLPLauncherTest { /** * Adds a JNLP {@link Slave} to the system and returns it. */ - private Computer addTestSlave() throws Exception { + private Computer addTestSlave(boolean enableWorkDir) throws Exception { List slaves = new ArrayList(j.jenkins.getNodes()); File dir = Util.createTempDir(); slaves.add(new DumbSlave("test","dummy",dir.getAbsolutePath(),"1", Mode.NORMAL, "", - new JNLPLauncher(), RetentionStrategy.INSTANCE, new ArrayList>())); + new JNLPLauncher(enableWorkDir), RetentionStrategy.INSTANCE, new ArrayList>())); j.jenkins.setNodes(slaves); Computer c = j.jenkins.getComputer("test"); assertNotNull(c); diff --git a/test/src/test/java/hudson/tools/InstallerTranslatorTest.java b/test/src/test/java/hudson/tools/InstallerTranslatorTest.java index 5319d4e406..dc0057fa00 100644 --- a/test/src/test/java/hudson/tools/InstallerTranslatorTest.java +++ b/test/src/test/java/hudson/tools/InstallerTranslatorTest.java @@ -52,7 +52,7 @@ public class InstallerTranslatorTest { @Issue("JENKINS-23517") @Test public void offlineNodeForJDK() throws Exception { - Node slave = new DumbSlave("disconnected-slave", null, "/wherever", "1", Node.Mode.NORMAL, null, new JNLPLauncher(), RetentionStrategy.NOOP, Collections.>emptyList()); + Node slave = new DumbSlave("disconnected-slave", null, "/wherever", "1", Node.Mode.NORMAL, null, new JNLPLauncher(true), RetentionStrategy.NOOP, Collections.>emptyList()); String globalDefaultLocation = "/usr/lib/jdk"; JDK jdk = new JDK("my-jdk", globalDefaultLocation, Collections.singletonList(new InstallSourceProperty(Collections.singletonList(new CommandInstaller(null, "irrelevant", "/opt/jdk"))))); r.jenkins.getJDKs().add(jdk); diff --git a/test/src/test/java/jenkins/security/Security218Test.java b/test/src/test/java/jenkins/security/Security218Test.java index 7d4facc44a..9892aebe7d 100644 --- a/test/src/test/java/jenkins/security/Security218Test.java +++ b/test/src/test/java/jenkins/security/Security218Test.java @@ -80,7 +80,7 @@ public class Security218Test implements Serializable { * @see #launchJnlpSlave(Slave) */ public DumbSlave createJnlpSlave(String name) throws Exception { - DumbSlave s = new DumbSlave(name, "", System.getProperty("java.io.tmpdir") + '/' + name, "2", Mode.NORMAL, "", new JNLPLauncher(), RetentionStrategy.INSTANCE, Collections.EMPTY_LIST); + DumbSlave s = new DumbSlave(name, "", System.getProperty("java.io.tmpdir") + '/' + name, "2", Mode.NORMAL, "", new JNLPLauncher(true), RetentionStrategy.INSTANCE, Collections.EMPTY_LIST); j.jenkins.addNode(s); return s; } diff --git a/test/src/test/resources/hudson/slaves/JNLPLauncherTest/testNoWorkDirMigration/config.xml b/test/src/test/resources/hudson/slaves/JNLPLauncherTest/testNoWorkDirMigration/config.xml new file mode 100644 index 0000000000..6e7f8d86b1 --- /dev/null +++ b/test/src/test/resources/hudson/slaves/JNLPLauncherTest/testNoWorkDirMigration/config.xml @@ -0,0 +1,37 @@ + + + + 1.0 + 2 + NORMAL + true + + + false + + ${ITEM_ROOTDIR}/workspace + ${ITEM_ROOTDIR}/builds + + + + + + 0 + + + + all + false + false + + + + all + 0 + + JNLP4-connect + + + + + \ No newline at end of file diff --git a/test/src/test/resources/hudson/slaves/JNLPLauncherTest/testNoWorkDirMigration/nodes/Foo/config.xml b/test/src/test/resources/hudson/slaves/JNLPLauncherTest/testNoWorkDirMigration/nodes/Foo/config.xml new file mode 100644 index 0000000000..27c4fe4c21 --- /dev/null +++ b/test/src/test/resources/hudson/slaves/JNLPLauncherTest/testNoWorkDirMigration/nodes/Foo/config.xml @@ -0,0 +1,14 @@ + + + Foo + + /myfs/jenkins/agent + 1 + NORMAL + + + + + + + From 564ca0b6d7f50c3b1164f3f1de8dad5c8c89a8cb Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Sun, 30 Jul 2017 08:42:31 -0400 Subject: [PATCH 035/109] [JENKINS-45553] - Cache the Mac so we do not need to constantly recreate it (#2948) [JENKINS-45553] - Cache the Mac so we do not need to constantly recreate it --- .../main/java/jenkins/security/HMACConfidentialKey.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/jenkins/security/HMACConfidentialKey.java b/core/src/main/java/jenkins/security/HMACConfidentialKey.java index 71a0c2eb24..4a520cd82e 100644 --- a/core/src/main/java/jenkins/security/HMACConfidentialKey.java +++ b/core/src/main/java/jenkins/security/HMACConfidentialKey.java @@ -27,6 +27,7 @@ import java.util.Arrays; */ public class HMACConfidentialKey extends ConfidentialKey { private volatile SecretKey key; + private Mac mac; private final int length; /** @@ -61,12 +62,14 @@ public class HMACConfidentialKey extends ConfidentialKey { this(owner,shortName,Integer.MAX_VALUE); } - /** * Computes the message authentication code for the specified byte sequence. */ - public byte[] mac(byte[] message) { - return chop(createMac().doFinal(message)); + public synchronized byte[] mac(byte[] message) { + if (mac == null) { + mac = createMac(); + } + return chop(mac.doFinal(message)); } /** From 5f125d110eb9f65ec6bd6030466df846c4c96f34 Mon Sep 17 00:00:00 2001 From: Andrew Bayer Date: Sun, 30 Jul 2017 08:44:03 -0400 Subject: [PATCH 036/109] [FIXED JENKINS-20272] Don't monitor response on offline agents (#2911) * [FIXED JENKINS-20272] Don't monitor response on offline agents * Updating to only not check if channel is null. * Fix broken test. --- .../node_monitors/ResponseTimeMonitor.java | 4 +- .../ResponseTimeMonitorTest.java | 48 +++++++++++++++++++ 2 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 test/src/test/java/hudson/node_monitors/ResponseTimeMonitorTest.java diff --git a/core/src/main/java/hudson/node_monitors/ResponseTimeMonitor.java b/core/src/main/java/hudson/node_monitors/ResponseTimeMonitor.java index 652b2217fb..d7241e9eff 100644 --- a/core/src/main/java/hudson/node_monitors/ResponseTimeMonitor.java +++ b/core/src/main/java/hudson/node_monitors/ResponseTimeMonitor.java @@ -23,7 +23,6 @@ */ package hudson.node_monitors; -import hudson.Util; import hudson.Extension; import hudson.model.Computer; import hudson.remoting.Callable; @@ -49,6 +48,9 @@ public class ResponseTimeMonitor extends NodeMonitor { public static final AbstractNodeMonitorDescriptor DESCRIPTOR = new AbstractAsyncNodeMonitorDescriptor() { @Override protected Callable createCallable(Computer c) { + if (c.getChannel() == null) { + return null; + } return new Step1(get(c)); } diff --git a/test/src/test/java/hudson/node_monitors/ResponseTimeMonitorTest.java b/test/src/test/java/hudson/node_monitors/ResponseTimeMonitorTest.java new file mode 100644 index 0000000000..8bd2c5640a --- /dev/null +++ b/test/src/test/java/hudson/node_monitors/ResponseTimeMonitorTest.java @@ -0,0 +1,48 @@ +package hudson.node_monitors; + +import hudson.model.User; +import hudson.slaves.DumbSlave; +import hudson.slaves.OfflineCause; +import hudson.slaves.SlaveComputer; +import org.junit.Rule; +import org.junit.Test; +import org.jvnet.hudson.test.Issue; +import org.jvnet.hudson.test.JenkinsRule; + +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; + +/** + * @author Andrew Bayer + */ +public class ResponseTimeMonitorTest { + + @Rule + public JenkinsRule j = new JenkinsRule(); + + /** + * Makes sure that it doesn't try to monitor an already-offline agent. + */ + @Test + @Issue("JENKINS-20272") + public void skipOfflineAgent() throws Exception { + DumbSlave s = j.createSlave(); + SlaveComputer c = s.getComputer(); + c.connect(false).get(); // wait until it's connected + + // Try as temporarily offline first. + c.setTemporarilyOffline(true, new OfflineCause.UserCause(User.getUnknown(), "Temporarily offline")); + assertNotNull(ResponseTimeMonitor.DESCRIPTOR.monitor(c)); + + // Now try as actually disconnected. + c.setTemporarilyOffline(false, null); + j.disconnectSlave(s); + assertNull(ResponseTimeMonitor.DESCRIPTOR.monitor(c)); + + // Now reconnect and make sure we get a non-null response. + c.connect(false).get(); // wait until it's connected + + assertNotNull(ResponseTimeMonitor.DESCRIPTOR.monitor(c)); + } + +} From 06cbf011466d396db93ed019522e8d0b149dea54 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Mon, 31 Jul 2017 12:34:12 -0700 Subject: [PATCH 037/109] [maven-release-plugin] prepare release jenkins-2.72 --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 425689c1d8..47ce210cb9 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.72-SNAPSHOT + 2.72 cli diff --git a/core/pom.xml b/core/pom.xml index dc3231db45..3242259039 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.72-SNAPSHOT + 2.72 jenkins-core diff --git a/pom.xml b/pom.xml index 0d5a01206f..e9dd314bd8 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.72-SNAPSHOT + 2.72 pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - HEAD + jenkins-2.72 diff --git a/test/pom.xml b/test/pom.xml index 8f62c5547e..d4ab6dfd29 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.72-SNAPSHOT + 2.72 test diff --git a/war/pom.xml b/war/pom.xml index fd146f2cf3..e73822629c 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.72-SNAPSHOT + 2.72 jenkins-war From 45aa3324a75ed900a95d58703e7ec978114d8f54 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Mon, 31 Jul 2017 12:34:12 -0700 Subject: [PATCH 038/109] [maven-release-plugin] prepare for next development iteration --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 47ce210cb9..9c52bbda98 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.72 + 2.73-SNAPSHOT cli diff --git a/core/pom.xml b/core/pom.xml index 3242259039..f3edfa0152 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.72 + 2.73-SNAPSHOT jenkins-core diff --git a/pom.xml b/pom.xml index e9dd314bd8..299d8a9031 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.72 + 2.73-SNAPSHOT pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - jenkins-2.72 + HEAD diff --git a/test/pom.xml b/test/pom.xml index d4ab6dfd29..6c73ebfc97 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.72 + 2.73-SNAPSHOT test diff --git a/war/pom.xml b/war/pom.xml index e73822629c..fc91bdd6b3 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.72 + 2.73-SNAPSHOT jenkins-war From c8b5086f1186ac137846d9e4329970718c637191 Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Mon, 31 Jul 2017 20:41:32 -0400 Subject: [PATCH 039/109] [JENKINS-45892] Prevent a Run from being serialized except at top level. --- core/src/main/java/hudson/model/Run.java | 38 ++++++++- .../main/java/jenkins/model/RunAction2.java | 1 + .../test/java/hudson/model/RunActionTest.java | 78 +++++++++++++++++++ 3 files changed, 116 insertions(+), 1 deletion(-) create mode 100644 test/src/test/java/hudson/model/RunActionTest.java diff --git a/core/src/main/java/hudson/model/Run.java b/core/src/main/java/hudson/model/Run.java index 4701bfc396..201566de60 100644 --- a/core/src/main/java/hudson/model/Run.java +++ b/core/src/main/java/hudson/model/Run.java @@ -774,6 +774,9 @@ public abstract class Run ,RunT extends Run"; + } return project.getFullName() + " #" + number; } @@ -1920,7 +1923,16 @@ public abstract class Run ,RunT extends Run,RunT extends Run> saving = new HashSet<>(); + + private Object writeReplace() { + synchronized (saving) { + if (saving.contains(this)) { + return this; + } else { + LOGGER.warning("JENKINS-45892: improper backreference detected in " + getDataFile()); + return new Replacer(this); + } + } + } + + /** Not {@link Serializable} for now, since we are only expecting to use this from XStream. */ + private static class Replacer { + private final String id; + Replacer(Run r) { + id = r.getExternalizableId(); + } + private Object readResolve() { + return fromExternalizableId(id); + } + } + /** * Gets the log of the build as a string. * @return Returns the log or an empty string if it has not been found diff --git a/core/src/main/java/jenkins/model/RunAction2.java b/core/src/main/java/jenkins/model/RunAction2.java index b5443bcccb..1f180e5b99 100644 --- a/core/src/main/java/jenkins/model/RunAction2.java +++ b/core/src/main/java/jenkins/model/RunAction2.java @@ -29,6 +29,7 @@ import hudson.model.Run; /** * Optional interface for {@link Action}s that add themselves to a {@link Run}. + * You may keep a {@code transient} reference to an owning build, restored in {@link #onLoad}. * @since 1.519, 1.509.3 */ public interface RunAction2 extends Action { diff --git a/test/src/test/java/hudson/model/RunActionTest.java b/test/src/test/java/hudson/model/RunActionTest.java new file mode 100644 index 0000000000..2f586b8c51 --- /dev/null +++ b/test/src/test/java/hudson/model/RunActionTest.java @@ -0,0 +1,78 @@ +/* + * The MIT License + * + * Copyright 2017 CloudBees, 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. + */ + +package hudson.model; + +import hudson.XmlFile; +import java.io.File; +import static org.hamcrest.Matchers.*; +import static org.junit.Assert.*; +import org.junit.ClassRule; +import org.junit.Rule; +import org.junit.Test; +import org.junit.runners.model.Statement; +import org.jvnet.hudson.test.BuildWatcher; +import org.jvnet.hudson.test.Issue; +import org.jvnet.hudson.test.RestartableJenkinsRule; + +public class RunActionTest { + + @ClassRule + public static BuildWatcher buildWatcher = new BuildWatcher(); + + @Rule + public RestartableJenkinsRule rr = new RestartableJenkinsRule(); + + @Issue("JENKINS-45892") + @Test + public void badSerialization() { + rr.addStep(new Statement() { + @Override + public void evaluate() throws Throwable { + FreeStyleProject p = rr.j.createFreeStyleProject("p"); + FreeStyleBuild b1 = rr.j.buildAndAssertSuccess(p); + FreeStyleBuild b2 = rr.j.buildAndAssertSuccess(p); + b2.addAction(new BadAction(b1)); + b2.save(); + String text = new XmlFile(new File(b2.getRootDir(), "build.xml")).asString(); + System.out.println(text); + assertThat(text, not(containsString(""))); + } + }); + rr.addStep(new Statement() { + @Override + public void evaluate() throws Throwable { + FreeStyleProject p = rr.j.jenkins.getItemByFullName("p", FreeStyleProject.class); + assertEquals(p.getBuildByNumber(1), p.getBuildByNumber(2).getAction(BadAction.class).owner); + } + }); + } + static class BadAction extends InvisibleAction { + final Run owner; // oops, should have been transient and used RunAction2 + BadAction(Run owner) { + this.owner = owner; + } + } + +} From 29a9ad76a235047299c204c29122902e363ad787 Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Tue, 1 Aug 2017 16:40:41 -0400 Subject: [PATCH 040/109] Extending fix to AbstractItem. --- .../main/java/hudson/model/AbstractItem.java | 39 +++++++++- core/src/main/java/hudson/model/Run.java | 3 +- .../java/hudson/model/AbstractItem2Test.java | 71 +++++++++++++++++++ .../test/java/hudson/model/RunActionTest.java | 5 -- 4 files changed, 111 insertions(+), 7 deletions(-) create mode 100644 test/src/test/java/hudson/model/AbstractItem2Test.java diff --git a/core/src/main/java/hudson/model/AbstractItem.java b/core/src/main/java/hudson/model/AbstractItem.java index 8cd5a1625e..78f558e0bb 100644 --- a/core/src/main/java/hudson/model/AbstractItem.java +++ b/core/src/main/java/hudson/model/AbstractItem.java @@ -44,9 +44,12 @@ import hudson.util.AlternativeUiTextProvider.Message; import hudson.util.AtomicFileWriter; import hudson.util.IOUtils; import hudson.util.Secret; +import java.io.Serializable; +import java.util.HashSet; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.Map; +import java.util.Set; import java.util.concurrent.TimeUnit; import jenkins.model.DirectlyModifiableTopLevelItemGroup; import jenkins.model.Jenkins; @@ -511,7 +514,16 @@ public abstract class AbstractItem extends Actionable implements Item, HttpDelet */ public synchronized void save() throws IOException { if(BulkChange.contains(this)) return; - getConfigFile().write(this); + synchronized (saving) { + saving.add(this); + } + try { + getConfigFile().write(this); + } finally { + synchronized (saving) { + saving.remove(this); + } + } SaveableListener.fireOnChange(this, getConfigFile()); } @@ -519,6 +531,31 @@ public abstract class AbstractItem extends Actionable implements Item, HttpDelet return Items.getConfigFile(this); } + private static final Set saving = new HashSet<>(); + + private Object writeReplace() { + synchronized (saving) { + if (saving.contains(this)) { + return this; + } else { + LOGGER.log(Level.WARNING, "JENKINS-45892: reference to {0} being saved but not at top level", this); + return new Replacer(this); + } + } + } + + /** Not {@link Serializable} for now, since we are only expecting to use this from XStream. */ + private static class Replacer { + private final String fullName; + Replacer(AbstractItem i) { + fullName = i.getFullName(); + } + private Object readResolve() { + // May or may not work: + return Jenkins.getInstance().getItemByFullName(fullName); + } + } + public Descriptor getDescriptorByName(String className) { return Jenkins.getInstance().getDescriptorByName(className); } diff --git a/core/src/main/java/hudson/model/Run.java b/core/src/main/java/hudson/model/Run.java index 201566de60..5eab7539a4 100644 --- a/core/src/main/java/hudson/model/Run.java +++ b/core/src/main/java/hudson/model/Run.java @@ -1947,7 +1947,8 @@ public abstract class Run ,RunT extends Runthis is p1"))); + } + }); + rr.addStep(new Statement() { + @Override + public void evaluate() throws Throwable { + FreeStyleProject p1 = rr.j.jenkins.getItemByFullName("p1", FreeStyleProject.class); + FreeStyleProject p2 = rr.j.jenkins.getItemByFullName("p2", FreeStyleProject.class); + assertEquals(/* does not work yet: p1 */ null, p2.getProperty(BadProperty.class).other); + } + }); + } + static class BadProperty extends JobProperty { + final FreeStyleProject other; + BadProperty(FreeStyleProject other) { + this.other = other; + } + } + +} diff --git a/test/src/test/java/hudson/model/RunActionTest.java b/test/src/test/java/hudson/model/RunActionTest.java index 2f586b8c51..96bdfb60b4 100644 --- a/test/src/test/java/hudson/model/RunActionTest.java +++ b/test/src/test/java/hudson/model/RunActionTest.java @@ -28,19 +28,14 @@ import hudson.XmlFile; import java.io.File; import static org.hamcrest.Matchers.*; import static org.junit.Assert.*; -import org.junit.ClassRule; import org.junit.Rule; import org.junit.Test; import org.junit.runners.model.Statement; -import org.jvnet.hudson.test.BuildWatcher; import org.jvnet.hudson.test.Issue; import org.jvnet.hudson.test.RestartableJenkinsRule; public class RunActionTest { - @ClassRule - public static BuildWatcher buildWatcher = new BuildWatcher(); - @Rule public RestartableJenkinsRule rr = new RestartableJenkinsRule(); From 4bbdf8193315f2c97810a12b4cc184ccd8b8f642 Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Tue, 1 Aug 2017 16:53:48 -0400 Subject: [PATCH 041/109] Extending fix to User. --- core/src/main/java/hudson/model/User.java | 36 ++++++++++++++++++- .../java/hudson/model/UserRestartTest.java | 36 +++++++++++++++++++ 2 files changed, 71 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/hudson/model/User.java b/core/src/main/java/hudson/model/User.java index 845d769862..9ee58d66cb 100644 --- a/core/src/main/java/hudson/model/User.java +++ b/core/src/main/java/hudson/model/User.java @@ -50,6 +50,7 @@ import hudson.util.XStream2; import java.io.File; import java.io.FileFilter; import java.io.IOException; +import java.io.Serializable; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; @@ -731,10 +732,43 @@ public class User extends AbstractModelObject implements AccessControlled, Descr throw FormValidation.error(Messages.User_IllegalFullname(fullName)); } if(BulkChange.contains(this)) return; - getConfigFile().write(this); + synchronized (saving) { + saving.add(this); + } + try { + getConfigFile().write(this); + } finally { + synchronized (saving) { + saving.remove(this); + } + } SaveableListener.fireOnChange(this, getConfigFile()); } + private static final Set saving = new HashSet<>(); + + private Object writeReplace() { + synchronized (saving) { + if (saving.contains(this)) { + return this; + } else { + LOGGER.log(Level.WARNING, "JENKINS-45892: reference to {0} being saved but not at top level", this); + return new Replacer(this); + } + } + } + + /** Not {@link Serializable} for now, since we are only expecting to use this from XStream. */ + private static class Replacer { + private final String id; + Replacer(User u) { + id = u.getId(); + } + private Object readResolve() { + return getById(id, false); + } + } + /** * Deletes the data directory and removes this user from Hudson. * diff --git a/test/src/test/java/hudson/model/UserRestartTest.java b/test/src/test/java/hudson/model/UserRestartTest.java index 43fbbc80ec..03b03f6b73 100644 --- a/test/src/test/java/hudson/model/UserRestartTest.java +++ b/test/src/test/java/hudson/model/UserRestartTest.java @@ -25,10 +25,13 @@ package hudson.model; import hudson.tasks.Mailer; +import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.not; import org.junit.Test; import static org.junit.Assert.*; import org.junit.Rule; import org.junit.runners.model.Statement; +import org.jvnet.hudson.test.Issue; import org.jvnet.hudson.test.RestartableJenkinsRule; public class UserRestartTest { @@ -58,4 +61,37 @@ public class UserRestartTest { }); } + @Issue("JENKINS-45892") + @Test + public void badSerialization() { + rr.addStep(new Statement() { + @Override + public void evaluate() throws Throwable { + rr.j.jenkins.setSecurityRealm(rr.j.createDummySecurityRealm()); + FreeStyleProject p = rr.j.createFreeStyleProject("p"); + User u = User.get("pqhacker"); + u.setFullName("Pat Q. Hacker"); + u.save(); + p.addProperty(new BadProperty(u)); + String text = p.getConfigFile().asString(); + System.out.println(text); + assertThat(text, not(containsString("Pat Q. Hacker"))); + } + }); + rr.addStep(new Statement() { + @Override + public void evaluate() throws Throwable { + FreeStyleProject p = rr.j.jenkins.getItemByFullName("p", FreeStyleProject.class); + User u = p.getProperty(BadProperty.class).user; // do not inline: call User.get second + assertEquals(User.get("pqhacker"), u); + } + }); + } + static class BadProperty extends JobProperty { + final User user; + BadProperty(User user) { + this.user = user; + } + } + } From 7ab8ba1c15d1d1d67f366d338d80c948a1dfe81e Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Tue, 1 Aug 2017 17:41:04 -0400 Subject: [PATCH 042/109] Using RestartableJenkinsRule.then. --- test/pom.xml | 2 +- .../java/hudson/model/UserRestartTest.java | 29 +++++++------------ 2 files changed, 12 insertions(+), 19 deletions(-) diff --git a/test/pom.xml b/test/pom.xml index 6c73ebfc97..2a977268a8 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -53,7 +53,7 @@ THE SOFTWARE. ${project.groupId} jenkins-test-harness - 2.20 + 2.24-20170801.213935-3 test diff --git a/test/src/test/java/hudson/model/UserRestartTest.java b/test/src/test/java/hudson/model/UserRestartTest.java index 43fbbc80ec..8971212d07 100644 --- a/test/src/test/java/hudson/model/UserRestartTest.java +++ b/test/src/test/java/hudson/model/UserRestartTest.java @@ -28,7 +28,6 @@ import hudson.tasks.Mailer; import org.junit.Test; import static org.junit.Assert.*; import org.junit.Rule; -import org.junit.runners.model.Statement; import org.jvnet.hudson.test.RestartableJenkinsRule; public class UserRestartTest { @@ -37,24 +36,18 @@ public class UserRestartTest { public RestartableJenkinsRule rr = new RestartableJenkinsRule(); @Test public void persistedUsers() throws Exception { - rr.addStep(new Statement() { - @Override - public void evaluate() throws Throwable { - User bob = User.getById("bob", true); - bob.setFullName("Bob"); - bob.addProperty(new Mailer.UserProperty("bob@nowhere.net")); - } + rr.then(r -> { + User bob = User.getById("bob", true); + bob.setFullName("Bob"); + bob.addProperty(new Mailer.UserProperty("bob@nowhere.net")); }); - rr.addStep(new Statement() { - @Override - public void evaluate() throws Throwable { - User bob = User.getById("bob", false); - assertNotNull(bob); - assertEquals("Bob", bob.getFullName()); - Mailer.UserProperty email = bob.getProperty(Mailer.UserProperty.class); - assertNotNull(email); - assertEquals("bob@nowhere.net", email.getAddress()); - } + rr.then(r -> { + User bob = User.getById("bob", false); + assertNotNull(bob); + assertEquals("Bob", bob.getFullName()); + Mailer.UserProperty email = bob.getProperty(Mailer.UserProperty.class); + assertNotNull(email); + assertEquals("bob@nowhere.net", email.getAddress()); }); } From 1af56bedb1c44ed5f89e1d296f7210e5e9136125 Mon Sep 17 00:00:00 2001 From: Nicolas De Loof Date: Wed, 2 Aug 2017 10:33:22 +0200 Subject: [PATCH 043/109] add missing @Symbol for agent protocols --- core/src/main/java/hudson/TcpSlaveAgentListener.java | 2 ++ core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java | 2 ++ core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol4.java | 2 ++ 3 files changed, 6 insertions(+) diff --git a/core/src/main/java/hudson/TcpSlaveAgentListener.java b/core/src/main/java/hudson/TcpSlaveAgentListener.java index bae4e2b4a9..602bb31c72 100644 --- a/core/src/main/java/hudson/TcpSlaveAgentListener.java +++ b/core/src/main/java/hudson/TcpSlaveAgentListener.java @@ -58,6 +58,7 @@ import org.apache.commons.io.Charsets; import org.apache.commons.io.IOUtils; import org.apache.commons.io.output.NullOutputStream; import org.apache.commons.lang.StringUtils; +import org.jenkinsci.Symbol; import org.kohsuke.accmod.Restricted; import org.kohsuke.accmod.restrictions.NoExternalUse; @@ -307,6 +308,7 @@ public final class TcpSlaveAgentListener extends Thread { * @since 1.653 */ @Extension + @Symbol("ping") public static class PingAgentProtocol extends AgentProtocol { private final byte[] ping; diff --git a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java index 8d235f6114..d996fc0aab 100644 --- a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java +++ b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java @@ -14,6 +14,7 @@ import javax.inject.Inject; import jenkins.AgentProtocol; import jenkins.model.Jenkins; import jenkins.util.SystemProperties; +import org.jenkinsci.Symbol; import org.jenkinsci.remoting.engine.JnlpClientDatabase; import org.jenkinsci.remoting.engine.JnlpConnectionState; import org.jenkinsci.remoting.engine.JnlpProtocol3Handler; @@ -29,6 +30,7 @@ import org.kohsuke.accmod.restrictions.NoExternalUse; */ @Deprecated @Extension +@Symbol("jnlp3") public class JnlpSlaveAgentProtocol3 extends AgentProtocol { private NioChannelSelector hub; diff --git a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol4.java b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol4.java index d932f3b5d8..e96812b0b5 100644 --- a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol4.java +++ b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol4.java @@ -48,6 +48,7 @@ import javax.net.ssl.SSLContext; import javax.net.ssl.TrustManager; import jenkins.AgentProtocol; import jenkins.model.identity.InstanceIdentityProvider; +import org.jenkinsci.Symbol; import org.jenkinsci.remoting.engine.JnlpConnectionState; import org.jenkinsci.remoting.engine.JnlpProtocol4Handler; import org.jenkinsci.remoting.protocol.IOHub; @@ -62,6 +63,7 @@ import org.jenkinsci.remoting.protocol.cert.PublicKeyMatchingX509ExtendedTrustMa * @since 2.41 enabled by default */ @Extension +@Symbol("jnlp4") public class JnlpSlaveAgentProtocol4 extends AgentProtocol { /** * Our logger. From 3c71aff334114970fcd9e739b9172bfca7ee71b4 Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Wed, 2 Aug 2017 13:14:19 -0400 Subject: [PATCH 044/109] jenkins-test-harness 2.24 --- test/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/pom.xml b/test/pom.xml index 2a977268a8..b61a86e40c 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -53,7 +53,7 @@ THE SOFTWARE. ${project.groupId} jenkins-test-harness - 2.24-20170801.213935-3 + 2.24 test From 6ed7c7f1d00caa21bfd8e43d34140bf66b579f5f Mon Sep 17 00:00:00 2001 From: Oleg Nenashev Date: Wed, 2 Aug 2017 20:17:13 +0200 Subject: [PATCH 045/109] [FIXED JENKINS-45895] - JNLPLauncher config.jelly should not display Work Dir settings when included from other class --- .../main/java/hudson/slaves/JNLPLauncher.java | 16 ++++++++++++++++ .../hudson/slaves/JNLPLauncher/config.jelly | 5 ++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/hudson/slaves/JNLPLauncher.java b/core/src/main/java/hudson/slaves/JNLPLauncher.java index 18c97e55a5..d0852590c3 100644 --- a/core/src/main/java/hudson/slaves/JNLPLauncher.java +++ b/core/src/main/java/hudson/slaves/JNLPLauncher.java @@ -163,6 +163,22 @@ public class JNLPLauncher extends ComputerLauncher { public String getDisplayName() { return Messages.JNLPLauncher_displayName(); } + + /** + * Checks if Work Dir settings should be displayed. + * + * This flag is checked in {@code config.jelly} before displaying the + * {@link JNLPLauncher#workDirSettings} property. + * By default the configuration is displayed only for {@link JNLPLauncher}, + * but the implementation can be overridden. + * @return {@code true} if work directories are supported by the launcher type. + * @since TODO + */ + public boolean isWorkDirSupported() { + // This property is included only for JNLPLauncher by default. + // Causes JENKINS-45895 in the case of includes otherwise + return DescriptorImpl.class.equals(getClass()); + } }; /** diff --git a/core/src/main/resources/hudson/slaves/JNLPLauncher/config.jelly b/core/src/main/resources/hudson/slaves/JNLPLauncher/config.jelly index 85aa8aafda..d0765ddb5b 100644 --- a/core/src/main/resources/hudson/slaves/JNLPLauncher/config.jelly +++ b/core/src/main/resources/hudson/slaves/JNLPLauncher/config.jelly @@ -24,7 +24,10 @@ THE SOFTWARE. - + + + + From 32be27a5dab0a8e213faf045a5d8dfef064ca8d2 Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Wed, 2 Aug 2017 16:23:36 -0400 Subject: [PATCH 046/109] Strengthening tests a bit. --- test/src/test/java/hudson/model/AbstractItem2Test.java | 2 +- test/src/test/java/hudson/model/RunActionTest.java | 2 +- test/src/test/java/hudson/model/UserRestartTest.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/test/src/test/java/hudson/model/AbstractItem2Test.java b/test/src/test/java/hudson/model/AbstractItem2Test.java index fc99e1206e..a35044ee87 100644 --- a/test/src/test/java/hudson/model/AbstractItem2Test.java +++ b/test/src/test/java/hudson/model/AbstractItem2Test.java @@ -48,8 +48,8 @@ public class AbstractItem2Test { FreeStyleProject p2 = rr.j.createFreeStyleProject("p2"); p2.addProperty(new BadProperty(p1)); String text = p2.getConfigFile().asString(); - System.out.println(text); assertThat(text, not(containsString("this is p1"))); + assertThat(text, containsString("p1")); } }); rr.addStep(new Statement() { diff --git a/test/src/test/java/hudson/model/RunActionTest.java b/test/src/test/java/hudson/model/RunActionTest.java index 96bdfb60b4..16aac5e404 100644 --- a/test/src/test/java/hudson/model/RunActionTest.java +++ b/test/src/test/java/hudson/model/RunActionTest.java @@ -51,8 +51,8 @@ public class RunActionTest { b2.addAction(new BadAction(b1)); b2.save(); String text = new XmlFile(new File(b2.getRootDir(), "build.xml")).asString(); - System.out.println(text); assertThat(text, not(containsString(""))); + assertThat(text, containsString("p#1")); } }); rr.addStep(new Statement() { diff --git a/test/src/test/java/hudson/model/UserRestartTest.java b/test/src/test/java/hudson/model/UserRestartTest.java index 03b03f6b73..87ddf1f5d2 100644 --- a/test/src/test/java/hudson/model/UserRestartTest.java +++ b/test/src/test/java/hudson/model/UserRestartTest.java @@ -74,8 +74,8 @@ public class UserRestartTest { u.save(); p.addProperty(new BadProperty(u)); String text = p.getConfigFile().asString(); - System.out.println(text); assertThat(text, not(containsString("Pat Q. Hacker"))); + assertThat(text, containsString("pqhacker")); } }); rr.addStep(new Statement() { From b6758e36242026f7256469742d4ae1e8833e54cf Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Wed, 2 Aug 2017 16:25:46 -0400 Subject: [PATCH 047/109] Make readResolve methods tolerate Jenkins.instance == null. --- core/src/main/java/hudson/model/AbstractItem.java | 8 ++++++-- core/src/main/java/hudson/model/Run.java | 6 ++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/core/src/main/java/hudson/model/AbstractItem.java b/core/src/main/java/hudson/model/AbstractItem.java index 78f558e0bb..817e243a98 100644 --- a/core/src/main/java/hudson/model/AbstractItem.java +++ b/core/src/main/java/hudson/model/AbstractItem.java @@ -551,8 +551,12 @@ public abstract class AbstractItem extends Actionable implements Item, HttpDelet fullName = i.getFullName(); } private Object readResolve() { - // May or may not work: - return Jenkins.getInstance().getItemByFullName(fullName); + Jenkins j = Jenkins.getInstanceOrNull(); + if (j == null) { + return null; + } + // Will generally only work if called after job loading: + return j.getItemByFullName(fullName); } } diff --git a/core/src/main/java/hudson/model/Run.java b/core/src/main/java/hudson/model/Run.java index 5eab7539a4..e0a4d0917e 100644 --- a/core/src/main/java/hudson/model/Run.java +++ b/core/src/main/java/hudson/model/Run.java @@ -51,7 +51,6 @@ import hudson.cli.declarative.CLIMethod; import hudson.model.Descriptor.FormException; import hudson.model.listeners.RunListener; import hudson.model.listeners.SaveableListener; -import hudson.model.queue.Executables; import hudson.model.queue.SubTask; import hudson.search.SearchIndexBuilder; import hudson.security.ACL; @@ -2356,7 +2355,10 @@ public abstract class Run ,RunT extends Run job = j.getItemByFullName(jobName, Job.class); if (job == null) { return null; From 2d2101215dc39dfcb03279e3cb8898b8b9e5bc5f Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Wed, 2 Aug 2017 16:28:41 -0400 Subject: [PATCH 048/109] Simplifying writeReplace methods by factoring common logic into XmlFile.replaceIfNotAtTopLevel. --- core/src/main/java/hudson/XmlFile.java | 34 ++++++++++++++++++- .../main/java/hudson/model/AbstractItem.java | 27 ++------------- core/src/main/java/hudson/model/Run.java | 25 ++------------ core/src/main/java/hudson/model/User.java | 25 ++------------ 4 files changed, 39 insertions(+), 72 deletions(-) diff --git a/core/src/main/java/hudson/XmlFile.java b/core/src/main/java/hudson/XmlFile.java index 72d4d6c128..eeaa49772b 100644 --- a/core/src/main/java/hudson/XmlFile.java +++ b/core/src/main/java/hudson/XmlFile.java @@ -50,8 +50,13 @@ import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.Reader; +import java.io.Serializable; import java.io.Writer; import java.io.StringWriter; +import java.util.Collections; +import java.util.IdentityHashMap; +import java.util.Map; +import java.util.function.Supplier; import java.util.logging.Level; import java.util.logging.Logger; import org.apache.commons.io.IOUtils; @@ -114,6 +119,7 @@ import org.apache.commons.io.IOUtils; public final class XmlFile { private final XStream xs; private final File file; + private static final Map beingWritten = Collections.synchronizedMap(new IdentityHashMap<>()); public XmlFile(File file) { this(DEFAULT_XSTREAM,file); @@ -168,7 +174,12 @@ public final class XmlFile { AtomicFileWriter w = new AtomicFileWriter(file); try { w.write("\n"); - xs.toXML(o,w); + beingWritten.put(o, null); + try { + xs.toXML(o, w); + } finally { + beingWritten.remove(o); + } w.commit(); } catch(StreamException e) { throw new IOException(e); @@ -177,6 +188,27 @@ public final class XmlFile { } } + /** + * Provides an XStream replacement for an object unless a call to {@link #write} is currently in progress. + * As per JENKINS-45892 this may be used by any class which expects to be written at top level to an XML file + * but which cannot safely be serialized as a nested object (for example, because it expects some {@code onLoad} hook): + * implement a {@code writeReplace} method delegating to this method. + * The replacement need not be {@link Serializable} since it is only necessary for use from XStream. + * @param o an object ({@code this} from {@code writeReplace}) + * @param replacement a supplier of a safely serializable replacement object with a {@code readResolve} method + * @return {@code o}, if {@link #write} is being called on it, else the replacement + * @since FIXME + */ + public static Object replaceIfNotAtTopLevel(Object o, Supplier replacement) { + if (beingWritten.containsKey(o)) { + return o; + } else { + // Unfortunately we cannot easily tell which XML file is actually being saved here, at least without implementing a custom Converter. + LOGGER.log(Level.WARNING, "JENKINS-45892: reference to {0} being saved but not at top level", o); + return replacement.get(); + } + } + public boolean exists() { return file.exists(); } diff --git a/core/src/main/java/hudson/model/AbstractItem.java b/core/src/main/java/hudson/model/AbstractItem.java index 817e243a98..424e934e31 100644 --- a/core/src/main/java/hudson/model/AbstractItem.java +++ b/core/src/main/java/hudson/model/AbstractItem.java @@ -44,12 +44,9 @@ import hudson.util.AlternativeUiTextProvider.Message; import hudson.util.AtomicFileWriter; import hudson.util.IOUtils; import hudson.util.Secret; -import java.io.Serializable; -import java.util.HashSet; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.Map; -import java.util.Set; import java.util.concurrent.TimeUnit; import jenkins.model.DirectlyModifiableTopLevelItemGroup; import jenkins.model.Jenkins; @@ -514,16 +511,7 @@ public abstract class AbstractItem extends Actionable implements Item, HttpDelet */ public synchronized void save() throws IOException { if(BulkChange.contains(this)) return; - synchronized (saving) { - saving.add(this); - } - try { - getConfigFile().write(this); - } finally { - synchronized (saving) { - saving.remove(this); - } - } + getConfigFile().write(this); SaveableListener.fireOnChange(this, getConfigFile()); } @@ -531,20 +519,9 @@ public abstract class AbstractItem extends Actionable implements Item, HttpDelet return Items.getConfigFile(this); } - private static final Set saving = new HashSet<>(); - private Object writeReplace() { - synchronized (saving) { - if (saving.contains(this)) { - return this; - } else { - LOGGER.log(Level.WARNING, "JENKINS-45892: reference to {0} being saved but not at top level", this); - return new Replacer(this); - } - } + return XmlFile.replaceIfNotAtTopLevel(this, () -> new Replacer(this)); } - - /** Not {@link Serializable} for now, since we are only expecting to use this from XStream. */ private static class Replacer { private final String fullName; Replacer(AbstractItem i) { diff --git a/core/src/main/java/hudson/model/Run.java b/core/src/main/java/hudson/model/Run.java index e0a4d0917e..d48912c8e5 100644 --- a/core/src/main/java/hudson/model/Run.java +++ b/core/src/main/java/hudson/model/Run.java @@ -1922,16 +1922,7 @@ public abstract class Run ,RunT extends Run,RunT extends Run> saving = new HashSet<>(); - private Object writeReplace() { - synchronized (saving) { - if (saving.contains(this)) { - return this; - } else { - // Unfortunately we cannot easily tell which XML file is actually being saved here, at least without implementing a custom Converter. - LOGGER.log(WARNING, "JENKINS-45892: reference to {0} being saved but not at top level", this); - return new Replacer(this); - } - } + return XmlFile.replaceIfNotAtTopLevel(this, () -> new Replacer(this)); } - - /** Not {@link Serializable} for now, since we are only expecting to use this from XStream. */ private static class Replacer { private final String id; Replacer(Run r) { diff --git a/core/src/main/java/hudson/model/User.java b/core/src/main/java/hudson/model/User.java index 9ee58d66cb..902ae36e60 100644 --- a/core/src/main/java/hudson/model/User.java +++ b/core/src/main/java/hudson/model/User.java @@ -50,7 +50,6 @@ import hudson.util.XStream2; import java.io.File; import java.io.FileFilter; import java.io.IOException; -import java.io.Serializable; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; @@ -732,33 +731,13 @@ public class User extends AbstractModelObject implements AccessControlled, Descr throw FormValidation.error(Messages.User_IllegalFullname(fullName)); } if(BulkChange.contains(this)) return; - synchronized (saving) { - saving.add(this); - } - try { - getConfigFile().write(this); - } finally { - synchronized (saving) { - saving.remove(this); - } - } + getConfigFile().write(this); SaveableListener.fireOnChange(this, getConfigFile()); } - private static final Set saving = new HashSet<>(); - private Object writeReplace() { - synchronized (saving) { - if (saving.contains(this)) { - return this; - } else { - LOGGER.log(Level.WARNING, "JENKINS-45892: reference to {0} being saved but not at top level", this); - return new Replacer(this); - } - } + return XmlFile.replaceIfNotAtTopLevel(this, () -> new Replacer(this)); } - - /** Not {@link Serializable} for now, since we are only expecting to use this from XStream. */ private static class Replacer { private final String id; Replacer(User u) { From 808254700fc7bdf14a2728111dba54f1b492a8ef Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Wed, 2 Aug 2017 16:37:04 -0400 Subject: [PATCH 049/109] Windows builds have been timing out; giving them an extra hour. --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index bcced2b016..baf6c2158b 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -32,7 +32,7 @@ for(i = 0; i < buildTypes.size(); i++) { // Now run the actual build. stage("${buildType} Build / Test") { - timeout(time: 180, unit: 'MINUTES') { + timeout(time: 240, unit: 'MINUTES') { // See below for what this method does - we're passing an arbitrary environment // variable to it so that JAVA_OPTS and MAVEN_OPTS are set correctly. withMavenEnv(["JAVA_OPTS=-Xmx1536m -Xms512m", From 5ea807c6a9006a16658cf6e3b04f6c1417e59506 Mon Sep 17 00:00:00 2001 From: Damian Szczepanik Date: Mon, 24 Jul 2017 00:09:09 +0200 Subject: [PATCH 050/109] Added Polish translations for setup wizard --- .../ProxyConfiguration/config_pl.properties | 6 +- .../install/pluginSetupWizard_pl.properties | 78 +++++++++++++++++++ 2 files changed, 82 insertions(+), 2 deletions(-) create mode 100644 core/src/main/resources/jenkins/install/pluginSetupWizard_pl.properties diff --git a/core/src/main/resources/hudson/ProxyConfiguration/config_pl.properties b/core/src/main/resources/hudson/ProxyConfiguration/config_pl.properties index a03b5b7cb5..fd26448050 100644 --- a/core/src/main/resources/hudson/ProxyConfiguration/config_pl.properties +++ b/core/src/main/resources/hudson/ProxyConfiguration/config_pl.properties @@ -1,6 +1,6 @@ # The MIT License # -# Copyright (c) 2004-2010, Sun Microsystems, Inc. +# Copyright (c) 2004-2017, Sun Microsystems, Inc, Damian Szczepanik # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -23,4 +23,6 @@ Password=Has\u0142o Port=Port Server=Serwer -User\ name=Nazwa u\u017cytkownika +User\ name=Nazwa u\u017Cytkownika +No\ Proxy\ Host=Brak hosta proxy +Validate\ Proxy=Sprawd\u017A proxy diff --git a/core/src/main/resources/jenkins/install/pluginSetupWizard_pl.properties b/core/src/main/resources/jenkins/install/pluginSetupWizard_pl.properties new file mode 100644 index 0000000000..e94da4e1c8 --- /dev/null +++ b/core/src/main/resources/jenkins/install/pluginSetupWizard_pl.properties @@ -0,0 +1,78 @@ +# The MIT License +# +# Copyright (c) 2017, Damian Szczepanik +# +# 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. + +installWizard_welcomePanel_title=Zaczynamy +installWizard_welcomePanel_banner=Dostosuj Jenkinsa +installWizard_welcomePanel_message=Wtyczki rozszerzaj\u0105ce Jenkinsa o dodatkowe funkcjonalno\u015Bci, kt\u00F3re zaspokajaj\u0105 wiele potrzeb. +installWizard_welcomePanel_recommendedActionTitle=Zainstaluj sugerowane wtyczki +installWizard_welcomePanel_recommendedActionDetails=Zainstaluj wtyczki, kt\u00F3re spo\u0142eczno\u015B\u0107 Jenkinsa uzna\u0142a za najbardziej przydatne. +installWizard_welcomePanel_customizeActionTitle=Wybierz wtyczki do instalacji +installWizard_welcomePanel_customizeActionDetails=Wybierz i zainstaluj wtyczki najbardziej dopasowane do Twoich potrzeb. +installWizard_jenkinsVersionTitle=Jenkins +installWizard_installComplete_banner=Jenkins jest gotowy! +installWizard_installComplete_finishButtonLabel=Zacznij korzysta\u0107 z Jenkinsa +installWizard_installComplete_message=Konfiguracja Jenkinsa zosta\u0142a zako\u0144czona. +installWizard_firstUserSkippedMessage=
\ +Pomini\u0119to utworzenie konta administratora. Aby si\u0119 zalogowa\u0107, u\u017Cyj loginu 'admin' i has\u0142a u\u017Cytego podczas konfigurowania Jenkinsa.\ +
+installWizard_addFirstUser_title=Dodawanie pierwszego u\u017Cytkownika +installWizard_installCustom_title=Instalacja wybrantych wtyczek +installWizard_installing_title=Instalacja wtyczek +installWizard_installComplete_title=Instalacja zako\u0144czona +installWizard_installCustom_selectAll=Wszystkie +installWizard_installCustom_selectNone=\u017Badne +installWizard_installCustom_selectRecommended=Rekomendowane +installWizard_installCustom_selected=Wybrane +installWizard_installCustom_pluginListDesc=Zauwa\u017C, \u017Ce poni\u017Cej nie jest wy\u015Bwietlana pe\u0142na lista wtyczek. Dodatkowe wtyczki mog\u0105 by\u0107 pobrane przez Mened\u017Cera wtyczek, kiedy konfiguracja Jenkinsa zostanie zasko\u0144czona. Sprawd\u017A wi\u0119cej informacji na Wiki. +installWizard_goBack=Wr\u00F3\u0107 +installWizard_goInstall=Instaluj +installWizard_error_connection=Nie uda\u0142o si\u0119 po\u0142\u0105czy\u0107 z Jenkinsem +installWizard_error_header=Wyst\u0105pi\u0142 b\u0142\u0105d +installWizard_installingConsole_dependencyIndicatorNote=** - zale\u017Cno\u015Bci wymagane +installWizard_retry=Pon\u00F3w +installWizard_pluginInstallFailure_message=Niekt\u00F3rych wtyczek nie uda\u0142o si\u0119 zainstalowa\u0107. Mo\u017Cesz ponowi\u0107 instalacje lub kontynuowa\u0107 z b\u0142\u0119dnymi wtyczkami. +installWizard_continue=Kontynuuj +installWizard_offline_title=Offline +installWizard_installIncomplete_title=Wznawianie instalacji +installWizard_installIncomplete_banner=Wznawianie instalacji +installWizard_offline_message=Wygl\u0105da, \u017Ce Jenkins pracuje w trybie offline. \ +

\ +Aby uzyska\u0107 wi\u0119cej informacji o instalowaniu Jenkinsa bez dost\u0119pu do Internetu, sprawd\u017A \ +Offline Jenkins Installation Documentation.

\ +Mo\u017Cesz kontynuowa\u0107 konfiguruj\u0105c proxy lub pomin\u0105\u0107 instalacje wtyczek.\ +

+installWizard_configureProxy_label=Konfiguruj proxy +installWizard_skipPluginInstallations=Pomi\u0144 instalacje wtyczek +installWizard_configureProxy_save=Zapisz i kontynuuj +installWizard_installIncomplete_resumeInstallationButtonLabel=Pon\u00F3w +installWizard_installIncomplete_message=Jenkins zosta\u0142 ponownie uruchomiony w trakcie instalacji i wygl\u0105da, \u017Ce cz\u0119\u015B\u0107 wtyczek nie zosta\u0142a zainstalowana. +installWizard_installComplete_installComplete_restartRequiredMessage=Instalacja jest zako\u0144czona, ale niekt\u00F3re wtyczki wymagaj\u0105 ponownego uruchomienia Jenkinsa. +installWizard_saveFirstUser=Zapisz i zako\u0144cz +installWizard_skipFirstUser=Kontynuuj jako administrator +installWizard_error_message=Wyst\u0105pi\u0142 b\u0142\u0105d podczas instalacji +installWizard_installCustom_dependenciesPrefix=Zale\u017Cno\u015Bci +installWizard_pluginInstallFailure_title=Instalacja nie powiod\u0142a si\u0119 +installWizard_installing_detailsLink=Szczeg\u00F3\u0142y... +installWizard_installComplete_installComplete_restartRequiredNotSupportedMessage= +installWizard_gettingStarted_title=Zaczynamy +installWizard_saveSecurity=Zapisz i kontynuuj +installWizard_installIncomplete_dependenciesLabel=Zale\u017Cno\u015Bci From 8c7d06c72a64533482c45108abb600f8e462c710 Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Wed, 2 Aug 2017 18:06:43 -0400 Subject: [PATCH 051/109] Amend JENKINS-24110 fix to more politely specify what was not being run. --- core/src/main/java/hudson/model/Executor.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/hudson/model/Executor.java b/core/src/main/java/hudson/model/Executor.java index dac98709fd..279a1fa762 100644 --- a/core/src/main/java/hudson/model/Executor.java +++ b/core/src/main/java/hudson/model/Executor.java @@ -355,6 +355,10 @@ public class Executor extends Thread implements ModelObject { LOGGER.log(FINE, getName()+" grabbed "+workUnit+" from queue"); SubTask task = workUnit.work; Executable executable = task.createExecutable(); + if (executable == null) { + String displayName = task instanceof Queue.Task ? ((Queue.Task) task).getFullDisplayName() : task.getDisplayName(); + LOGGER.log(WARNING, "{0} cannot be run (for example because it is disabled)", displayName); + } lock.writeLock().lock(); try { Executor.this.executable = executable; @@ -387,7 +391,7 @@ public class Executor extends Thread implements ModelObject { // by tasks. In such case Jenkins starts the workUnit in order // to report results to console outputs. if (executable == null) { - throw new Error("The null Executable has been created for "+workUnit+". The task cannot be executed"); + return; } if (executable instanceof Actionable) { From 2eea8902a558a134d54aa9351ec46556bd785db1 Mon Sep 17 00:00:00 2001 From: Daniel Beck Date: Thu, 20 Jul 2017 11:12:26 +0200 Subject: [PATCH 052/109] [FIX JENKINS-45679] JNLP needs to request Java 8 (cherry picked from commit 99cf772da11823ec965874b17e89866a3931ebc1) --- .../hudson/slaves/SlaveComputer/slave-agent.jnlp.jelly | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/resources/hudson/slaves/SlaveComputer/slave-agent.jnlp.jelly b/core/src/main/resources/hudson/slaves/SlaveComputer/slave-agent.jnlp.jelly index aff376cb8a..07f6f25144 100644 --- a/core/src/main/resources/hudson/slaves/SlaveComputer/slave-agent.jnlp.jelly +++ b/core/src/main/resources/hudson/slaves/SlaveComputer/slave-agent.jnlp.jelly @@ -50,10 +50,10 @@ THE SOFTWARE. - + - + From c7cb521a2ed3f887a13c78330bcf93cd13bdb7aa Mon Sep 17 00:00:00 2001 From: Oleg Nenashev Date: Sun, 9 Jul 2017 11:56:40 +0200 Subject: [PATCH 053/109] [JENKINS-34914] - Prevent NPE in Jenkins#getRootURL() when the nstance is not fully loaded (cherry picked from commit c064d88a3b418e4cc6e3a75b4faa7db4c69880f2) --- core/src/main/java/jenkins/model/Jenkins.java | 15 ++++++++++++--- .../model/JenkinsLocationConfiguration.java | 6 ++++++ 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/jenkins/model/Jenkins.java b/core/src/main/java/jenkins/model/Jenkins.java index acb561edf8..10129fe3c4 100644 --- a/core/src/main/java/jenkins/model/Jenkins.java +++ b/core/src/main/java/jenkins/model/Jenkins.java @@ -2326,12 +2326,21 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve * It is done in this order so that it can work correctly even in the face * of a reverse proxy. * - * @return null if this parameter is not configured by the user and the calling thread is not in an HTTP request; otherwise the returned URL will always have the trailing {@code /} + * @return {@code null} if this parameter is not configured by the user and the calling thread is not in an HTTP request; + * otherwise the returned URL will always have the trailing {@code /} + * @throws IllegalStateException {@link JenkinsLocationConfiguration} cannot be retrieved. + * Jenkins instance may be not ready, or there is an extension loading glitch. * @since 1.66 * @see Hyperlinks in HTML */ - public @Nullable String getRootUrl() { - String url = JenkinsLocationConfiguration.get().getUrl(); + public @Nullable String getRootUrl() throws IllegalStateException { + final JenkinsLocationConfiguration config = JenkinsLocationConfiguration.get(); + if (config == null) { + // Try to get standard message if possible + final Jenkins j = Jenkins.getInstance(); + throw new IllegalStateException("Jenkins instance " + j + " has been successfully initialized, but JenkinsLocationConfiguration is undefined."); + } + String url = config.getUrl(); if(url!=null) { return Util.ensureEndsWith(url,"/"); } diff --git a/core/src/main/java/jenkins/model/JenkinsLocationConfiguration.java b/core/src/main/java/jenkins/model/JenkinsLocationConfiguration.java index 981ef9a3a6..b7390ad3d3 100644 --- a/core/src/main/java/jenkins/model/JenkinsLocationConfiguration.java +++ b/core/src/main/java/jenkins/model/JenkinsLocationConfiguration.java @@ -41,6 +41,12 @@ public class JenkinsLocationConfiguration extends GlobalConfiguration { // just to suppress warnings private transient String charset,useSsl; + /** + * Gets local configuration. + * + * @return {@code null} if the {@link GlobalConfiguration#all()} list does not contain this extension. + * Most likely it means that the Jenkins instance has not been fully loaded yet. + */ public static @CheckForNull JenkinsLocationConfiguration get() { return GlobalConfiguration.all().get(JenkinsLocationConfiguration.class); } From bb86f57242afd87d737fa0c038d15ebdac88a08e Mon Sep 17 00:00:00 2001 From: Nikolas Falco Date: Sun, 9 Jul 2017 19:36:05 +0200 Subject: [PATCH 054/109] [JENKINS-14807] Fix path separator when EnvVars overrides variable like PATH+XYZ The getEnvironment(Node, TaskListener) now returns an environment setup correctly with the platform value of the computer node where the job is executed. (cherry picked from commit cf0183d1ed1e999a04a1445b2cd369b58e1268bf) --- core/src/main/java/hudson/model/Job.java | 12 ++-- core/src/test/java/hudson/model/JobTest.java | 58 +++++++++++++++++++- 2 files changed, 64 insertions(+), 6 deletions(-) diff --git a/core/src/main/java/hudson/model/Job.java b/core/src/main/java/hudson/model/Job.java index 0575724d99..b089d70635 100644 --- a/core/src/main/java/hudson/model/Job.java +++ b/core/src/main/java/hudson/model/Job.java @@ -374,13 +374,15 @@ public abstract class Job, RunT extends Run job = Mockito.mock(FreeStyleProject.class); + Mockito.when(job.getEnvironment(Mockito.any(Node.class), Mockito.any(TaskListener.class))).thenCallRealMethod(); + Mockito.when(job.getCharacteristicEnvVars()).thenReturn(emptyEnv); + + Computer c = Mockito.mock(Computer.class); + // ensure that PATH variable exists to perform the path separator join + if (!slaveEnv.containsKey("PATH")) { + slaveEnv.put("PATH", "/bin/bash"); + } + Mockito.when(c.getEnvironment()).thenReturn(slaveEnv); + Mockito.when(c.buildEnvironment(Mockito.any(TaskListener.class))).thenReturn(emptyEnv); + + Node node = PowerMockito.mock(Node.class); + PowerMockito.doReturn(c).when(node).toComputer(); + + EnvVars env = job.getEnvironment(node, null); + String path = "/test"; + env.override("PATH+TEST", path); + + assertThat("The contributed PATH was not joined using the path separator defined in slave node", // + env.get("PATH"), // + CoreMatchers.containsString(path + (slavePlatform == Platform.WINDOWS ? ';' : ':'))); + } + } From be6d02e648d5c41e5b16e797bdc55873d0f56c56 Mon Sep 17 00:00:00 2001 From: Curt Moore Date: Thu, 13 Jul 2017 09:52:18 -0500 Subject: [PATCH 055/109] [JENKINS-45516] Fix null pointer exception when checking for previous completed build (cherry picked from commit 245ad0bdb17ebd33eca81c099e8a19a893c049e3) --- core/src/main/java/hudson/model/AbstractBuild.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/hudson/model/AbstractBuild.java b/core/src/main/java/hudson/model/AbstractBuild.java index 168505f29a..5e809db226 100644 --- a/core/src/main/java/hudson/model/AbstractBuild.java +++ b/core/src/main/java/hudson/model/AbstractBuild.java @@ -337,7 +337,7 @@ public abstract class AbstractBuild

,R extends Abs AbstractBuild p = getPreviousCompletedBuild(); if (upstreamCulprits) { // If we have dependencies since the last successful build, add their authors to our list - if (p.getPreviousNotFailedBuild() != null) { + if (p != null && p.getPreviousNotFailedBuild() != null) { Map depmap = p.getDependencyChanges(p.getPreviousSuccessfulBuild()); for (AbstractBuild.DependencyChange dep : depmap.values()) { From a0a55d1da6882e8a56d90885e7cd55a22accbfe1 Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Thu, 3 Aug 2017 11:01:16 -0400 Subject: [PATCH 056/109] [JENKINS-43199] Reliably close build log file (#2954) * [JENKINS-43199] Reliably close build log file. * Try harder to ensure that the logger is closed at the end of the build. --- core/src/main/java/hudson/model/Run.java | 26 ++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/core/src/main/java/hudson/model/Run.java b/core/src/main/java/hudson/model/Run.java index 4701bfc396..84a31086a9 100644 --- a/core/src/main/java/hudson/model/Run.java +++ b/core/src/main/java/hudson/model/Run.java @@ -1698,6 +1698,7 @@ public abstract class Run ,RunT extends Run,RunT extends Run,RunT extends Run,RunT extends Run Date: Thu, 3 Aug 2017 17:12:22 -0400 Subject: [PATCH 057/109] Use official version of jbcrypt 0.4. --- core/pom.xml | 6 + .../src/main/java/hudson/security/BCrypt.java | 777 ------------------ .../security/HudsonPrivateSecurityRealm.java | 1 + 3 files changed, 7 insertions(+), 777 deletions(-) delete mode 100644 core/src/main/java/hudson/security/BCrypt.java diff --git a/core/pom.xml b/core/pom.xml index f3edfa0152..f675636fe6 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -590,6 +590,12 @@ THE SOFTWARE. 1.3.1-jenkins-1 + + org.mindrot + jbcrypt + 0.4 + + From e64137a7a01e22bdd75776c198d0908fc4a38f99 Mon Sep 17 00:00:00 2001 From: Bruno Meneguello Date: Sun, 6 Aug 2017 18:24:17 -0300 Subject: [PATCH 064/109] Update Messages_pt_BR.properties --- .../resources/hudson/node_monitors/Messages_pt_BR.properties | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/resources/hudson/node_monitors/Messages_pt_BR.properties b/core/src/main/resources/hudson/node_monitors/Messages_pt_BR.properties index a55804ed54..5f7378571e 100644 --- a/core/src/main/resources/hudson/node_monitors/Messages_pt_BR.properties +++ b/core/src/main/resources/hudson/node_monitors/Messages_pt_BR.properties @@ -26,7 +26,7 @@ DiskSpaceMonitor.DisplayName=Espa\u00e7o livre em disco # Time out for last {0} try ResponseTimeMonitor.TimeOut=Time out desde a \u00faltima {0} tentativa # Free Temp Space -TemporarySpaceMonitor.DisplayName=Intervalo de tempo dispon\u00edvel +TemporarySpaceMonitor.DisplayName=Espa\u00e7o tempor\u00e1rio dispon\u00edvel # Response Time ResponseTimeMonitor.DisplayName=Tempo de resposta # Making {0} offline temporarily due to the lack of disk space @@ -40,4 +40,4 @@ AbstractNodeMonitorDescriptor.NoDataYet=Nada ainda # Putting {0} back online as there is enough disk space again DiskSpaceMonitor.MarkedOnline=Retornando {0} para online pois h\u00e1 espa\u00e7o em disco suficiente novamente # Disk space is too low. Only {0}GB left. -DiskSpaceMonitorDescriptor.DiskSpace.FreeSpaceTooLow=Pouco espa\u00e7o em disco. Somente {0}GB restante. +DiskSpaceMonitorDescriptor.DiskSpace.FreeSpaceTooLow=Pouco espa\u00e7o em disco. Somente {0}GB dispon\u00edvel em {1}. From 6ad4c02c2381b87e20c021f3e9adc2fbb6c61dd2 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Mon, 7 Aug 2017 07:19:13 -0700 Subject: [PATCH 065/109] [maven-release-plugin] prepare for next development iteration --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index fbd4e27dd2..36dfadd08c 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.73 + 2.74-SNAPSHOT cli diff --git a/core/pom.xml b/core/pom.xml index 2cf8a6debd..d315aff83a 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.73 + 2.74-SNAPSHOT jenkins-core diff --git a/pom.xml b/pom.xml index e4631ebaa8..633cf4bc6d 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.73 + 2.74-SNAPSHOT pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - jenkins-2.73 + HEAD diff --git a/test/pom.xml b/test/pom.xml index 34b13bf24f..6598da0930 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.73 + 2.74-SNAPSHOT test diff --git a/war/pom.xml b/war/pom.xml index e02ef837ff..5c53ff55e0 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.73 + 2.74-SNAPSHOT jenkins-war From ff8ff3f450d3ece0abd19c1d92af9ca212e735b9 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Mon, 7 Aug 2017 07:19:13 -0700 Subject: [PATCH 066/109] [maven-release-plugin] prepare release jenkins-2.73 --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 9c52bbda98..fbd4e27dd2 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.73-SNAPSHOT + 2.73 cli diff --git a/core/pom.xml b/core/pom.xml index f675636fe6..2cf8a6debd 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.73-SNAPSHOT + 2.73 jenkins-core diff --git a/pom.xml b/pom.xml index 299d8a9031..e4631ebaa8 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.73-SNAPSHOT + 2.73 pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - HEAD + jenkins-2.73 diff --git a/test/pom.xml b/test/pom.xml index 6c73ebfc97..34b13bf24f 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.73-SNAPSHOT + 2.73 test diff --git a/war/pom.xml b/war/pom.xml index fc91bdd6b3..e02ef837ff 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.73-SNAPSHOT + 2.73 jenkins-war From 2bb5cfd097ec3e7298327ebccf62e20fe54f04eb Mon Sep 17 00:00:00 2001 From: Damian Szczepanik Date: Mon, 7 Aug 2017 22:40:46 +0200 Subject: [PATCH 067/109] Added Polish translations --- .../PluginManager/installed_pl.properties | 8 +++-- .../config_pl.properties | 27 +++++++++++++++-- .../hudson/security/Messages_pl.properties | 20 ++++++++++++- .../SecurityRealm/signup_pl.properties | 25 ++++++++++++++++ .../hudson/tasks/Messages_pl.properties | 10 +++++-- .../message_pl.properties | 30 +++++++++++++++++++ 6 files changed, 110 insertions(+), 10 deletions(-) create mode 100644 core/src/main/resources/hudson/security/SecurityRealm/signup_pl.properties create mode 100644 core/src/main/resources/jenkins/security/UpdateSiteWarningsMonitor/message_pl.properties diff --git a/core/src/main/resources/hudson/PluginManager/installed_pl.properties b/core/src/main/resources/hudson/PluginManager/installed_pl.properties index 882151920a..4fb0ab51f3 100644 --- a/core/src/main/resources/hudson/PluginManager/installed_pl.properties +++ b/core/src/main/resources/hudson/PluginManager/installed_pl.properties @@ -1,6 +1,6 @@ # The MIT License # -# Copyright (c) 2004-2016, Sun Microsystems, Damian Szczepanik +# Copyright (c) 2004-2017, Sun Microsystems, Damian Szczepanik # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -28,12 +28,14 @@ Restart\ Once\ No\ Jobs\ Are\ Running=Uruchom ponownie gdy \u017Cadne zadania ni Uncheck\ to\ disable\ the\ plugin=Odznacz aby wy\u0142\u0105czy\u0107 wtyczk\u0119 Uninstall=Odinstaluj Version=Wersja -downgradeTo=Powr\u00F3\u0107 do starszej wersji {0} +downgradeTo=Powr\u00F3\u0107 do wersji {0} requires.restart=Wymagane jest ponowne uruchomienie Jenkinsa. Zmiany wtyczek w tym momencie s\u0105 bardzo niewskazane. Uruchom ponownie Jenkinsa, zanim wprowadzisz zmiany. Uninstallation\ pending=Trwa odinstalowywanie This\ plugin\ cannot\ be\ disabled=Ta wtyczka nie mo\u017Ce by\u0107 wy\u0142\u0105czona No\ plugins\ installed.=Brak zainstalowanych wtyczek -This\ plugin\ cannot\ be\ enabled=Ta wtyczka nie mo\u017Ce by\u0107 wy\u0142\u0105czona +This\ plugin\ cannot\ be\ enabled=Ta wtyczka nie mo\u017Ce by\u0107 w\u0142\u0105czona Update\ Center=Centrum aktualizacji Filter=Filtruj No\ description\ available.=Opis nie jest dost\u0119pny +Warning=Ostrze\u017Cenie +New\ plugins\ will\ take\ effect\ once\ you\ restart\ Jenkins=Nowe wtyczki zostan\u0105 w\u0142\u0105czone po ponownym uruchomieniu Jenkinsa. diff --git a/core/src/main/resources/hudson/security/HudsonPrivateSecurityRealm/config_pl.properties b/core/src/main/resources/hudson/security/HudsonPrivateSecurityRealm/config_pl.properties index c90b977db4..1b1b2f423f 100644 --- a/core/src/main/resources/hudson/security/HudsonPrivateSecurityRealm/config_pl.properties +++ b/core/src/main/resources/hudson/security/HudsonPrivateSecurityRealm/config_pl.properties @@ -1,3 +1,24 @@ -# This file is under the MIT License by authors - -Allow\ users\ to\ sign\ up=Pozw\u00F3l ludziom na rejestrowanie si\u0119 +# The MIT License +# +# Copyright (c) 2013-2017, Kohsuke Kawaguchi, Sun Microsystems, Inc., and a number of other of contributors +# +# 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. +Allow\ users\ to\ sign\ up=Pozw\u00F3l u\u017Cytkownikom na rejestrowanie si\u0119 +Enable\ captcha\ on\ sign\ up=W\u0142\u0105cz captcha podczas rejestracji +Captcha\ Support=Wsparcie dla captcha diff --git a/core/src/main/resources/hudson/security/Messages_pl.properties b/core/src/main/resources/hudson/security/Messages_pl.properties index ec181ceb9a..cac95150ed 100644 --- a/core/src/main/resources/hudson/security/Messages_pl.properties +++ b/core/src/main/resources/hudson/security/Messages_pl.properties @@ -26,5 +26,23 @@ LDAPSecurityRealm.DisplayName=LDAP # Create/delete/modify users that can log in to this Jenkins HudsonPrivateSecurityRealm.ManageUserLinks.Description=Dodawaj, usuwaj i modyfikuj u\u017Cytkownik\u00F3w, kt\u00F3rzy mog\u0105 si\u0119 logowa\u0107 do Jenkinsa GlobalSecurityConfiguration.DisplayName=Konfiguruj ustawienia bezpiecze\u0144stwa -GlobalSecurityConfiguration.Description=Zabezpiecz Jenkinsa, decyduj, kto ma do niego dost\u0119p. +GlobalSecurityConfiguration.Description=Zabezpiecz Jenkinsa: decyduj, kto ma do niego dost\u0119p. HudsonPrivateSecurityRealm.Details.DisplayName=Has\u0142o +HudsonPrivateSecurityRealm.DisplayName=W\u0142asna baza danych Jenkinsa +HudsonPrivateSecurityRealm.Details.PasswordError=\ + Potw\u00F3rzone has\u0142o nie jest takie samo, jak wpisane. \ + Upewnij si\u0119, \u017Ce oba has\u0142a s\u0105 takie same. +HudsonPrivateSecurityRealm.CreateAccount.PasswordRequired=Has\u0142o jest wymagane +HudsonPrivateSecurityRealm.CreateAccount.UserNameRequired=Nazwa u\u017Cytkownika jest wymagana +HudsonPrivateSecurityRealm.CreateAccount.InvalidEmailAddress=Niepoprawny adres e-mail +HudsonPrivateSecurityRealm.CreateAccount.UserNameAlreadyTaken=Nazwa u\u017Cytkownika jest ju\u017C u\u017Cywana +AuthorizationStrategy.DisplayName=Ka\u017Cdy u\u017Cytkownik mo\u017Ce wszystko +LDAPSecurityRealm.SyntaxOfServerField=Sk\u0142adnia serwera to SERWER, SERWER:PORT lub ldaps://SERVER[:PORT] +LDAPSecurityRealm.UnknownHost=Nieznany host +LDAPSecurityRealm.InvalidPortNumber=Niepoprawna warto\u015B\u0107 portu +PAMSecurityRealm.ReadPermission=Jenkins musi mie\u0107 mo\u017Cliwo\u015B\u0107 odczytu /etc/shadow +PAMSecurityRealm.BelongToGroup={0} musi nale\u017Ce\u0107 do grupy {1} aby m\u00F3c odczyta\u0107 /etc/shadow +PAMSecurityRealm.Success=Sukces +PAMSecurityRealm.User=U\u017Cytkownik \u2018{0}\u2019 +PAMSecurityRealm.CurrentUser=Aktualny u\u017Cytkownik +Permission.Permissions.Title=nd. diff --git a/core/src/main/resources/hudson/security/SecurityRealm/signup_pl.properties b/core/src/main/resources/hudson/security/SecurityRealm/signup_pl.properties new file mode 100644 index 0000000000..b8c44f57f3 --- /dev/null +++ b/core/src/main/resources/hudson/security/SecurityRealm/signup_pl.properties @@ -0,0 +1,25 @@ +# The MIT License +# +# Copyright (c) 2017, Kohsuke Kawaguchi, Sun Microsystems, Inc., and a number of other of contributors +# +# 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. + +Signup\ not\ supported==Rejestracja nie jest wspierana +This\ is\ not\ supported\ in\ the\ current\ configuration.=Niedost\u0119pne dla aktualnej konfiguracji. +Sign\ up=Zarejestruj diff --git a/core/src/main/resources/hudson/tasks/Messages_pl.properties b/core/src/main/resources/hudson/tasks/Messages_pl.properties index f685a33f96..649fb965a1 100644 --- a/core/src/main/resources/hudson/tasks/Messages_pl.properties +++ b/core/src/main/resources/hudson/tasks/Messages_pl.properties @@ -1,6 +1,6 @@ # The MIT License # -# Copyright (c) 2016, Damian Szczepanik +# Copyright (c) 2016-2017, Damian Szczepanik # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -21,6 +21,10 @@ # THE SOFTWARE. BuildTrigger.NoProjectSpecified=Nie podano \u017Cadnego projektu BuildTrigger.NoSuchProject=Nie odnaleziono projektu ''{0}''. Czy chodzi\u0142o o ''{1}''? -ArtifactArchiver.NoIncludes=\ ArtifactArchiver.DisplayName=Zachowaj w artifactory -BuildTrigger.DisplayName=Uruchom inne zadania \ No newline at end of file +BuildTrigger.DisplayName=Uruchom inne zadania +Ant.DisplayName=Uruchom Ant'a +Ant.GlobalConfigNeeded=By\u0107 mo\u017Ce musisz skonfigurowa\u0107, gdzie jest instalacja Ant'a? +Ant.NotADirectory={0} nie jest katalogiem +Ant.NotAntDirectory={0} nie wygl\u0105da, aby by\u0142 katalogiem Ant'a +Ant.ProjectConfigNeeded=By\u0107 mo\u017Ce musisz skonfigurowa\u0107 projekt, aby wybra\u0107 jedn\u0105 z instalacji Ant'a? diff --git a/core/src/main/resources/jenkins/security/UpdateSiteWarningsMonitor/message_pl.properties b/core/src/main/resources/jenkins/security/UpdateSiteWarningsMonitor/message_pl.properties new file mode 100644 index 0000000000..3e6ce7eddf --- /dev/null +++ b/core/src/main/resources/jenkins/security/UpdateSiteWarningsMonitor/message_pl.properties @@ -0,0 +1,30 @@ +# The MIT License +# +# Copyright (c) 2017, Kohsuke Kawaguchi, Sun Microsystems, Inc., and a number of other of contributors +# +# 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. + +pluginTitle={0} {1}: +coreTitle=Jenkins {0} i kluczowe biblioteki: + +blurb=Zosta\u0142y opublikowane ostrze\u017Cenia dla aktualnie zainstalowanych komponent\u00F3w: +more=Pozosta\u0142e ostrze\u017Cenia zosta\u0142y ukryte ze wzgl\u0119du na u\u017Cywan\u0105 konfiguracje bezpiecze\u0144stwa. + +pluginManager.link=Przejd\u017A do managera wtyczek +configureSecurity.link=Skonfiguruj, kt\u00F3re z ostrze\u017Ce\u0144 b\u0119d\u0105 wy\u015Bwietlane From b8f6246d7600a6e7d8b732da9c3153fb33f5ddde Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Fri, 11 Aug 2017 10:09:27 -0400 Subject: [PATCH 068/109] [JENKINS-41631] Enforce upper bound deps on Jenkins core (#2956) * [JENKINS-41631] Enforce upper bound deps on Jenkins core. * stapler 1.252 --- core/pom.xml | 14 +++++++++++++- pom.xml | 10 ++++++++-- test/pom.xml | 47 ++++++++++++++++++++++++++++++++++++++++++++--- war/pom.xml | 1 - 4 files changed, 65 insertions(+), 7 deletions(-) diff --git a/core/pom.xml b/core/pom.xml index d315aff83a..c486ebd0bb 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -39,7 +39,7 @@ THE SOFTWARE. true - 1.250 + 1.252 2.5.6.SEC03 2.4.11 @@ -95,6 +95,12 @@ THE SOFTWARE. com.google.inject guice + + + com.google.guava + guava + + @@ -608,6 +614,12 @@ THE SOFTWARE. com.google.guava guava + + + com.google.code.findbugs + jsr305 + + com.google.guava diff --git a/pom.xml b/pom.xml index 633cf4bc6d..ae289b8da3 100644 --- a/pom.xml +++ b/pom.xml @@ -87,7 +87,7 @@ THE SOFTWARE. jenkins-jira 11.0.1 - 1.7.7 + 1.7.25 2.14 1.4.1 0.11 @@ -207,7 +207,7 @@ THE SOFTWARE. commons-logging commons-logging - 1.1.3 + 1.2 provided @@ -558,6 +558,11 @@ THE SOFTWARE. + + org.apache.maven.plugins + maven-enforcer-plugin + 3.0.0-M1 + org.eclipse.m2e @@ -690,6 +695,7 @@ THE SOFTWARE. 1.${java.level} + diff --git a/test/pom.xml b/test/pom.xml index 6598da0930..faa247b8b2 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -53,7 +53,7 @@ THE SOFTWARE. ${project.groupId} jenkins-test-harness - 2.20 + 2.23 test @@ -85,6 +85,14 @@ THE SOFTWARE. commons-codec commons-codec + + com.google.inject + guice + + + org.apache.ant + ant + @@ -106,7 +114,7 @@ THE SOFTWARE. org.jenkins-ci.plugins junit - 1.2-beta-4 + 1.6 test @@ -119,6 +127,12 @@ THE SOFTWARE. org.jvnet.mock-javamail mock-javamail 1.7 + + + javax.mail + mail + + org.hamcrest @@ -128,7 +142,7 @@ THE SOFTWARE. xalan xalan - 2.7.1 + 2.7.2 xml-apis @@ -156,6 +170,16 @@ THE SOFTWARE. org.reflections reflections 0.9.9 + + + com.google.guava + guava + + + com.google.code.findbugs + jsr305 + + org.codehaus.geb @@ -239,6 +263,23 @@ THE SOFTWARE. true + + org.apache.maven.plugins + maven-enforcer-plugin + + + + + org.apache.maven:maven-embedder + org.codehaus.plexus:plexus-classworlds + org.apache.maven:maven-core + org.apache.maven:maven-aether-provider + org.codehaus.plexus:plexus-utils + + + + + diff --git a/war/pom.xml b/war/pom.xml index 75eb49104e..ddec0dea84 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -571,7 +571,6 @@ THE SOFTWARE. org.apache.maven.plugins maven-enforcer-plugin - 1.3.1 enforce-versions From a975f7227ee58d3f274b82e3d9b615b297f30fa0 Mon Sep 17 00:00:00 2001 From: Andrew Bayer Date: Fri, 11 Aug 2017 11:03:42 -0400 Subject: [PATCH 069/109] [FIXED JENKINS-46082] API will include culprits again. --- .../main/java/hudson/model/AbstractBuild.java | 6 +++++ .../java/hudson/model/AbstractBuildTest.java | 25 ++++++++++++++++++- 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/hudson/model/AbstractBuild.java b/core/src/main/java/hudson/model/AbstractBuild.java index 9644c2c0de..c8674fb028 100644 --- a/core/src/main/java/hudson/model/AbstractBuild.java +++ b/core/src/main/java/hudson/model/AbstractBuild.java @@ -324,6 +324,12 @@ public abstract class AbstractBuild

,R extends Abs return culprits; } + @Override + @Exported + @Nonnull public Set getCulprits() { + return RunWithSCM.super.getCulprits(); + } + @Override public boolean shouldCalculateCulprits() { return getCulpritIds() == null; diff --git a/test/src/test/java/hudson/model/AbstractBuildTest.java b/test/src/test/java/hudson/model/AbstractBuildTest.java index df845c06ad..fad2b3dcb7 100644 --- a/test/src/test/java/hudson/model/AbstractBuildTest.java +++ b/test/src/test/java/hudson/model/AbstractBuildTest.java @@ -24,6 +24,7 @@ package hudson.model; import com.gargoylesoftware.htmlunit.Page; +import com.gargoylesoftware.htmlunit.WebResponse; import hudson.EnvVars; import hudson.Launcher; import hudson.model.queue.QueueTaskFuture; @@ -43,6 +44,8 @@ import static org.junit.Assert.*; import hudson.tasks.LogRotatorTest; import hudson.tasks.Recorder; import hudson.util.OneShotEvent; +import net.sf.json.JSONArray; +import net.sf.json.JSONObject; import org.junit.Rule; import org.junit.Test; import org.jvnet.hudson.test.CaptureEnvironmentBuilder; @@ -53,6 +56,7 @@ import org.jvnet.hudson.test.JenkinsRule; import org.jvnet.hudson.test.TestBuilder; import org.jvnet.hudson.test.TestExtension; import org.jvnet.hudson.test.UnstableBuilder; +import org.xml.sax.SAXException; /** * Unit tests of {@link AbstractBuild}. @@ -125,12 +129,31 @@ public class AbstractBuildTest { assertThat(rsp.getWebResponse().getContentAsString(), containsString(out)); } - private void assertCulprits(AbstractBuild b, String... expectedIds) { + private void assertCulprits(AbstractBuild b, String... expectedIds) throws IOException, SAXException { Set actual = new TreeSet<>(); for (User u : b.getCulprits()) { actual.add(u.getId()); } assertEquals(actual, new TreeSet<>(Arrays.asList(expectedIds))); + + if (expectedIds.length > 0) { + JenkinsRule.WebClient wc = j.createWebClient(); + WebResponse response = wc.goTo(b.getUrl() + "api/json?tree=culprits[id]", "application/json").getWebResponse(); + JSONObject json = JSONObject.fromObject(response.getContentAsString()); + + Object culpritsArray = json.get("culprits"); + assertNotNull(culpritsArray); + assertTrue(culpritsArray instanceof JSONArray); + Set fromApi = new TreeSet<>(); + for (Object o : ((JSONArray)culpritsArray).toArray()) { + assertTrue(o instanceof JSONObject); + Object id = ((JSONObject)o).get("id"); + if (id instanceof String) { + fromApi.add((String)id); + } + } + assertEquals(fromApi, new TreeSet<>(Arrays.asList(expectedIds))); + } } @Test From 86c28ea056236ee9125af7cc85b256cb65643a2f Mon Sep 17 00:00:00 2001 From: godfath3r Date: Sat, 12 Aug 2017 13:24:32 +0300 Subject: [PATCH 070/109] [JENKINS-42376] - Add executor name on Unexpected exception. (#2970) * Add executor name on Unexpected exception. * Add a colon after job name --- core/src/main/java/hudson/model/Executor.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/hudson/model/Executor.java b/core/src/main/java/hudson/model/Executor.java index 279a1fa762..a9b428ffba 100644 --- a/core/src/main/java/hudson/model/Executor.java +++ b/core/src/main/java/hudson/model/Executor.java @@ -444,7 +444,7 @@ public class Executor extends Thread implements ModelObject { LOGGER.log(FINE, getName()+" interrupted",e); // die peacefully } catch(Exception | Error e) { - LOGGER.log(SEVERE, "Unexpected executor death", e); + LOGGER.log(SEVERE, getName()+": Unexpected executor death", e); } finally { if (asynchronousExecution == null) { finish2(); From 34bf393255bb603bb3b0fb921a41fc3916d16f42 Mon Sep 17 00:00:00 2001 From: Josiah Haswell Date: Sat, 12 Aug 2017 16:53:41 -0600 Subject: [PATCH 071/109] [FIX JENKINS-43848] - Lack of cache-invalidation headers results in stale item list (#2973) * Saving progress for review * Adding licenses * Adding integration test for headers * Removing proposal for refactoring to method objects * Removing whitespace changeswq * Fixing test --- core/src/main/java/hudson/model/View.java | 4 +++ test/src/test/java/hudson/model/ViewTest.java | 25 +++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/core/src/main/java/hudson/model/View.java b/core/src/main/java/hudson/model/View.java index 375087c2da..f19ab9a605 100644 --- a/core/src/main/java/hudson/model/View.java +++ b/core/src/main/java/hudson/model/View.java @@ -1053,6 +1053,10 @@ public abstract class View extends AbstractModelObject implements AccessControll */ @Restricted(DoNotUse.class) public Categories doItemCategories(StaplerRequest req, StaplerResponse rsp, @QueryParameter String iconStyle) throws IOException, ServletException { + + rsp.addHeader("Cache-Control", "no-cache, no-store, must-revalidate"); + rsp.addHeader("Pragma", "no-cache"); + rsp.addHeader("Expires", "0"); getOwner().checkPermission(Item.CREATE); Categories categories = new Categories(); int order = 0; diff --git a/test/src/test/java/hudson/model/ViewTest.java b/test/src/test/java/hudson/model/ViewTest.java index 56f99abdf0..7a70d87df2 100644 --- a/test/src/test/java/hudson/model/ViewTest.java +++ b/test/src/test/java/hudson/model/ViewTest.java @@ -25,6 +25,7 @@ package hudson.model; import com.gargoylesoftware.htmlunit.WebRequest; import com.gargoylesoftware.htmlunit.html.DomNodeUtil; +import com.gargoylesoftware.htmlunit.util.NameValuePair; import jenkins.model.Jenkins; import org.jvnet.hudson.test.Issue; import com.gargoylesoftware.htmlunit.FailingHttpStatusCodeException; @@ -53,11 +54,15 @@ import hudson.util.HudsonIsLoading; import java.io.File; import java.io.IOException; import java.util.Arrays; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.logging.Level; import java.util.logging.LogRecord; import jenkins.model.ProjectNamingStrategy; import jenkins.security.NotReallyRoleSensitiveCallable; + +import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.*; import org.junit.Ignore; import org.junit.Rule; @@ -85,6 +90,26 @@ public class ViewTest { assertNotNull(j.createWebClient().goTo("").getWebResponse().getResponseHeaderValue("X-Hudson")); } + @Issue("JENKINS-43848") + @Test public void testNoCacheHeadersAreSet() throws Exception { + List responseHeaders = j.createWebClient() + .goTo("view/all/itemCategories", "application/json") + .getWebResponse() + .getResponseHeaders(); + + + final Map values = new HashMap<>(); + + for(NameValuePair p : responseHeaders) { + values.put(p.getName(), p.getValue()); + } + + String resp = values.get("Cache-Control"); + assertThat(resp, is("no-cache, no-store, must-revalidate")); + assertThat(values.get("Expires"), is("0")); + assertThat(values.get("Pragma"), is("no-cache")); + } + /** * Creating two views with the same name. */ From c772b373a41ba03fd16106d50cabbf3482cde633 Mon Sep 17 00:00:00 2001 From: pbe-axelor Date: Mon, 14 Aug 2017 12:16:36 +0200 Subject: [PATCH 072/109] Fixed French translation Use unicode characters in build_with_parameters french translation. --- core/src/main/resources/jenkins/model/Messages_fr.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/resources/jenkins/model/Messages_fr.properties b/core/src/main/resources/jenkins/model/Messages_fr.properties index 580e44c5b4..884604d9fa 100644 --- a/core/src/main/resources/jenkins/model/Messages_fr.properties +++ b/core/src/main/resources/jenkins/model/Messages_fr.properties @@ -47,7 +47,7 @@ Mailer.Localhost.Error=Veuillez configurer un nom d''h\u00f4te valide, au lieu d PatternProjectNamingStrategy.DisplayName=Pattern PatternProjectNamingStrategy.NamePatternRequired=Le nom de pattern est obligatoire PatternProjectNamingStrategy.NamePatternInvalidSyntax=La syntaxe de l''expression r\u00e9guli\u00e8re est invalide. -ParameterizedJobMixIn.build_with_parameters=Lancer un build avec des paramètres +ParameterizedJobMixIn.build_with_parameters=Lancer un build avec des param\u00e8tres ParameterizedJobMixIn.build_now=Lancer un build BlockedBecauseOfBuildInProgress.shortDescription=Le build #{0} est d\u00e9j\u00e0 en cours {1} BlockedBecauseOfBuildInProgress.ETA=\ (fin pr\u00e9vue \u00e0 : {0}) From b216af3ab2e8366a8b141df92372ff4405b4d89d Mon Sep 17 00:00:00 2001 From: joyyc Date: Mon, 14 Aug 2017 22:50:01 +0800 Subject: [PATCH 073/109] Get rid of excess semicolons --- core/src/main/java/hudson/model/Run.java | 1 - 1 file changed, 1 deletion(-) diff --git a/core/src/main/java/hudson/model/Run.java b/core/src/main/java/hudson/model/Run.java index 8cf50d2fb4..c467439347 100644 --- a/core/src/main/java/hudson/model/Run.java +++ b/core/src/main/java/hudson/model/Run.java @@ -2153,7 +2153,6 @@ public abstract class Run ,RunT extends Run Date: Mon, 14 Aug 2017 15:40:46 -0400 Subject: [PATCH 074/109] javadoc:javadoc could fail under some circumstances. --- Jenkinsfile | 2 +- pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index bcced2b016..3599b383fc 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -39,7 +39,7 @@ for(i = 0; i < buildTypes.size(); i++) { "MAVEN_OPTS=-Xmx1536m -Xms512m"]) { // Actually run Maven! // -Dmaven.repo.local=… tells Maven to create a subdir in the temporary directory for the local Maven repository - def mvnCmd = "mvn -Pdebug -U clean install javadoc:javadoc ${runTests ? '-Dmaven.test.failure.ignore' : '-DskipTests'} -V -B -Dmaven.repo.local=${pwd tmp: true}/m2repo -s settings-azure.xml -e" + def mvnCmd = "mvn -Pdebug -U javadoc:javadoc clean install ${runTests ? '-Dmaven.test.failure.ignore' : '-DskipTests'} -V -B -Dmaven.repo.local=${pwd tmp: true}/m2repo -s settings-azure.xml -e" if(isUnix()) { sh mvnCmd sh 'test `git status --short | tee /dev/stderr | wc --bytes` -eq 0' diff --git a/pom.xml b/pom.xml index ae289b8da3..1747061576 100644 --- a/pom.xml +++ b/pom.xml @@ -723,7 +723,7 @@ THE SOFTWARE. org.codehaus.mojo extra-enforcer-rules - 1.0-beta-2 + 1.0-beta-6 From df9c18548326a0a8f1eba2962c1b766131aa29e5 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Tue, 15 Aug 2017 09:03:38 -0700 Subject: [PATCH 075/109] [maven-release-plugin] prepare release jenkins-2.74 --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 6 +++--- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 36dfadd08c..3b61ec7dd4 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.74-SNAPSHOT + 2.74 cli diff --git a/core/pom.xml b/core/pom.xml index c486ebd0bb..a554ab35c4 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.74-SNAPSHOT + 2.74 jenkins-core diff --git a/pom.xml b/pom.xml index 1747061576..e912bb7f48 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.74-SNAPSHOT + 2.74 pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - HEAD + jenkins-2.74 @@ -695,7 +695,7 @@ THE SOFTWARE. 1.${java.level} - + diff --git a/test/pom.xml b/test/pom.xml index faa247b8b2..0b0fe9a07a 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.74-SNAPSHOT + 2.74 test diff --git a/war/pom.xml b/war/pom.xml index ddec0dea84..514e088dab 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.74-SNAPSHOT + 2.74 jenkins-war From ea77fdc0c59efe12cfc8875ef1289fbc27827200 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Tue, 15 Aug 2017 09:03:39 -0700 Subject: [PATCH 076/109] [maven-release-plugin] prepare for next development iteration --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 3b61ec7dd4..b98eaaa433 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.74 + 2.75-SNAPSHOT cli diff --git a/core/pom.xml b/core/pom.xml index a554ab35c4..78ddda7daa 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.74 + 2.75-SNAPSHOT jenkins-core diff --git a/pom.xml b/pom.xml index e912bb7f48..7488ff1f29 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.74 + 2.75-SNAPSHOT pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - jenkins-2.74 + HEAD diff --git a/test/pom.xml b/test/pom.xml index 0b0fe9a07a..9d12833b20 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.74 + 2.75-SNAPSHOT test diff --git a/war/pom.xml b/war/pom.xml index 514e088dab..4e25ba2013 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.74 + 2.75-SNAPSHOT jenkins-war From 81e52b83d5caefd9a9637b47787baf9cfddb0421 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Wed, 16 Aug 2017 18:36:20 -0700 Subject: [PATCH 077/109] [maven-release-plugin] prepare release jenkins-2.60.3 --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 17569e230d..9df5727068 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.60.3-SNAPSHOT + 2.60.3 cli diff --git a/core/pom.xml b/core/pom.xml index 66c9d7a021..8d994d1915 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.3-SNAPSHOT + 2.60.3 jenkins-core diff --git a/pom.xml b/pom.xml index 27b8adb594..aeff01651a 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.3-SNAPSHOT + 2.60.3 pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - HEAD + jenkins-2.60.3 diff --git a/test/pom.xml b/test/pom.xml index a5dfe2a8e6..35198862f0 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.3-SNAPSHOT + 2.60.3 test diff --git a/war/pom.xml b/war/pom.xml index 7011c89a6e..4adb3b0156 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.3-SNAPSHOT + 2.60.3 jenkins-war From 73ce3d74de0565ee38e41adc1a4b51c902a9163a Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Wed, 16 Aug 2017 18:36:21 -0700 Subject: [PATCH 078/109] [maven-release-plugin] prepare for next development iteration --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 9df5727068..990dc5d0b0 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.60.3 + 2.60.4-SNAPSHOT cli diff --git a/core/pom.xml b/core/pom.xml index 8d994d1915..5248d7f278 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.3 + 2.60.4-SNAPSHOT jenkins-core diff --git a/pom.xml b/pom.xml index aeff01651a..21ecf564ea 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.3 + 2.60.4-SNAPSHOT pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - jenkins-2.60.3 + HEAD diff --git a/test/pom.xml b/test/pom.xml index 35198862f0..0f494e6748 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.3 + 2.60.4-SNAPSHOT test diff --git a/war/pom.xml b/war/pom.xml index 4adb3b0156..cf1363a22f 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.60.3 + 2.60.4-SNAPSHOT jenkins-war From ccb3e4cd501b14f617979117ea31fc21f07b972b Mon Sep 17 00:00:00 2001 From: bale836 Date: Sat, 19 Aug 2017 21:28:48 +0800 Subject: [PATCH 079/109] [JENKINS-46288] - Fix ProxyConfiguration validation for NTLM authentication (#2984) /** * Constructor. * @param userName The user name. This should not include the domain to authenticate with. * For example: "user" is correct whereas "DOMAIN\\user" is not. * @param password The password. * @param host The host the authentication request is originating from. Essentially, the * computer name for this machine. * @param domain The domain to authenticate within. */ --- core/src/main/java/hudson/ProxyConfiguration.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/hudson/ProxyConfiguration.java b/core/src/main/java/hudson/ProxyConfiguration.java index 7c2809c53f..3baea805d4 100644 --- a/core/src/main/java/hudson/ProxyConfiguration.java +++ b/core/src/main/java/hudson/ProxyConfiguration.java @@ -396,7 +396,7 @@ public final class ProxyConfiguration extends AbstractDescribableImpl= 0){ final String domain = userName.substring(0, userName.indexOf('\\')); final String user = userName.substring(userName.indexOf('\\') + 1); - return new NTCredentials(user, Secret.fromString(password).getPlainText(), domain, ""); + return new NTCredentials(user, Secret.fromString(password).getPlainText(), "", domain); } else { return new UsernamePasswordCredentials(userName, Secret.fromString(password).getPlainText()); } From efdd52e9e78cc057ea49a7d338ee575d131c1959 Mon Sep 17 00:00:00 2001 From: Oleg Nenashev Date: Sat, 19 Aug 2017 18:23:31 +0200 Subject: [PATCH 080/109] [JENKINS-45841] - Disable JNLP/JNLP2/CLI protocols on new installations (#2950) * [JENKINS-45841] - Disable JNLP/JNLP2/CLI protocols in the Setup Wizard * [JENKINS-45841] - Implement deprecation data model for Agent protocols. WiP * [JENKINS-45841] - DeprecationCause is YAGNI, extend UI and document deprecated protocols * [JENKINS-45841] - Fix the layouts * [JENKINS-45841] - Add administrative monitor for deprecated protocols * [JENKINS-45841] - Added Initializer check, polished the warning message * [JENKINS-45841] - Add tests * [JENKINS-45841] - Replace JNLP protocol links by jenkins.io redirects * [JENKINS-45841] - Address comments from @jglick * [JENKINS-45841] - Initializer checks status when Jenkins instance is not ready --- .../src/main/java/hudson/cli/CliProtocol.java | 7 +- .../main/java/hudson/cli/CliProtocol2.java | 8 +- core/src/main/java/jenkins/AgentProtocol.java | 22 +++ .../java/jenkins/install/SetupWizard.java | 10 ++ .../DeprecatedAgentProtocolMonitor.java | 113 +++++++++++++ .../slaves/JnlpSlaveAgentProtocol.java | 5 + .../slaves/JnlpSlaveAgentProtocol2.java | 5 + .../slaves/JnlpSlaveAgentProtocol3.java | 5 + .../cli/CliProtocol/deprecationCause.jelly | 4 + .../CliProtocol/deprecationCause.properties | 2 + .../cli/CliProtocol2/deprecationCause.jelly | 4 + .../CliProtocol2/deprecationCause.properties | 3 + .../GlobalSecurityConfiguration/index.groovy | 5 + .../message.jelly | 7 + .../message.properties | 4 + .../deprecationCause.jelly | 4 + .../deprecationCause.properties | 2 + .../deprecationCause.jelly | 5 + .../deprecationCause.properties | 3 + .../deprecationCause.jelly | 5 + .../deprecationCause.properties | 1 + .../description.properties | 5 +- .../description_de.properties | 4 +- .../jenkins/slaves/Messages.properties | 7 +- .../test/java/jenkins/AgentProtocolTest.java | 156 ++++++++++++++++++ .../java/jenkins/install/SetupWizardTest.java | 15 ++ .../config.xml | 42 +++++ .../jenkins.CLI.xml | 4 + .../config.xml | 39 +++++ .../config.xml | 45 +++++ 30 files changed, 529 insertions(+), 12 deletions(-) create mode 100644 core/src/main/java/jenkins/slaves/DeprecatedAgentProtocolMonitor.java create mode 100644 core/src/main/resources/hudson/cli/CliProtocol/deprecationCause.jelly create mode 100644 core/src/main/resources/hudson/cli/CliProtocol/deprecationCause.properties create mode 100644 core/src/main/resources/hudson/cli/CliProtocol2/deprecationCause.jelly create mode 100644 core/src/main/resources/hudson/cli/CliProtocol2/deprecationCause.properties create mode 100644 core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message.jelly create mode 100644 core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message.properties create mode 100644 core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause.jelly create mode 100644 core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause.properties create mode 100644 core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause.jelly create mode 100644 core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause.properties create mode 100644 core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause.jelly create mode 100644 core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause.properties create mode 100644 test/src/test/java/jenkins/AgentProtocolTest.java create mode 100644 test/src/test/resources/jenkins/AgentProtocolTest/testShouldDisableCLIProtocolsWhenCLIisDisabled/config.xml create mode 100644 test/src/test/resources/jenkins/AgentProtocolTest/testShouldDisableCLIProtocolsWhenCLIisDisabled/jenkins.CLI.xml create mode 100644 test/src/test/resources/jenkins/AgentProtocolTest/testShouldNotDisableProtocolsForMigratedInstances/config.xml create mode 100644 test/src/test/resources/jenkins/AgentProtocolTest/testShouldNotOverrideUserConfiguration/config.xml diff --git a/core/src/main/java/hudson/cli/CliProtocol.java b/core/src/main/java/hudson/cli/CliProtocol.java index cdf25b033f..58b5c95a64 100644 --- a/core/src/main/java/hudson/cli/CliProtocol.java +++ b/core/src/main/java/hudson/cli/CliProtocol.java @@ -47,12 +47,17 @@ public class CliProtocol extends AgentProtocol { return jenkins.CLI.get().isEnabled() ? "CLI-connect" : null; } + @Override + public boolean isDeprecated() { + return true; + } + /** * {@inheritDoc} */ @Override public String getDisplayName() { - return "Jenkins CLI Protocol/1"; + return "Jenkins CLI Protocol/1 (deprecated, unencrypted)"; } @Override diff --git a/core/src/main/java/hudson/cli/CliProtocol2.java b/core/src/main/java/hudson/cli/CliProtocol2.java index e7d0bad71f..9fca4055fb 100644 --- a/core/src/main/java/hudson/cli/CliProtocol2.java +++ b/core/src/main/java/hudson/cli/CliProtocol2.java @@ -38,12 +38,18 @@ public class CliProtocol2 extends CliProtocol { return false; } + @Override + public boolean isDeprecated() { + // We do not recommend it though it may be required for Remoting CLI + return true; + } + /** * {@inheritDoc} */ @Override public String getDisplayName() { - return "Jenkins CLI Protocol/2"; + return "Jenkins CLI Protocol/2 (deprecated)"; } @Override diff --git a/core/src/main/java/jenkins/AgentProtocol.java b/core/src/main/java/jenkins/AgentProtocol.java index 93140b71c1..f4917b3996 100644 --- a/core/src/main/java/jenkins/AgentProtocol.java +++ b/core/src/main/java/jenkins/AgentProtocol.java @@ -8,6 +8,8 @@ import hudson.TcpSlaveAgentListener; import java.io.IOException; import java.net.Socket; import java.util.Set; +import javax.annotation.CheckForNull; +import javax.annotation.Nonnull; import jenkins.model.Jenkins; /** @@ -18,6 +20,15 @@ import jenkins.model.Jenkins; * Implementations of this extension point is singleton, and its {@link #handle(Socket)} method * gets invoked concurrently whenever a new connection comes in. * + *

Extending UI

+ *
+ *
description.jelly
+ *
Optional protocol description
+ *
deprecationCause.jelly
+ *
Optional. If the protocol is marked as {@link #isDeprecated()}, + * clarifies the deprecation reason and provides extra documentation links
+ *
+ * * @author Kohsuke Kawaguchi * @since 1.467 * @see TcpSlaveAgentListener @@ -53,6 +64,16 @@ public abstract class AgentProtocol implements ExtensionPoint { public boolean isRequired() { return false; } + + /** + * Checks if the protocol is deprecated. + * + * @since TODO + */ + public boolean isDeprecated() { + return false; + } + /** * Protocol name. * @@ -86,6 +107,7 @@ public abstract class AgentProtocol implements ExtensionPoint { return ExtensionList.lookup(AgentProtocol.class); } + @CheckForNull public static AgentProtocol of(String protocolName) { for (AgentProtocol p : all()) { String n = p.getName(); diff --git a/core/src/main/java/jenkins/install/SetupWizard.java b/core/src/main/java/jenkins/install/SetupWizard.java index 992ce935a7..0f04f903db 100644 --- a/core/src/main/java/jenkins/install/SetupWizard.java +++ b/core/src/main/java/jenkins/install/SetupWizard.java @@ -52,6 +52,8 @@ import java.net.HttpRetryException; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLConnection; +import java.util.Arrays; +import java.util.HashSet; import java.util.Iterator; import java.util.List; import jenkins.CLI; @@ -62,6 +64,7 @@ import net.sf.json.JSONArray; import net.sf.json.JSONObject; import org.apache.commons.io.FileUtils; import org.apache.commons.io.IOUtils; +import org.jenkinsci.remoting.engine.JnlpProtocol4Handler; import org.kohsuke.accmod.restrictions.DoNotUse; import org.kohsuke.stapler.interceptor.RequirePOST; @@ -127,6 +130,13 @@ public class SetupWizard extends PageDecorator { // Disable CLI over Remoting CLI.get().setEnabled(false); + // Disable old Non-Encrypted protocols () + HashSet newProtocols = new HashSet<>(jenkins.getAgentProtocols()); + newProtocols.removeAll(Arrays.asList( + "JNLP2-connect", "JNLP-connect", "CLI-connect" + )); + jenkins.setAgentProtocols(newProtocols); + // require a crumb issuer jenkins.setCrumbIssuer(new DefaultCrumbIssuer(false)); diff --git a/core/src/main/java/jenkins/slaves/DeprecatedAgentProtocolMonitor.java b/core/src/main/java/jenkins/slaves/DeprecatedAgentProtocolMonitor.java new file mode 100644 index 0000000000..096468e7b7 --- /dev/null +++ b/core/src/main/java/jenkins/slaves/DeprecatedAgentProtocolMonitor.java @@ -0,0 +1,113 @@ +/* + * The MIT License + * + * Copyright (c) 2017 CloudBees, 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. + */ +package jenkins.slaves; + +import hudson.Extension; +import hudson.init.InitMilestone; +import hudson.init.Initializer; +import hudson.model.AdministrativeMonitor; +import java.util.ArrayList; +import java.util.List; +import java.util.Set; +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.annotation.CheckForNull; +import jenkins.AgentProtocol; +import jenkins.model.Jenkins; +import org.apache.commons.lang.StringUtils; +import org.jenkinsci.Symbol; +import org.kohsuke.accmod.Restricted; +import org.kohsuke.accmod.restrictions.NoExternalUse; + + +/** + * Monitors enabled protocols and warns if an {@link AgentProtocol} is deprecated. + * + * @author Oleg Nenashev + * @since TODO + * @see AgentProtocol + */ +@Extension +@Symbol("deprecatedAgentProtocol") +@Restricted(NoExternalUse.class) +public class DeprecatedAgentProtocolMonitor extends AdministrativeMonitor { + + private static final Logger LOGGER = Logger.getLogger(DeprecatedAgentProtocolMonitor.class.getName()); + + public DeprecatedAgentProtocolMonitor() { + super(); + } + + @Override + public String getDisplayName() { + return Messages.DeprecatedAgentProtocolMonitor_displayName(); + } + + @Override + public boolean isActivated() { + final Set agentProtocols = Jenkins.getInstance().getAgentProtocols(); + for (String name : agentProtocols) { + AgentProtocol pr = AgentProtocol.of(name); + if (pr != null && pr.isDeprecated()) { + return true; + } + } + return false; + } + + @Restricted(NoExternalUse.class) + public String getDeprecatedProtocols() { + String res = getDeprecatedProtocolsString(); + return res != null ? res : "N/A"; + } + + @CheckForNull + public static String getDeprecatedProtocolsString() { + final List deprecatedProtocols = new ArrayList<>(); + final Set agentProtocols = Jenkins.getInstance().getAgentProtocols(); + for (String name : agentProtocols) { + AgentProtocol pr = AgentProtocol.of(name); + if (pr != null && pr.isDeprecated()) { + deprecatedProtocols.add(name); + } + } + if (deprecatedProtocols.isEmpty()) { + return null; + } + return StringUtils.join(deprecatedProtocols, ','); + } + + @Initializer(after = InitMilestone.JOB_LOADED) + @Restricted(NoExternalUse.class) + public static void initializerCheck() { + String protocols = getDeprecatedProtocolsString(); + if(protocols != null) { + LOGGER.log(Level.WARNING, "This Jenkins instance uses deprecated Remoting protocols: {0}" + + "It may impact stability of the instance. " + + "If newer protocol versions are supported by all system components " + + "(agents, CLI and other clients), " + + "it is highly recommended to disable the deprecated protocols.", protocols); + } + } +} diff --git a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol.java b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol.java index e351b93945..6c33950690 100644 --- a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol.java +++ b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol.java @@ -79,6 +79,11 @@ public class JnlpSlaveAgentProtocol extends AgentProtocol { return OPT_IN; } + @Override + public boolean isDeprecated() { + return true; + } + @Override public String getName() { return handler.isEnabled() ? handler.getName() : null; diff --git a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol2.java b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol2.java index 66bc07dc9d..24aca6696f 100644 --- a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol2.java +++ b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol2.java @@ -53,6 +53,11 @@ public class JnlpSlaveAgentProtocol2 extends AgentProtocol { return false; } + @Override + public boolean isDeprecated() { + return true; + } + /** * {@inheritDoc} */ diff --git a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java index d996fc0aab..d216f628dd 100644 --- a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java +++ b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java @@ -67,6 +67,11 @@ public class JnlpSlaveAgentProtocol3 extends AgentProtocol { return Messages.JnlpSlaveAgentProtocol3_displayName(); } + @Override + public boolean isDeprecated() { + return true; + } + @Override public void handle(Socket socket) throws IOException, InterruptedException { handler.handle(socket, diff --git a/core/src/main/resources/hudson/cli/CliProtocol/deprecationCause.jelly b/core/src/main/resources/hudson/cli/CliProtocol/deprecationCause.jelly new file mode 100644 index 0000000000..9704ac6557 --- /dev/null +++ b/core/src/main/resources/hudson/cli/CliProtocol/deprecationCause.jelly @@ -0,0 +1,4 @@ + + + ${%message} + diff --git a/core/src/main/resources/hudson/cli/CliProtocol/deprecationCause.properties b/core/src/main/resources/hudson/cli/CliProtocol/deprecationCause.properties new file mode 100644 index 0000000000..c46f5db25d --- /dev/null +++ b/core/src/main/resources/hudson/cli/CliProtocol/deprecationCause.properties @@ -0,0 +1,2 @@ +message=This protocol is an obsolete protocol, which has been replaced by CLI2-connect. \ + It is also not encrypted. diff --git a/core/src/main/resources/hudson/cli/CliProtocol2/deprecationCause.jelly b/core/src/main/resources/hudson/cli/CliProtocol2/deprecationCause.jelly new file mode 100644 index 0000000000..9704ac6557 --- /dev/null +++ b/core/src/main/resources/hudson/cli/CliProtocol2/deprecationCause.jelly @@ -0,0 +1,4 @@ + + + ${%message} + diff --git a/core/src/main/resources/hudson/cli/CliProtocol2/deprecationCause.properties b/core/src/main/resources/hudson/cli/CliProtocol2/deprecationCause.properties new file mode 100644 index 0000000000..8effec1404 --- /dev/null +++ b/core/src/main/resources/hudson/cli/CliProtocol2/deprecationCause.properties @@ -0,0 +1,3 @@ +message=Remoting-based CLI is deprecated and not recommended due to the security reasons. \ + It is recommended to disable this protocol on the instance. \ + if you need Remoting CLI on your instance, this protocol has to be enabled. diff --git a/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/index.groovy b/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/index.groovy index 519143e4fd..9d1b0917e9 100644 --- a/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/index.groovy +++ b/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/index.groovy @@ -72,6 +72,11 @@ l.layout(norefresh:true, permission:app.ADMINISTER, title:my.displayName, csscla td(colspan:"2"); td(class:"setting-description"){ st.include(from:p, page: "description", optional:true); + if (p.deprecated) { + br() + text(b(_("Deprecated. "))) + st.include(from:p, page: "deprecationCause", optional:true); + } } td(); } diff --git a/core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message.jelly b/core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message.jelly new file mode 100644 index 0000000000..3be67e2a95 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message.jelly @@ -0,0 +1,7 @@ + + +
+ ${%blurb(it.deprecatedProtocols)} + ${%Protocol Configuration} +
+
diff --git a/core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message.properties b/core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message.properties new file mode 100644 index 0000000000..b40c0b6cd6 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message.properties @@ -0,0 +1,4 @@ +blurb=This Jenkins instance uses deprecated protocols: {0}. \ + It may impact stability of the instance. \ + If newer protocol versions are supported by all system components (agents, CLI and other clients), \ + it is highly recommended to disable the deprecated protocols. diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause.jelly b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause.jelly new file mode 100644 index 0000000000..9704ac6557 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause.jelly @@ -0,0 +1,4 @@ + + + ${%message} + diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause.properties b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause.properties new file mode 100644 index 0000000000..a50d4246fd --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause.properties @@ -0,0 +1,2 @@ +message=This protocol is an obsolete protocol, which has been replaced by JNLP2-connect. \ + It is also not encrypted. diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause.jelly b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause.jelly new file mode 100644 index 0000000000..b9c22be05f --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause.jelly @@ -0,0 +1,5 @@ + + + ${%message} + ${%JNLP2 Protocol Errata} + diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause.properties b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause.properties new file mode 100644 index 0000000000..97e8478517 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause.properties @@ -0,0 +1,3 @@ +message=This protocol has known stability issues, and it is replaced by JNLP4. \ + It is also not encrypted. \ + See more information in the protocol Errata. diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause.jelly b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause.jelly new file mode 100644 index 0000000000..d9089b2f7d --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause.jelly @@ -0,0 +1,5 @@ + + + ${%This protocol is unstable. See the protocol documentation for more info.} + ${%JNLP3 Protocol Errata} + diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause.properties b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause.properties new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause.properties @@ -0,0 +1 @@ + diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description.properties b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description.properties index 3e5d49de58..ec1f6a2c89 100644 --- a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description.properties +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description.properties @@ -1,4 +1 @@ -summary=Extends the version 2 protocol by adding basic encryption but requires a thread per client. \ - This protocol falls back to Java Web Start Agent Protocol/2 (unencrypted) when it can't create a secure connection. \ - This protocol is not recommended. \ - Use Java Web Start Agent Protocol/4 instead. +summary=Extends the version 2 protocol by adding basic encryption but requires a thread per client. diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description_de.properties b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description_de.properties index 02dbda7508..6280077683 100644 --- a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description_de.properties +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description_de.properties @@ -20,6 +20,4 @@ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN # THE SOFTWARE. -summary=Erweitert das Protokoll Version 2 um einfache Verschl\u00FCsselung, aber erfordert einen Thread pro Client. \ - Dieses Protokoll f\u00E4llt auf Protokoll-Version 2 (unverschl\u00FCsselt) zur\u00FCck, wenn keine sichere Verbindung hergestellt werden kann. \ - Dieses Protokoll sollte nicht verwendet werden, stattdessen sollte Protokoll-Version 4 verwendet werden. +summary=Erweitert das Protokoll Version 2 um einfache Verschl\u00fcsselung, aber erfordert einen Thread pro Client. diff --git a/core/src/main/resources/jenkins/slaves/Messages.properties b/core/src/main/resources/jenkins/slaves/Messages.properties index 6cdab92614..017247dbbd 100644 --- a/core/src/main/resources/jenkins/slaves/Messages.properties +++ b/core/src/main/resources/jenkins/slaves/Messages.properties @@ -20,7 +20,8 @@ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN # THE SOFTWARE. -JnlpSlaveAgentProtocol.displayName=Java Web Start Agent Protocol/1 (unencrypted) -JnlpSlaveAgentProtocol2.displayName=Java Web Start Agent Protocol/2 (unencrypted) -JnlpSlaveAgentProtocol3.displayName=Java Web Start Agent Protocol/3 (basic encryption) +JnlpSlaveAgentProtocol.displayName=Java Web Start Agent Protocol/1 (deprecated, unencrypted) +JnlpSlaveAgentProtocol2.displayName=Java Web Start Agent Protocol/2 (deprecated, unencrypted) +JnlpSlaveAgentProtocol3.displayName=Java Web Start Agent Protocol/3 (deprecated, basic encryption) JnlpSlaveAgentProtocol4.displayName=Java Web Start Agent Protocol/4 (TLS encryption) +DeprecatedAgentProtocolMonitor.displayName=Deprecated Agent Protocol Monitor diff --git a/test/src/test/java/jenkins/AgentProtocolTest.java b/test/src/test/java/jenkins/AgentProtocolTest.java new file mode 100644 index 0000000000..7deb30e746 --- /dev/null +++ b/test/src/test/java/jenkins/AgentProtocolTest.java @@ -0,0 +1,156 @@ +/* + * The MIT License + * + * Copyright (c) 2017 CloudBees, 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. + */ +package jenkins; + +import java.util.ArrayList; +import java.util.List; +import java.util.Set; +import javax.annotation.CheckForNull; +import jenkins.install.SetupWizardTest; +import jenkins.model.Jenkins; +import jenkins.slaves.DeprecatedAgentProtocolMonitor; +import org.apache.commons.collections.ListUtils; +import org.apache.commons.lang.StringUtils; +import static org.hamcrest.Matchers.contains; +import static org.hamcrest.Matchers.not; +import static org.hamcrest.Matchers.nullValue; +import org.hamcrest.core.StringContains; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertThat; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; +import org.junit.Rule; +import org.junit.Test; +import org.jvnet.hudson.test.Issue; +import org.jvnet.hudson.test.JenkinsRule; +import org.jvnet.hudson.test.recipes.LocalData; + +/** + * Tests for {@link AgentProtocol}. + * + * @author Oleg Nenashev + */ +public class AgentProtocolTest { + + @Rule + public JenkinsRule j = new JenkinsRule(); + + /** + * Checks that Jenkins does not disable agent protocols by default after the upgrade. + * + * @throws Exception Test failure + * @see SetupWizardTest#shouldDisableUnencryptedProtocolsByDefault() + */ + @Test + @LocalData + @Issue("JENKINS-45841") + public void testShouldNotDisableProtocolsForMigratedInstances() throws Exception { + assertProtocols(true, "Legacy Non-encrypted JNLP/CLI protocols should be enabled", + "JNLP-connect", "JNLP2-connect", "JNLP4-connect", "CLI-connect"); + assertProtocols(true, "Default encrypted protocols should be enabled", "JNLP4-connect", "CLI2-connect"); + assertProtocols(true, "Protocol should be enabled due to CLI settings", "CLI2-connect"); + assertProtocols(false, "JNLP3-connect protocol should be disabled by default", "JNLP3-connect"); + assertMonitorTriggered("JNLP-connect", "JNLP2-connect", "CLI-connect"); + } + + @Test + @LocalData + @Issue("JENKINS-45841") + public void testShouldNotOverrideUserConfiguration() throws Exception { + assertEnabled("CLI-connect", "JNLP-connect", "JNLP3-connect"); + assertDisabled("CLI2-connect", "JNLP2-connect", "JNLP4-connect"); + assertProtocols(true, "System protocols should be always enabled", "Ping"); + assertMonitorTriggered("JNLP-connect", "JNLP3-connect", "CLI-connect"); + } + + @Test + @LocalData + public void testShouldDisableCLIProtocolsWhenCLIisDisabled() throws Exception { + assertProtocols(false, "CLI is forcefully disabled, protocols should be blocked", + "CLI-connect", "CLI2-connect"); + assertEnabled("JNLP3-connect"); + assertMonitorTriggered("JNLP3-connect"); + } + + private void assertEnabled(String ... protocolNames) throws AssertionError { + assertProtocols(true, null, protocolNames); + } + + private void assertDisabled(String ... protocolNames) throws AssertionError { + assertProtocols(false, null, protocolNames); + } + + private void assertProtocols(boolean shouldBeEnabled, @CheckForNull String why, String ... protocolNames) { + assertProtocols(j.jenkins, shouldBeEnabled, why, protocolNames); + } + + public static void assertProtocols(Jenkins jenkins, boolean shouldBeEnabled, @CheckForNull String why, String ... protocolNames) + throws AssertionError { + Set agentProtocols = jenkins.getAgentProtocols(); + List failedChecks = new ArrayList<>(); + for (String protocol : protocolNames) { + if (shouldBeEnabled && !(agentProtocols.contains(protocol))) { + failedChecks.add(protocol); + } + if (!shouldBeEnabled && agentProtocols.contains(protocol)) { + failedChecks.add(protocol); + } + } + + if (!failedChecks.isEmpty()) { + String message = String.format("Protocol(s) are not %s: %s. %sEnabled protocols: %s", + shouldBeEnabled ? "enabled" : "disabled", + StringUtils.join(failedChecks, ','), + why != null ? "Reason: " + why + ". " : "", + StringUtils.join(agentProtocols, ',')); + fail(message); + } + } + + public static void assertMonitorNotActive() { + DeprecatedAgentProtocolMonitor monitor = new DeprecatedAgentProtocolMonitor(); + assertFalse("Deprecated Agent Protocol Monitor should not be activated", monitor.isActivated()); + } + + public static void assertMonitorTriggered(String ... expectedProtocols) { + DeprecatedAgentProtocolMonitor monitor = new DeprecatedAgentProtocolMonitor(); + assertTrue("Deprecated Agent Protocol Monitor should be activated", monitor.isActivated()); + String protocolList = monitor.getDeprecatedProtocols(); + assertThat("List of the protocols should not be null", protocolList, not(nullValue())); + + List failedChecks = new ArrayList<>(); + for(String protocol : expectedProtocols) { + if (!protocolList.contains(protocol)) { + failedChecks.add(protocol); + } + } + + if (!failedChecks.isEmpty()) { + String message = String.format( + "Protocol(s) should in the deprecated protocol list: %s. Current list: %s", + StringUtils.join(expectedProtocols, ','), protocolList); + fail(message); + } + } +} diff --git a/test/src/test/java/jenkins/install/SetupWizardTest.java b/test/src/test/java/jenkins/install/SetupWizardTest.java index 469b81661d..03dbc0df74 100644 --- a/test/src/test/java/jenkins/install/SetupWizardTest.java +++ b/test/src/test/java/jenkins/install/SetupWizardTest.java @@ -32,6 +32,9 @@ import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; import java.net.MalformedURLException; +import java.util.Set; +import jenkins.AgentProtocolTest; +import jenkins.slaves.DeprecatedAgentProtocolMonitor; import org.apache.commons.io.FileUtils; import static org.hamcrest.Matchers.*; import org.junit.Before; @@ -39,6 +42,7 @@ import org.junit.Rule; import org.junit.Test; import org.jvnet.hudson.test.JenkinsRule; import static org.junit.Assert.assertThat; +import static org.junit.Assert.assertFalse; import org.junit.rules.TemporaryFolder; import org.jvnet.hudson.test.Issue; @@ -111,6 +115,17 @@ public class SetupWizardTest { wc.assertFails("setupWizard/completeInstall", 403); } + @Test + @Issue("JENKINS-45841") + public void shouldDisableUnencryptedProtocolsByDefault() throws Exception { + AgentProtocolTest.assertProtocols(j.jenkins, true, + "Encrypted JNLP4-protocols protocol should be enabled", "JNLP4-connect"); + AgentProtocolTest.assertProtocols(j.jenkins, false, + "Non-encrypted JNLP protocols should be disabled by default", + "JNLP-connect", "JNLP2-connect", "CLI-connect"); + AgentProtocolTest.assertMonitorNotActive(); + } + private String jsonRequest(JenkinsRule.WebClient wc, String path) throws Exception { // Try to call the actions method to retrieve the data final Page res; diff --git a/test/src/test/resources/jenkins/AgentProtocolTest/testShouldDisableCLIProtocolsWhenCLIisDisabled/config.xml b/test/src/test/resources/jenkins/AgentProtocolTest/testShouldDisableCLIProtocolsWhenCLIisDisabled/config.xml new file mode 100644 index 0000000000..e21f1873e8 --- /dev/null +++ b/test/src/test/resources/jenkins/AgentProtocolTest/testShouldDisableCLIProtocolsWhenCLIisDisabled/config.xml @@ -0,0 +1,42 @@ + + + + 1.0 + 2 + NORMAL + true + + + false + + ${ITEM_ROOTDIR}/workspace + ${ITEM_ROOTDIR}/builds + + + + + + 0 + + + + all + false + false + + + + all + 0 + + CLI-connect + CLI2-connect + JNLP3-connect + + + JNLP4-connect + + + + + \ No newline at end of file diff --git a/test/src/test/resources/jenkins/AgentProtocolTest/testShouldDisableCLIProtocolsWhenCLIisDisabled/jenkins.CLI.xml b/test/src/test/resources/jenkins/AgentProtocolTest/testShouldDisableCLIProtocolsWhenCLIisDisabled/jenkins.CLI.xml new file mode 100644 index 0000000000..7a90194462 --- /dev/null +++ b/test/src/test/resources/jenkins/AgentProtocolTest/testShouldDisableCLIProtocolsWhenCLIisDisabled/jenkins.CLI.xml @@ -0,0 +1,4 @@ + + + false + \ No newline at end of file diff --git a/test/src/test/resources/jenkins/AgentProtocolTest/testShouldNotDisableProtocolsForMigratedInstances/config.xml b/test/src/test/resources/jenkins/AgentProtocolTest/testShouldNotDisableProtocolsForMigratedInstances/config.xml new file mode 100644 index 0000000000..16c467b807 --- /dev/null +++ b/test/src/test/resources/jenkins/AgentProtocolTest/testShouldNotDisableProtocolsForMigratedInstances/config.xml @@ -0,0 +1,39 @@ + + + + 1.0 + 2 + NORMAL + true + + + false + + ${ITEM_ROOTDIR}/workspace + ${ITEM_ROOTDIR}/builds + + + + + + 0 + + + + all + false + false + + + + all + 0 + + + + + \ No newline at end of file diff --git a/test/src/test/resources/jenkins/AgentProtocolTest/testShouldNotOverrideUserConfiguration/config.xml b/test/src/test/resources/jenkins/AgentProtocolTest/testShouldNotOverrideUserConfiguration/config.xml new file mode 100644 index 0000000000..921c61d890 --- /dev/null +++ b/test/src/test/resources/jenkins/AgentProtocolTest/testShouldNotOverrideUserConfiguration/config.xml @@ -0,0 +1,45 @@ + + + + 1.0 + 2 + NORMAL + true + + + false + + ${ITEM_ROOTDIR}/workspace + ${ITEM_ROOTDIR}/builds + + + + + + 0 + + + + all + false + false + + + + all + 0 + + + CLI-connect + JNLP-connect + JNLP3-connect + + + JNLP4-connect + JNLP2-connect + CLI2-connect + + + + + \ No newline at end of file From 100202cf03db1fc4a0a7365f4ea585ed6ebadbcc Mon Sep 17 00:00:00 2001 From: Oleg Nenashev Date: Sat, 19 Aug 2017 21:50:17 +0200 Subject: [PATCH 081/109] [JENKINS-46282] - Update WinSW from 2.1.0 to 2.1.2 (#2987) * [JENKINS-46282] - Update WinSW from 2.1.0 to 2.1.2 Fixes [JENKINS-46282](https://issues.jenkins-ci.org/browse/JENKINS-46282), which impacts the default installation. Also updates Parent POM in the module Full list of fixes: - JENKINS-46282 - Runaway Process Killer extension was not using the stopTimeoutMs parameter - [WinSW Issue #206](https://github.com/kohsuke/winsw/issues/206) - Prevent printing of log entries in the `status` command - [WinSW Issue #218](https://github.com/kohsuke/winsw/issues/218) - Prevent hanging of the stop executable when its logs are not being drained do the parent process Full Diff: https://github.com/kohsuke/winsw/compare/winsw-v2.1.0...winsw-v2.1.2 * [JENKINS-46282] - Pick the released version of Windows Agent Installer --- core/pom.xml | 2 +- war/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/core/pom.xml b/core/pom.xml index 78ddda7daa..3fcc54e1d6 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -771,7 +771,7 @@ THE SOFTWARE. com.sun.winsw winsw - 2.1.0 + 2.1.2 bin exe ${project.build.outputDirectory}/windows-service diff --git a/war/pom.xml b/war/pom.xml index 4e25ba2013..4203816bd0 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -114,7 +114,7 @@ THE SOFTWARE. org.jenkins-ci.modules windows-slave-installer - 1.9 + 1.9.1 org.jenkins-ci.modules From b90f067e1b3d80ad453e70c167a3f9fc9362bca2 Mon Sep 17 00:00:00 2001 From: Alexander Shopov Date: Tue, 23 Aug 2016 15:12:32 +0300 Subject: [PATCH 082/109] Bulgarian translation of properies files --- .../hudson/AboutJenkins/index_bg.properties | 40 +++++++ .../resources/hudson/Messages_bg.properties | 12 ++ .../PluginManager/advanced_bg.properties | 3 +- .../hudson/PluginManager/table_bg.properties | 7 +- .../message_bg.properties | 27 +++++ .../hudson/cli/CLIAction/index_bg.properties | 36 ++++++ .../deprecationCause_bg.properties | 26 +++++ .../cli/CliProtocol/description_bg.properties | 28 +++++ .../deprecationCause_bg.properties | 29 +++++ .../CliProtocol2/description_bg.properties | 27 +++++ .../hudson/cli/Messages_bg.properties | 28 ++++- .../index_bg.properties | 48 ++++++++ .../message_bg.properties | 28 +++++ .../MemoryUsageMonitor/index_bg.properties | 32 ++++++ .../hudson/diagnosis/Messages_bg.properties | 11 +- .../message_bg.properties | 31 ++++++ .../OldDataMonitor/manage_bg.properties | 105 ++++++++++++++++++ .../OldDataMonitor/message_bg.properties | 29 +++++ .../message_bg.properties | 9 +- .../message_bg.properties | 32 ++++++ .../_restart_bg.properties | 34 ++++++ .../WindowsInstallerLink/index_bg.properties | 41 +++++++ .../LogRecorder/configure_bg.properties | 34 ++++++ .../logging/LogRecorder/delete_bg.properties | 26 +++++ .../logging/LogRecorder/index_bg.properties | 24 ++++ .../LogRecorder/sidepanel_bg.properties | 30 +++++ .../LogRecorderManager/all_bg.properties | 24 ++++ .../LogRecorderManager/feeds_bg.properties | 28 +++++ .../LogRecorderManager/index_bg.properties | 32 ++++++ .../LogRecorderManager/levels_bg.properties | 40 +++++++ .../LogRecorderManager/new_bg.properties | 24 ++++ .../sidepanel_bg.properties | 34 ++++++ .../config_bg.properties | 27 +++++ .../config_bg.properties | 26 +++++ .../FileParameterValue/value_bg.properties | 24 ++++ .../model/Fingerprint/index_bg.properties | 35 ++++++ .../hudson/model/JDK/config_bg.properties | 24 ++++ .../hudson/model/Label/index_bg.properties | 28 +++++ .../model/Label/sidepanel_bg.properties | 30 +++++ .../ListView/configure-entries_bg.properties | 46 ++++++++ .../ListView/newJobButtonBar_bg.properties | 24 ++++ .../ListView/newViewDetail_bg.properties | 27 +++++ .../hudson/model/Messages_bg.properties | 35 +++++- .../model/MyView/newViewDetail_bg.properties | 27 +++++ .../hudson/model/MyView/noJob_bg.properties | 25 +++++ .../MyViewsProperty/config_bg.properties | 28 +++++ .../MyViewsProperty/newView_bg.properties | 24 ++++ .../NoFingerprintMatch/index_bg.properties | 41 +++++++ .../ParametersAction/index_bg.properties | 26 +++++ .../index_bg.properties | 29 +++++ .../config_bg.properties | 28 +++++ .../ProxyView/configure-entries_bg.properties | 26 +++++ .../ProxyView/newViewDetail_bg.properties | 24 ++++ .../config_bg.properties | 38 +++++++ .../model/Slave/help-launcher_bg.properties | 24 ++++ .../config_bg.properties | 28 +++++ .../hudson/model/TaskAction/log_bg.properties | 24 ++++ .../config_bg.properties | 28 +++++ .../model/TreeView/sidepanel2_bg.properties | 24 ++++ .../ConnectionCheckJob/row_bg.properties | 3 +- .../CoreUpdateMonitor/message_bg.properties | 36 ++++++ .../DownloadJob/Failure/status_bg.properties | 26 +++++ .../Installing/status_bg.properties | 24 ++++ .../DownloadJob/Pending/status_bg.properties | 24 ++++ .../DownloadJob/Skipped/status_bg.properties | 24 ++++ .../DownloadJob/Success/status_bg.properties | 24 ++++ .../UpdateCenter/EnableJob/row_bg.properties | 24 ++++ .../UpdateCenter/NoOpJob/row_bg.properties | 24 ++++ .../Canceled/status_bg.properties | 24 ++++ .../Failure/status_bg.properties | 24 ++++ .../Pending/status_bg.properties | 24 ++++ .../Running/status_bg.properties | 24 ++++ .../RestartJenkinsJob/row_bg.properties | 24 ++++ .../model/UpdateCenter/body_bg.properties | 9 +- .../UpdateCenter/sidepanel_bg.properties | 9 +- .../hudson/model/View/configure_bg.properties | 36 ++++++ .../hudson/model/View/delete_bg.properties | 26 +++++ .../hudson/model/View/index_bg.properties | 24 ++++ .../hudson/model/View/noJob_bg.properties | 29 +++++ .../labels/LabelAtom/configure_bg.properties | 31 ++++++ .../config_bg.properties | 24 ++++ .../node_monitors/Messages_bg.properties | 5 +- .../message_bg.properties | 32 ++++++ .../Data/cause_bg.properties | 24 ++++ .../message_bg.properties | 26 +++++ .../MigrationFailedNotice/index_bg.properties | 24 ++++ .../message_bg.properties | 26 +++++ .../askRootPassword_bg.properties | 38 +++++++ .../ZFSInstaller/confirm_bg.properties | 48 ++++++++ .../ZFSInstaller/message_bg.properties | 31 ++++++ .../inProgress_bg.properties | 24 ++++ .../search/Search/search-failed_bg.properties | 26 +++++ .../UserSearchProperty/config_bg.properties | 26 +++++ .../error_bg.properties | 39 +++++++ .../config_bg.properties | 24 ++++ .../SecurityRealm/signup_bg.properties | 28 +++++ .../DefaultCrumbIssuer/config_bg.properties | 24 ++++ .../hudson/slaves/Cloud/index_bg.properties | 24 ++++ .../CommandConnector/config_bg.properties | 24 ++++ .../CommandLauncher/config_bg.properties | 24 ++++ .../slaves/CommandLauncher/help_bg.properties | 28 +++++ .../ComputerLauncher/main_bg.properties | 31 ++++++ .../config_bg.properties | 24 ++++ .../DumbSlave/configure-entries_bg.properties | 36 ++++++ .../DumbSlave/newInstanceDetail_bg.properties | 33 ++++++ .../config_bg.properties | 28 +++++ .../slaves/JNLPLauncher/config_bg.properties | 28 +++++ .../slaves/JNLPLauncher/help_bg.properties | 44 ++++++++ .../slaves/JNLPLauncher/main_bg.properties | 39 +++++++ .../hudson/slaves/Messages_bg.properties | 11 +- .../ChannelTermination/cause_bg.properties | 24 ++++ .../Demand/config_bg.properties | 30 +++++ .../Scheduled/config_bg.properties | 26 +++++ .../config_bg.properties | 35 ++++++ .../ArtifactArchiver/config_bg.properties | 40 +++++++ .../tasks/BatchFile/config_bg.properties | 30 +++++ .../tasks/BuildTrigger/config_bg.properties | 30 +++++ .../FingerprintAction/index_bg.properties | 36 ++++++ .../tasks/Fingerprinter/config_bg.properties | 24 ++++ .../MavenInstallation/config_bg.properties | 24 ++++ .../hudson/tasks/Maven/config_bg.properties | 2 +- .../hudson/tasks/Maven/help_bg.properties | 45 ++++++++ .../hudson/tasks/Messages_bg.properties | 17 ++- .../config_bg.properties | 26 +++++ .../config_bg.properties | 24 ++++ .../config_bg.properties | 26 +++++ .../DescriptorImpl/credentialOK_bg.properties | 26 +++++ .../enterCredential_bg.properties | 34 ++++++ .../tools/JDKInstaller/config_bg.properties | 26 +++++ .../hudson/tools/Messages_bg.properties | 5 +- .../ToolInstallation/config_bg.properties | 26 +++++ .../ToolInstallation/global_bg.properties | 34 ++++++ .../config_bg.properties | 28 +++++ .../config_bg.properties | 26 +++++ .../hudson/triggers/Messages_bg.properties | 22 +++- .../message_bg.properties | 31 ++++++ .../BuildAction/index_bg.properties | 31 ++++++ .../DescriptorImpl/index_bg.properties | 40 +++++++ .../triggers/SCMTrigger/config_bg.properties | 26 +++++ .../triggers/SCMTrigger/global_bg.properties | 26 +++++ .../TimerTrigger/config_bg.properties | 24 ++++ .../util/AWTProblem/index_bg.properties | 29 +++++ .../AdministrativeError/message_bg.properties | 24 ++++ .../DoubleLaunchChecker/index_bg.properties | 40 +++++++ .../HudsonFailedToLoad/index_bg.properties | 24 ++++ .../util/HudsonIsLoading/index_bg.properties | 26 +++++ .../HudsonIsRestarting/index_bg.properties | 26 +++++ .../index_bg.properties | 38 +++++++ .../index_bg.properties | 30 +++++ .../index_bg.properties | 44 ++++++++ .../index_bg.properties | 45 ++++++++ .../util/JNADoublyLoaded/index_bg.properties | 31 ++++++ .../hudson/util/NoHomeDir/index_bg.properties | 40 +++++++ .../hudson/util/NoTempDir/index_bg.properties | 33 ++++++ .../BuildButtonColumn/column_bg.properties | 31 ++++++ .../hudson/views/Messages_bg.properties | 5 +- .../StatusColumn/columnHeader_bg.properties | 2 +- .../WeatherColumn/columnHeader_bg.properties | 2 +- .../widgets/HistoryWidget/entry_bg.properties | 5 +- .../CLI/WarnWhenEnabled/message_bg.properties | 36 ++++++ .../jenkins/CLI/config_bg.properties | 26 +++++ .../HsErrPidList/index_bg.properties | 44 ++++++++ .../HsErrPidList/message_bg.properties | 25 +++++ .../message_bg.properties | 46 ++++++++ .../diagnostics/Messages_bg.properties | 31 ++++++ .../message_bg.properties | 32 ++++++ .../authenticate-security-token_bg.properties | 51 +++++++++ .../proxy-configuration_bg.properties | 24 ++++ .../setupWizardFirstUser_bg.properties | 25 +++++ .../client-scripts_bg.properties | 31 ++++++ .../footer_bg.properties | 27 +++++ .../jenkins/management/Messages_bg.properties | 5 +- .../management/PluginsLink/info_bg.properties | 24 ++++ .../config-details_bg.properties | 24 ++++ .../Warning/message_bg.properties | 33 ++++++ .../message_bg.properties | 29 +++++ .../MasterComputer/configure_bg.properties | 32 ++++++ .../jenkins/model/Messages_bg.properties | 8 +- .../index_bg.properties | 24 ++++ .../IdentityRootAction/index_bg.properties | 37 ++++++ .../item_category/Messages_bg.properties | 42 +++++++ .../jenkins/security/Messages_bg.properties | 5 +- .../message_bg.properties | 32 ++++++ .../AdminWhitelistRule/index_bg.properties | 28 +++++ .../message_bg.properties | 32 ++++++ .../security/s2m/Messages_bg.properties | 28 +++++ .../message_bg.properties | 36 ++++++ .../deprecationCause_bg.properties | 26 +++++ .../description_bg.properties | 30 +++++ .../deprecationCause_bg.properties | 30 +++++ .../description_bg.properties | 33 ++++++ .../deprecationCause_bg.properties | 26 +++++ .../description_bg.properties | 35 ++++++ .../description_bg.properties | 26 +++++ .../jenkins/slaves/Messages_bg.properties | 37 ++++++ .../config_bg.properties | 30 +++++ .../ReverseBuildTrigger/config_bg.properties | 30 +++++ .../queue-items_bg.properties | 28 +++++ .../lib/hudson/buildCaption_bg.properties | 5 +- .../lib/hudson/executors_bg.properties | 5 +- .../project/upstream-downstream_bg.properties | 6 +- .../resources/lib/hudson/queue_bg.properties | 5 +- 202 files changed, 5516 insertions(+), 37 deletions(-) create mode 100644 core/src/main/resources/hudson/AboutJenkins/index_bg.properties create mode 100644 core/src/main/resources/hudson/PluginWrapper/PluginWrapperAdministrativeMonitor/message_bg.properties create mode 100644 core/src/main/resources/hudson/cli/CLIAction/index_bg.properties create mode 100644 core/src/main/resources/hudson/cli/CliProtocol/deprecationCause_bg.properties create mode 100644 core/src/main/resources/hudson/cli/CliProtocol/description_bg.properties create mode 100644 core/src/main/resources/hudson/cli/CliProtocol2/deprecationCause_bg.properties create mode 100644 core/src/main/resources/hudson/cli/CliProtocol2/description_bg.properties create mode 100644 core/src/main/resources/hudson/diagnosis/HudsonHomeDiskUsageMonitor/index_bg.properties create mode 100644 core/src/main/resources/hudson/diagnosis/HudsonHomeDiskUsageMonitor/message_bg.properties create mode 100644 core/src/main/resources/hudson/diagnosis/MemoryUsageMonitor/index_bg.properties create mode 100644 core/src/main/resources/hudson/diagnosis/NullIdDescriptorMonitor/message_bg.properties create mode 100644 core/src/main/resources/hudson/diagnosis/OldDataMonitor/manage_bg.properties create mode 100644 core/src/main/resources/hudson/diagnosis/OldDataMonitor/message_bg.properties create mode 100644 core/src/main/resources/hudson/diagnosis/TooManyJobsButNoView/message_bg.properties create mode 100644 core/src/main/resources/hudson/lifecycle/WindowsInstallerLink/_restart_bg.properties create mode 100644 core/src/main/resources/hudson/lifecycle/WindowsInstallerLink/index_bg.properties create mode 100644 core/src/main/resources/hudson/logging/LogRecorder/configure_bg.properties create mode 100644 core/src/main/resources/hudson/logging/LogRecorder/delete_bg.properties create mode 100644 core/src/main/resources/hudson/logging/LogRecorder/index_bg.properties create mode 100644 core/src/main/resources/hudson/logging/LogRecorder/sidepanel_bg.properties create mode 100644 core/src/main/resources/hudson/logging/LogRecorderManager/all_bg.properties create mode 100644 core/src/main/resources/hudson/logging/LogRecorderManager/feeds_bg.properties create mode 100644 core/src/main/resources/hudson/logging/LogRecorderManager/index_bg.properties create mode 100644 core/src/main/resources/hudson/logging/LogRecorderManager/levels_bg.properties create mode 100644 core/src/main/resources/hudson/logging/LogRecorderManager/new_bg.properties create mode 100644 core/src/main/resources/hudson/logging/LogRecorderManager/sidepanel_bg.properties create mode 100644 core/src/main/resources/hudson/markup/EscapedMarkupFormatter/config_bg.properties create mode 100644 core/src/main/resources/hudson/model/FileParameterDefinition/config_bg.properties create mode 100644 core/src/main/resources/hudson/model/FileParameterValue/value_bg.properties create mode 100644 core/src/main/resources/hudson/model/Fingerprint/index_bg.properties create mode 100644 core/src/main/resources/hudson/model/JDK/config_bg.properties create mode 100644 core/src/main/resources/hudson/model/Label/index_bg.properties create mode 100644 core/src/main/resources/hudson/model/Label/sidepanel_bg.properties create mode 100644 core/src/main/resources/hudson/model/ListView/configure-entries_bg.properties create mode 100644 core/src/main/resources/hudson/model/ListView/newJobButtonBar_bg.properties create mode 100644 core/src/main/resources/hudson/model/ListView/newViewDetail_bg.properties create mode 100644 core/src/main/resources/hudson/model/MyView/newViewDetail_bg.properties create mode 100644 core/src/main/resources/hudson/model/MyView/noJob_bg.properties create mode 100644 core/src/main/resources/hudson/model/MyViewsProperty/config_bg.properties create mode 100644 core/src/main/resources/hudson/model/MyViewsProperty/newView_bg.properties create mode 100644 core/src/main/resources/hudson/model/NoFingerprintMatch/index_bg.properties create mode 100644 core/src/main/resources/hudson/model/ParametersAction/index_bg.properties create mode 100644 core/src/main/resources/hudson/model/ParametersDefinitionProperty/index_bg.properties create mode 100644 core/src/main/resources/hudson/model/PasswordParameterDefinition/config_bg.properties create mode 100644 core/src/main/resources/hudson/model/ProxyView/configure-entries_bg.properties create mode 100644 core/src/main/resources/hudson/model/ProxyView/newViewDetail_bg.properties create mode 100644 core/src/main/resources/hudson/model/RunParameterDefinition/config_bg.properties create mode 100644 core/src/main/resources/hudson/model/Slave/help-launcher_bg.properties create mode 100644 core/src/main/resources/hudson/model/StringParameterDefinition/config_bg.properties create mode 100644 core/src/main/resources/hudson/model/TaskAction/log_bg.properties create mode 100644 core/src/main/resources/hudson/model/TextParameterDefinition/config_bg.properties create mode 100644 core/src/main/resources/hudson/model/TreeView/sidepanel2_bg.properties create mode 100644 core/src/main/resources/hudson/model/UpdateCenter/CoreUpdateMonitor/message_bg.properties create mode 100644 core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Failure/status_bg.properties create mode 100644 core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Installing/status_bg.properties create mode 100644 core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Pending/status_bg.properties create mode 100644 core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Skipped/status_bg.properties create mode 100644 core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Success/status_bg.properties create mode 100644 core/src/main/resources/hudson/model/UpdateCenter/EnableJob/row_bg.properties create mode 100644 core/src/main/resources/hudson/model/UpdateCenter/NoOpJob/row_bg.properties create mode 100644 core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Canceled/status_bg.properties create mode 100644 core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Failure/status_bg.properties create mode 100644 core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Pending/status_bg.properties create mode 100644 core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Running/status_bg.properties create mode 100644 core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/row_bg.properties create mode 100644 core/src/main/resources/hudson/model/View/configure_bg.properties create mode 100644 core/src/main/resources/hudson/model/View/delete_bg.properties create mode 100644 core/src/main/resources/hudson/model/View/index_bg.properties create mode 100644 core/src/main/resources/hudson/model/View/noJob_bg.properties create mode 100644 core/src/main/resources/hudson/model/labels/LabelAtom/configure_bg.properties create mode 100644 core/src/main/resources/hudson/node_monitors/AbstractDiskSpaceMonitor/config_bg.properties create mode 100644 core/src/main/resources/hudson/node_monitors/MonitorMarkedNodeOffline/message_bg.properties create mode 100644 core/src/main/resources/hudson/node_monitors/ResponseTimeMonitor/Data/cause_bg.properties create mode 100644 core/src/main/resources/hudson/os/solaris/ZFSInstaller/MigrationCompleteNotice/message_bg.properties create mode 100644 core/src/main/resources/hudson/os/solaris/ZFSInstaller/MigrationFailedNotice/index_bg.properties create mode 100644 core/src/main/resources/hudson/os/solaris/ZFSInstaller/MigrationFailedNotice/message_bg.properties create mode 100644 core/src/main/resources/hudson/os/solaris/ZFSInstaller/askRootPassword_bg.properties create mode 100644 core/src/main/resources/hudson/os/solaris/ZFSInstaller/confirm_bg.properties create mode 100644 core/src/main/resources/hudson/os/solaris/ZFSInstaller/message_bg.properties create mode 100644 core/src/main/resources/hudson/scm/AbstractScmTagAction/inProgress_bg.properties create mode 100644 core/src/main/resources/hudson/search/Search/search-failed_bg.properties create mode 100644 core/src/main/resources/hudson/search/UserSearchProperty/config_bg.properties create mode 100644 core/src/main/resources/hudson/security/FederatedLoginService/UnclaimedIdentityException/error_bg.properties create mode 100644 core/src/main/resources/hudson/security/FullControlOnceLoggedInAuthorizationStrategy/config_bg.properties create mode 100644 core/src/main/resources/hudson/security/SecurityRealm/signup_bg.properties create mode 100644 core/src/main/resources/hudson/security/csrf/DefaultCrumbIssuer/config_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/Cloud/index_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/CommandConnector/config_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/CommandLauncher/config_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/CommandLauncher/help_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/ComputerLauncher/main_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/DelegatingComputerLauncher/config_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/DumbSlave/configure-entries_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/DumbSlave/newInstanceDetail_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/EnvironmentVariablesNodeProperty/config_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/JNLPLauncher/config_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/JNLPLauncher/help_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/JNLPLauncher/main_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/OfflineCause/ChannelTermination/cause_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/RetentionStrategy/Demand/config_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/RetentionStrategy/Scheduled/config_bg.properties create mode 100644 core/src/main/resources/hudson/slaves/SimpleScheduledRetentionStrategy/config_bg.properties create mode 100644 core/src/main/resources/hudson/tasks/ArtifactArchiver/config_bg.properties create mode 100644 core/src/main/resources/hudson/tasks/BatchFile/config_bg.properties create mode 100644 core/src/main/resources/hudson/tasks/BuildTrigger/config_bg.properties create mode 100644 core/src/main/resources/hudson/tasks/Fingerprinter/FingerprintAction/index_bg.properties create mode 100644 core/src/main/resources/hudson/tasks/Fingerprinter/config_bg.properties create mode 100644 core/src/main/resources/hudson/tasks/Maven/MavenInstallation/config_bg.properties create mode 100644 core/src/main/resources/hudson/tasks/Maven/help_bg.properties create mode 100644 core/src/main/resources/hudson/tools/AbstractCommandInstaller/config_bg.properties create mode 100644 core/src/main/resources/hudson/tools/DownloadFromUrlInstaller/config_bg.properties create mode 100644 core/src/main/resources/hudson/tools/InstallSourceProperty/config_bg.properties create mode 100644 core/src/main/resources/hudson/tools/JDKInstaller/DescriptorImpl/credentialOK_bg.properties create mode 100644 core/src/main/resources/hudson/tools/JDKInstaller/DescriptorImpl/enterCredential_bg.properties create mode 100644 core/src/main/resources/hudson/tools/JDKInstaller/config_bg.properties create mode 100644 core/src/main/resources/hudson/tools/ToolInstallation/config_bg.properties create mode 100644 core/src/main/resources/hudson/tools/ToolInstallation/global_bg.properties create mode 100644 core/src/main/resources/hudson/tools/ToolLocationNodeProperty/config_bg.properties create mode 100644 core/src/main/resources/hudson/tools/ZipExtractionInstaller/config_bg.properties create mode 100644 core/src/main/resources/hudson/triggers/SCMTrigger/AdministrativeMonitorImpl/message_bg.properties create mode 100644 core/src/main/resources/hudson/triggers/SCMTrigger/BuildAction/index_bg.properties create mode 100644 core/src/main/resources/hudson/triggers/SCMTrigger/DescriptorImpl/index_bg.properties create mode 100644 core/src/main/resources/hudson/triggers/SCMTrigger/config_bg.properties create mode 100644 core/src/main/resources/hudson/triggers/SCMTrigger/global_bg.properties create mode 100644 core/src/main/resources/hudson/triggers/TimerTrigger/config_bg.properties create mode 100644 core/src/main/resources/hudson/util/AWTProblem/index_bg.properties create mode 100644 core/src/main/resources/hudson/util/AdministrativeError/message_bg.properties create mode 100644 core/src/main/resources/hudson/util/DoubleLaunchChecker/index_bg.properties create mode 100644 core/src/main/resources/hudson/util/HudsonFailedToLoad/index_bg.properties create mode 100644 core/src/main/resources/hudson/util/HudsonIsLoading/index_bg.properties create mode 100644 core/src/main/resources/hudson/util/HudsonIsRestarting/index_bg.properties create mode 100644 core/src/main/resources/hudson/util/IncompatibleAntVersionDetected/index_bg.properties create mode 100644 core/src/main/resources/hudson/util/IncompatibleServletVersionDetected/index_bg.properties create mode 100644 core/src/main/resources/hudson/util/IncompatibleVMDetected/index_bg.properties create mode 100644 core/src/main/resources/hudson/util/InsufficientPermissionDetected/index_bg.properties create mode 100644 core/src/main/resources/hudson/util/JNADoublyLoaded/index_bg.properties create mode 100644 core/src/main/resources/hudson/util/NoHomeDir/index_bg.properties create mode 100644 core/src/main/resources/hudson/util/NoTempDir/index_bg.properties create mode 100644 core/src/main/resources/hudson/views/BuildButtonColumn/column_bg.properties create mode 100644 core/src/main/resources/jenkins/CLI/WarnWhenEnabled/message_bg.properties create mode 100644 core/src/main/resources/jenkins/CLI/config_bg.properties create mode 100644 core/src/main/resources/jenkins/diagnosis/HsErrPidList/index_bg.properties create mode 100644 core/src/main/resources/jenkins/diagnosis/HsErrPidList/message_bg.properties create mode 100644 core/src/main/resources/jenkins/diagnostics/CompletedInitializationMonitor/message_bg.properties create mode 100644 core/src/main/resources/jenkins/diagnostics/Messages_bg.properties create mode 100644 core/src/main/resources/jenkins/diagnostics/SecurityIsOffMonitor/message_bg.properties create mode 100644 core/src/main/resources/jenkins/install/SetupWizard/authenticate-security-token_bg.properties create mode 100644 core/src/main/resources/jenkins/install/SetupWizard/proxy-configuration_bg.properties create mode 100644 core/src/main/resources/jenkins/install/SetupWizard/setupWizardFirstUser_bg.properties create mode 100644 core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_bg.properties create mode 100644 core/src/main/resources/jenkins/management/AdministrativeMonitorsDecorator/footer_bg.properties create mode 100644 core/src/main/resources/jenkins/management/PluginsLink/info_bg.properties create mode 100644 core/src/main/resources/jenkins/model/BuildDiscarderProperty/config-details_bg.properties create mode 100644 core/src/main/resources/jenkins/model/DownloadSettings/Warning/message_bg.properties create mode 100644 core/src/main/resources/jenkins/model/Jenkins/EnforceSlaveAgentPortAdministrativeMonitor/message_bg.properties create mode 100644 core/src/main/resources/jenkins/model/Jenkins/MasterComputer/configure_bg.properties create mode 100644 core/src/main/resources/jenkins/model/RunIdMigrator/UnmigrationInstruction/index_bg.properties create mode 100644 core/src/main/resources/jenkins/model/identity/IdentityRootAction/index_bg.properties create mode 100644 core/src/main/resources/jenkins/model/item_category/Messages_bg.properties create mode 100644 core/src/main/resources/jenkins/security/s2m/AdminCallableMonitor/message_bg.properties create mode 100644 core/src/main/resources/jenkins/security/s2m/AdminWhitelistRule/index_bg.properties create mode 100644 core/src/main/resources/jenkins/security/s2m/MasterKillSwitchWarning/message_bg.properties create mode 100644 core/src/main/resources/jenkins/security/s2m/Messages_bg.properties create mode 100644 core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message_bg.properties create mode 100644 core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause_bg.properties create mode 100644 core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/description_bg.properties create mode 100644 core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause_bg.properties create mode 100644 core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/description_bg.properties create mode 100644 core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause_bg.properties create mode 100644 core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description_bg.properties create mode 100644 core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol4/description_bg.properties create mode 100644 core/src/main/resources/jenkins/slaves/Messages_bg.properties create mode 100644 core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/config_bg.properties create mode 100644 core/src/main/resources/jenkins/triggers/ReverseBuildTrigger/config_bg.properties create mode 100644 core/src/main/resources/jenkins/widgets/HistoryPageFilter/queue-items_bg.properties diff --git a/core/src/main/resources/hudson/AboutJenkins/index_bg.properties b/core/src/main/resources/hudson/AboutJenkins/index_bg.properties new file mode 100644 index 0000000000..81aeda52c0 --- /dev/null +++ b/core/src/main/resources/hudson/AboutJenkins/index_bg.properties @@ -0,0 +1,40 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +# About Jenkins {0} +about=\ + \u041e\u0442\u043d\u043e\u0441\u043d\u043e Jenkins {0} +# Static resources +static.dependencies=\ + \u0421\u0442\u0430\u0442\u0438\u0447\u043d\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u0438 +# License and dependency information for plugins +plugin.dependencies=\ + \u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0437\u0430 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0442\u0435 \u0438 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438\u0442\u0435 \u043d\u0430 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0438\u0442\u0435. +No\ information\ recorded=\ + \u041d\u0435 \u0441\u0435 \u0437\u0430\u043f\u0438\u0441\u0432\u0430 \u043d\u0438\u043a\u0430\u043a\u0432\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f +# Jenkins depends on the following 3rd party libraries +dependencies=\ + Jenkins \u0437\u0430\u0432\u0438\u0441\u0438 \u0438 \u043e\u0442 \u0441\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u043e\u0442 \u0434\u0440\u0443\u0433\u0438 \u043c\u0435\u0441\u0442\u0430 +# Jenkins is a community-developed open-source automation server. +blurb=\ + Jenkins \u0435 \u0441\u044a\u0440\u0432\u044a\u0440 \u0437\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u0430\u043d\u0435 \u0441\ + \u043e\u0442\u0432\u043e\u0440\u0435\u043d \u043a\u043e\u0434, \u043a\u043e\u0439\u0442\u043e \u0441\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0432\u0430 \u043e\u0442 \u0441\u0432\u043e\u044f\u0442\u0430 \u043e\u0431\u0449\u043d\u043e\u0441\u0442 \u043e\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u0446\u0438. diff --git a/core/src/main/resources/hudson/Messages_bg.properties b/core/src/main/resources/hudson/Messages_bg.properties index 8791c38139..28e59f984c 100644 --- a/core/src/main/resources/hudson/Messages_bg.properties +++ b/core/src/main/resources/hudson/Messages_bg.properties @@ -135,3 +135,15 @@ PluginWrapper.obsolete=\ # {0} v{1} failed to load. PluginWrapper.failed_to_load_plugin=\ \u201e{0}\u201c, \u0432\u0435\u0440\u0441\u0438\u044f {1} \u043d\u0435 \u0441\u0435 \u0437\u0430\u0440\u0435\u0434\u0438. +# Plugins Failed To Load +PluginWrapper.PluginWrapperAdministrativeMonitor.DisplayName=\ + \u041f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0438\u0442\u0435 \u043d\u0435 \u0441\u0435 \u0437\u0430\u0440\u0435\u0434\u0438\u0445\u0430 +# Invalid Plugin Configuration +PluginManager.PluginUpdateMonitor.DisplayName=\ + \u041d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u043d\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043d\u0430 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0430 +# Whitespace can no longer be used as the separator. Please Use \u2018,\u2019 as the separator instead. +FilePath.validateAntFileMask.whitespaceSeparator=\ + \u0412\u0435\u0447\u0435 \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u0437\u0430 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b. \u041f\u043e\u043b\u0437\u0432\u0430\u0439\u0442\u0435 \u0437\u0430\u043f\u0435\u0442\u0430\u044f: \u201e,\u201c +# Cyclic Dependencies Detector +PluginManager.PluginCycleDependenciesMonitor.DisplayName=\ + \u041e\u0442\u043a\u0440\u0438\u0432\u0430\u043d\u0435 \u043d\u0430 \u0446\u0438\u043a\u043b\u0438\u0447\u043d\u0438 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 diff --git a/core/src/main/resources/hudson/PluginManager/advanced_bg.properties b/core/src/main/resources/hudson/PluginManager/advanced_bg.properties index 60ac6803db..3fc652c463 100644 --- a/core/src/main/resources/hudson/PluginManager/advanced_bg.properties +++ b/core/src/main/resources/hudson/PluginManager/advanced_bg.properties @@ -20,7 +20,8 @@ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN # THE SOFTWARE. -File=\u0424\u0430\u0439\u043b +File=\ + \u0424\u0430\u0439\u043b HTTP\ Proxy\ Configuration=\ \u0421\u044a\u0440\u0432\u044a\u0440-\u043f\u043e\u0441\u0440\u0435\u0434\u043d\u0438\u043a \u0437\u0430 HTTP Submit=\ diff --git a/core/src/main/resources/hudson/PluginManager/table_bg.properties b/core/src/main/resources/hudson/PluginManager/table_bg.properties index 893174efce..25e4b2ed41 100644 --- a/core/src/main/resources/hudson/PluginManager/table_bg.properties +++ b/core/src/main/resources/hudson/PluginManager/table_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -61,3 +61,8 @@ depCompatWarning=\ \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435: \u0442\u0430\u0437\u0438 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0430 \u0438\u0437\u0438\u0441\u043a\u0432\u0430 \u043e\u0431\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0437\u0430\u0432\u0438\u0441\u0435\u0449\u0438\u0442\u0435 \u043e\u0442 \u043d\u0435\u044f\ \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0438. \u0427\u0430\u0441\u0442 \u043e\u0442 \u0442\u044f\u0445 \u043d\u0435 \u0441\u0430 \u0441\u044a\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u0438 \u0441 \u0442\u0435\u043a\u0443\u0449\u0430\u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u043d\u0430 Jenkins. \u0429\u0435\ \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u043f\u0440\u043e\u043c\u0435\u043d\u0438\u0442\u0435 \u0437\u0430\u0434\u0430\u0447\u0438\u0442\u0435, \u043a\u043e\u0438\u0442\u043e \u0433\u0438 \u043f\u043e\u043b\u0437\u0432\u0430\u0442. +# \ +# Warning: This plugin version may not be safe to use. Please review the following security notices: +securityWarning=\ + \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435: \u0442\u0430\u0437\u0438 \u0432\u0435\u0440\u0441\u0438\u044f \u043d\u0430 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0430\u0442\u0430 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0438\u043c\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441\u044a\u0441\ + \u0441\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442\u0442\u0430. \u041f\u0440\u0435\u0433\u043b\u0435\u0434\u0430\u0439\u0442\u0435 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u044f\u0442\u0430. diff --git a/core/src/main/resources/hudson/PluginWrapper/PluginWrapperAdministrativeMonitor/message_bg.properties b/core/src/main/resources/hudson/PluginWrapper/PluginWrapperAdministrativeMonitor/message_bg.properties new file mode 100644 index 0000000000..4c826414ea --- /dev/null +++ b/core/src/main/resources/hudson/PluginWrapper/PluginWrapperAdministrativeMonitor/message_bg.properties @@ -0,0 +1,27 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +Correct=\ + \u041e\u0442\u0433\u043e\u0432\u0430\u0440\u044f +# There are dependency errors loading some plugins +Dependency\ errors=\ + \u0418\u043c\u0430 \u0433\u0440\u0435\u0448\u043a\u0438 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438\u0442\u0435 \u043d\u0430 \u043d\u044f\u043a\u043e\u0438 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0438 diff --git a/core/src/main/resources/hudson/cli/CLIAction/index_bg.properties b/core/src/main/resources/hudson/cli/CLIAction/index_bg.properties new file mode 100644 index 0000000000..f1abd03aaa --- /dev/null +++ b/core/src/main/resources/hudson/cli/CLIAction/index_bg.properties @@ -0,0 +1,36 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017 Alexander Shopov +# +# 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. + +Available\ Commands=\ + \u041d\u0430\u043b\u0438\u0447\u043d\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u0438 +# You can access various features in Jenkins through a command-line tool. See \ +# the Wiki for more details of this feature.\ +# To get started, download jenkins-cli.jar, and run it as follows: +blurb=\ + \u0418\u043c\u0430\u0442\u0435 \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0442\u0430 \u043d\u0430 Jenkins \u0447\u0440\u0435\u0437 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0430 \u0437\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u0440\u0435\u0434.\ + \u0417\u0430 \u043f\u043e\u0432\u0435\u0447\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043f\u0440\u0435\u0433\u043b\u0435\u0434\u0430\u0439\u0442\u0435\ + \u0443\u0438\u043a\u0438\u0442\u043e.\ + \u0421\u0432\u0430\u043b\u0435\u0442\u0435 \u0444\u0430\u0439\u043b\u0430 jenkins-cli.jar \u0438 \u0433\u043e\ + \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u0442\u0435 \u043f\u043e \u0441\u043b\u0435\u0434\u043d\u0438\u044f \u043d\u0430\u0447\u0438\u043d: +# Jenkins CLI +Jenkins\ CLI=\ + Jenkins \u043e\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u0440\u0435\u0434 diff --git a/core/src/main/resources/hudson/cli/CliProtocol/deprecationCause_bg.properties b/core/src/main/resources/hudson/cli/CliProtocol/deprecationCause_bg.properties new file mode 100644 index 0000000000..f6b2646c8a --- /dev/null +++ b/core/src/main/resources/hudson/cli/CliProtocol/deprecationCause_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +# This protocol is an obsolete protocol, which has been replaced by CLI2-connect. \ +# It is also not encrypted. +message=\ + \u0422\u043e\u0437\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u0435 \u043e\u0441\u0442\u0430\u0440\u044f\u043b \u0438 \u0435 \u0431\u0435\u0437 \u0448\u0438\u0444\u0440\u0438\u0440\u0430\u043d\u0435. \u0417\u0430\u043c\u0435\u043d\u0435\u043d \u0435 \u043e\u0442 CLI2-connect. diff --git a/core/src/main/resources/hudson/cli/CliProtocol/description_bg.properties b/core/src/main/resources/hudson/cli/CliProtocol/description_bg.properties new file mode 100644 index 0000000000..95e9c0e6e1 --- /dev/null +++ b/core/src/main/resources/hudson/cli/CliProtocol/description_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +Accepts\ connections\ from\ CLI\ clients=\ + \u041f\u0440\u0438\u0435\u043c\u0430\u043d\u0435 \u043d\u0430 \u0432\u0440\u044a\u0437\u043a\u0438 \u043e\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0438\u0442\u0435 \u043e\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u0440\u0435\u0434. +# Accepts connections from CLI clients. This protocol is unencrypted. +summary=\ + \u041f\u0440\u0438\u0435\u043c\u0430\u043d\u0435 \u043d\u0430 \u0432\u0440\u044a\u0437\u043a\u0438 \u043e\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0438\u0442\u0435 \u043e\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u0440\u0435\u0434. \u0422\u043e\u0437\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u043d\u0435 \u0435 \u0437\u0430\u0449\u0438\u0442\u0435\u043d\ + \u0441 \u0448\u0438\u0444\u0440\u0438\u0440\u0430\u043d\u0435. diff --git a/core/src/main/resources/hudson/cli/CliProtocol2/deprecationCause_bg.properties b/core/src/main/resources/hudson/cli/CliProtocol2/deprecationCause_bg.properties new file mode 100644 index 0000000000..976f357b3d --- /dev/null +++ b/core/src/main/resources/hudson/cli/CliProtocol2/deprecationCause_bg.properties @@ -0,0 +1,29 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +# Remoting-based CLI is deprecated and not recommended due to the security reasons. \ +# It is recommended to disable this protocol on the instance. \ +# if you need Remoting CLI on your instance, this protocol has to be enabled. +message=\ + \u041e\u0442\u0434\u0430\u043b\u0435\u0447\u0435\u043d\u0438\u0442\u0435 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0438 \u043e\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u0435\u043d \u0440\u0435\u0434 \u0441\u0430 \u043e\u0441\u0442\u0430\u0440\u0435\u043b\u0438 \u0438 \u043d\u0435 \u0441\u0435 \u043f\u0440\u0435\u043f\u043e\u0440\u044a\u0447\u0432\u0430\u0442 \u0437\u0430\u0440\u0430\u0434\u0438\ + \u043d\u0438\u0441\u043a\u0430\u0442\u0430 \u0438\u043c \u0441\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442. \u041e\u0441\u0432\u0435\u043d \u0430\u043a\u043e \u043d\u0430\u0438\u0441\u0442\u0438\u043d\u0430 \u0441\u0435 \u043d\u0443\u0436\u0434\u0430\u0435\u0442\u0435 \u043e\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e \u0442\u043e\u0437\u0438\ + \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b, \u0432\u0438 \u043f\u0440\u0435\u043f\u043e\u0440\u044a\u0447\u0432\u0430\u043c\u0435 \u0434\u0430 \u0433\u043e \u0438\u0437\u043a\u043b\u044e\u0447\u0438\u0442\u0435. diff --git a/core/src/main/resources/hudson/cli/CliProtocol2/description_bg.properties b/core/src/main/resources/hudson/cli/CliProtocol2/description_bg.properties new file mode 100644 index 0000000000..d738341fc2 --- /dev/null +++ b/core/src/main/resources/hudson/cli/CliProtocol2/description_bg.properties @@ -0,0 +1,27 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +Extends\ the\ version\ 1\ protocol\ by\ adding\ transport\ encryption=\ + \u0420\u0430\u0437\u0448\u0438\u0440\u044f\u0432\u0430 \u0432\u0435\u0440\u0441\u0438\u044f 1 \u043d\u0430 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u043a\u0430\u0442\u043e \u0434\u043e\u0431\u0430\u0432\u044f \u0448\u0438\u0444\u0440\u0438\u0440\u0430\u043d\u0435 +# Extends the version 1 protocol by adding transport encryption. +summary=\ + \u0420\u0430\u0437\u0448\u0438\u0440\u044f\u0432\u0430 \u0432\u0435\u0440\u0441\u0438\u044f 1 \u043d\u0430 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u043a\u0430\u0442\u043e \u0434\u043e\u0431\u0430\u0432\u044f \u0448\u0438\u0444\u0440\u0438\u0440\u0430\u043d\u0435 diff --git a/core/src/main/resources/hudson/cli/Messages_bg.properties b/core/src/main/resources/hudson/cli/Messages_bg.properties index 3ce9a54d03..09062a5544 100644 --- a/core/src/main/resources/hudson/cli/Messages_bg.properties +++ b/core/src/main/resources/hudson/cli/Messages_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -159,3 +159,29 @@ CliProtocol2.displayName=\ # Jenkins CLI Protocol/1 CliProtocol.displayName=\ \u041f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u043d\u0430 Jenkins \u0437\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0435\u043d \u0440\u0435\u0434, \u0432\u0435\u0440\u0441\u0438\u044f 1 +# \ +# Depending on the security realm, you will need to pass something like:\n\ +# --username USER [ --password PASS | --password-file FILE ]\n\ +# May not be supported in some security realms, such as single-sign-on.\n\ +# Pair with the logout command.\n\ +# The same options can be used on any other command, but unlike other generic CLI options,\n\ +# these come *after* the command name.\n\ +# Whether stored or not, this authentication mode will not let you refer to (e.g.) jobs as arguments\n\ +# if Jenkins denies anonymous users Overall/Read and (e.g.) Job/Read.\n\ +# *Deprecated* in favor of -auth. +LoginCommand.FullDescription=\ + \u0412 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442 \u043e\u0442 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u0430\u043d\u0435\u0442\u043e \u0449\u0435 \u0441\u0435 \u043d\u0430\u043b\u043e\u0436\u0438 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u043d\u0435\u0449\u043e \u043a\u0430\u0442\u043e:\n\ + --username \u041f\u041e\u0422\u0420\u0415\u0411\u0418\u0422\u0415\u041b [ --password \u041f\u0410\u0420\u041e\u041b\u0410 | --password-file \u0424\u0410\u0419\u041b ]\n\ + \u0412\u044a\u0437\u043c\u043e\u0436\u043d\u043e \u0435 \u0434\u0430 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0438 \u0432\u044a\u0432 \u0432\u0441\u0438\u0447\u043a\u0438 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u0438, \u043d\u0430\u043f\u0440. \u043f\u0440\u0438 \u0435\u0434\u043d\u043e\u043a\u0440\u0430\u0442\u043d\u043e \u0432\u043f\u0438\u0441\u0432\u0430\u043d\u0435.\n\ + \u041a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u0430\u0439\u0442\u0435 \u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u0442\u0430 \u0437\u0430 \u0438\u0437\u0445\u043e\u0434.\n\ + \u0422\u0435\u0437\u0438 \u043e\u043f\u0446\u0438\u0438 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u0441 \u0432\u0441\u044f\u043a\u0430 \u0434\u0440\u0443\u0433\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430, \u043d\u043e \u0437\u0430 \u0440\u0430\u0437\u043b\u0438\u043a\u0430 \u043e\u0442\ + \u043e\u0442 \u043e\u0441\u0442\u0430\u043d\u0430\u043b\u0438\u0442\u0435 \u043e\u0431\u0449\u0438 \u043e\u043f\u0446\u0438\u0438 \u0437\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0435\u043d \u0440\u0435\u0434, \u0442\u0435 \u0441\u0435 \u043f\u043e\u0434\u0430\u0432\u0430\u0442 \u0421\u041b\u0415\u0414 \u0438\u043c\u0435\u0442\u043e \u043d\u0430\ + \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u0442\u0430. \u0422\u043e\u0437\u0438 \u0440\u0435\u0436\u0438\u043c \u043d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0434\u0430 \u0443\u043a\u0430\u0437\u0432\u0430\u0442\u0435 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0438\u044f\u0442\u0430 \u043a\u0430\u0442\u043e \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0438,\ + \u0430\u043a\u043e Jenkins \u043d\u0435 \u0434\u0430\u0432\u0430 \u043d\u0430 \u0430\u043d\u043e\u043d\u0438\u043c\u043d\u0438\u0442\u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0438 \u043e\u0431\u0449\u043e \u043f\u0440\u0430\u0432\u043e \u0437\u0430 \u0447\u0435\u0442\u0435\u043d\u0435.\ + \u041e\u0421\u0422\u0410\u0420\u042f\u041b\u041e, \u0434\u0430 \u043d\u0435 \u0441\u0435 \u043f\u043e\u043b\u0437\u0432\u0430! \u041f\u0440\u043e\u0431\u0432\u0430\u0439\u0442\u0435 \u0441 \u201e-auth\u201c \u0432\u043c\u0435\u0441\u0442\u043e \u0442\u043e\u0432\u0430. +# Installing a plugin from standard input +InstallPluginCommand.InstallingPluginFromStdin=\ + \u0418\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0430 \u043e\u0442 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0438\u044f \u0432\u0445\u043e\u0434. +# *Deprecated* in favor of -auth. +LogoutCommand.FullDescription=\ + \u041e\u0421\u0422\u0410\u0420\u042f\u041b\u041e, \u0434\u0430 \u043d\u0435 \u0441\u0435 \u043f\u043e\u043b\u0437\u0432\u0430! \u041f\u0440\u043e\u0431\u0432\u0430\u0439\u0442\u0435 \u0441 \u201e-auth\u201c \u0432\u043c\u0435\u0441\u0442\u043e \u0442\u043e\u0432\u0430. diff --git a/core/src/main/resources/hudson/diagnosis/HudsonHomeDiskUsageMonitor/index_bg.properties b/core/src/main/resources/hudson/diagnosis/HudsonHomeDiskUsageMonitor/index_bg.properties new file mode 100644 index 0000000000..91faf92f5a --- /dev/null +++ b/core/src/main/resources/hudson/diagnosis/HudsonHomeDiskUsageMonitor/index_bg.properties @@ -0,0 +1,48 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +# Clean up some files from this partition to make more room. +solution.1=\ + \u0418\u0437\u0442\u0440\u0438\u0439\u0442\u0435 \u0447\u0430\u0441\u0442 \u043e\u0442 \u0444\u0430\u0439\u043b\u043e\u0432\u0435\u0442\u0435 \u043e\u0442 \u0442\u043e\u0437\u0438 \u0434\u044f\u043b, \u0437\u0430 \u0434\u0430 \u043e\u0441\u0432\u043e\u0431\u043e\u0434\u0438\u0442\u0435 \u043f\u043e\u0432\u0435\u0447\u0435 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e. +# \ +# Move JENKINS_HOME to a bigger partition. \ +# See our Wiki for how to do this. +solution.2=\ + \u041f\u0440\u0435\u043c\u0435\u0441\u0442\u0435\u0442\u0435 JENKINS_HOME \u043d\u0430 \u043f\u043e-\u0433\u043e\u043b\u044f\u043c \u0434\u044f\u043b.\ + \u0412\u0438\u0436\u0442\u0435: \ + \u0443\u0438\u043a\u0438\u0442\u043e \u0437\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0437\u0430 \u0442\u043e\u0432\u0430. +# JENKINS_HOME is almost full +blurb=\ + \u0424\u0430\u0439\u043b\u043e\u0432\u0430\u0442\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430, \u043d\u0430 \u043a\u043e\u044f\u0442\u043e \u0435 JENKINS_HOME, \u0435 \u043f\u043e\u0447\u0442\u0438 \u043f\u044a\u043b\u043d\u0430 +JENKINS_HOME\ is\ almost\ full=\ + \u0424\u0430\u0439\u043b\u043e\u0432\u0430\u0442\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430, \u043d\u0430 \u043a\u043e\u044f\u0442\u043e \u0435 JENKINS_HOME, \u0435 \u043f\u043e\u0447\u0442\u0438 \u043f\u044a\u043b\u043d\u0430 +# \ +# Your JENKINS_HOME ({0}) is almost full. \ +# When this directory completely fills up, it\'ll wreak havoc because Jenkins can\'t store any more data. +description.1=\ + \ + \u0424\u0430\u0439\u043b\u043e\u0432\u0430\u0442\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 {0}, \u043d\u0430 \u043a\u043e\u044f\u0442\u043e \u0435 JENKINS_HOME ({0}) \u0435 \u043f\u043e\u0447\u0442\u0438 \u043f\u044a\u043b\u043d\u0430.\ + \u041a\u043e\u0433\u0430\u0442\u043e \u0434\u0438\u0441\u043a\u043e\u0432\u043e\u0442\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e \u0441\u0432\u044a\u0440\u0448\u0438, Jenkinns \u043d\u044f\u043c\u0430 \u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u043d\u043e, \u0437\u0430\u0449\u043e\u0442\u043e\ + \u043d\u044f\u043c\u0430 \u043a\u044a\u0434\u0435 \u0434\u0430 \u0441\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430 \u043d\u043e\u0432\u0438\u0442\u0435 \u0434\u0430\u043d\u043d\u0438. +# To prevent that problem, you should act now. +description.2=\ + \u0422\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0440\u0435\u0430\u0433\u0438\u0440\u0430\u0442\u0435 \u043d\u0435\u0437\u0430\u0431\u0430\u0432\u043d\u043e, \u0437\u0430 \u0434\u0430 \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u0438\u0442\u0435 \u0442\u043e\u0437\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c. diff --git a/core/src/main/resources/hudson/diagnosis/HudsonHomeDiskUsageMonitor/message_bg.properties b/core/src/main/resources/hudson/diagnosis/HudsonHomeDiskUsageMonitor/message_bg.properties new file mode 100644 index 0000000000..967bddc28a --- /dev/null +++ b/core/src/main/resources/hudson/diagnosis/HudsonHomeDiskUsageMonitor/message_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Dismiss= +Tell\ me\ more=\ + \u041f\u043e\u0432\u0435\u0447\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f +# Your Jenkins data directory "{0}" (AKA JENKINS_HOME) is almost full. You should act on it before it gets completely full. +blurb=\ + \u0414\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f\u0442\u0430 \u0441\u0430 \u0434\u0430\u043d\u043d\u0438 \u043d\u0430 Jenkins \u201e{0}\u201c \u2014 JENKINS_HOME) diff --git a/core/src/main/resources/hudson/diagnosis/MemoryUsageMonitor/index_bg.properties b/core/src/main/resources/hudson/diagnosis/MemoryUsageMonitor/index_bg.properties new file mode 100644 index 0000000000..17fcc9d499 --- /dev/null +++ b/core/src/main/resources/hudson/diagnosis/MemoryUsageMonitor/index_bg.properties @@ -0,0 +1,32 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Long=\ + \u0414\u044a\u043b\u044a\u0433 +Timespan=\ + \u041f\u0435\u0440\u0438\u043e\u0434 +Short=\ + \u041a\u0440\u0430\u0442\u044a\u043a +Medium=\ + \u0421\u0440\u0435\u0434\u0435\u043d +JVM\ Memory\ Usage=\ + \u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 \u043f\u0430\u043c\u0435\u0442 \u043e\u0442 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u043d\u0430\u0442\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 \u043d\u0430 Java diff --git a/core/src/main/resources/hudson/diagnosis/Messages_bg.properties b/core/src/main/resources/hudson/diagnosis/Messages_bg.properties index 1a3ea6cfad..25432bc2ea 100644 --- a/core/src/main/resources/hudson/diagnosis/Messages_bg.properties +++ b/core/src/main/resources/hudson/diagnosis/Messages_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -31,3 +31,12 @@ OldDataMonitor.DisplayName=\ \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0441\u0442\u0430\u0440\u0438\u0442\u0435 \u0434\u0430\u043d\u043d\u0438 HudsonHomeDiskUsageMonitor.DisplayName=\ \u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u043e \u0434\u0438\u0441\u043a\u043e\u0432\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e +# Reverse Proxy Setup +ReverseProxySetupMonitor.DisplayName=\ + \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043d\u0430 \u0441\u044a\u0440\u0432\u044a\u0440\u0430-\u043e\u0431\u0440\u0430\u0442\u0435\u043d \u043f\u043e\u0441\u0440\u0435\u0434\u043d\u0438\u043a +# Too Many Jobs Not Organized in Views +TooManyJobsButNoView.DisplayName=\ + \u041f\u0440\u0435\u043a\u0430\u043b\u0435\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u0437\u0430\u0434\u0430\u0447\u0438 \u043d\u0435 \u0441\u0430 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0438\u0440\u0430\u043d\u0438 \u043f\u043e \u0438\u0437\u0433\u043b\u0435\u0434\u0438 +# Missing Descriptor ID +NullIdDescriptorMonitor.DisplayName=\ + \u041b\u0438\u043f\u0441\u0432\u0430\u0449 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043d\u0430 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440 diff --git a/core/src/main/resources/hudson/diagnosis/NullIdDescriptorMonitor/message_bg.properties b/core/src/main/resources/hudson/diagnosis/NullIdDescriptorMonitor/message_bg.properties new file mode 100644 index 0000000000..82eaa1e162 --- /dev/null +++ b/core/src/main/resources/hudson/diagnosis/NullIdDescriptorMonitor/message_bg.properties @@ -0,0 +1,31 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# The following extensions have no ID value and therefore likely cause a problem. Please upgrade these plugins if they are not the latest, \ +# and if they are the latest, please file a bug so that we can fix them. +blurb=\ + \u0421\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0438 \u0441\u0430 \u0431\u0435\u0437 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 (ID), \u043a\u043e\u0435\u0442\u043e \u043c\u043e\u0436\u0435 \u0434\u0430 \u0434\u043e\u0432\u0435\u0434\u0435 \u0434\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438.\ + \u041e\u0431\u043d\u043e\u0432\u0435\u0442\u0435 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0438\u0442\u0435 \u043a\u044a\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0430\u0442\u0430 \u0438\u043c \u0432\u0435\u0440\u0441\u0438\u044f. \u0410\u043a\u043e \u0432\u0435\u0447\u0435 \u0441\u0430 \u043e\u0431\u043d\u043e\u0432\u0435\u043d\u0438, \u043c\u043e\u043b\u0438\u043c \u0434\u0430\ + \u043f\u043e\u0434\u0430\u0434\u0435\u0442\u0435 \u0434\u043e\u043a\u043b\u0430\u0434 \u0437\u0430 \u0433\u0440\u0435\u0448\u043a\u0430, \u0437\u0430 \u0434\u0430 \u043a\u043e\u0440\u0438\u0433\u0438\u0440\u0430\u043c\u0435 \u0442\u043e\u0432\u0430. +# Descriptor {0} from plugin {2} with display name {1} +problem=\ + \u0414\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440 {0} \u043e\u0442 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0430\u0442\u0430 {2} \u0441 \u0438\u043c\u0435 {1} diff --git a/core/src/main/resources/hudson/diagnosis/OldDataMonitor/manage_bg.properties b/core/src/main/resources/hudson/diagnosis/OldDataMonitor/manage_bg.properties new file mode 100644 index 0000000000..ab631fc123 --- /dev/null +++ b/core/src/main/resources/hudson/diagnosis/OldDataMonitor/manage_bg.properties @@ -0,0 +1,105 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Name=\ + \u0418\u043c\u0435 +# \ +# Eventually the code supporting these data migrations may be removed. Compatibility will be \ +# retained for at least 150 releases since the structure change. Versions older than this are \ +# in bold above, and it is recommended to resave these files. +blurb.4=\ + \u0421\u043b\u0435\u0434 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e \u0432\u0440\u0435\u043c\u0435 \u043a\u043e\u0434\u044a\u0442 \u0437\u0430 \u0442\u0435\u0437\u0438 \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438 \u0449\u0435 \u0431\u044a\u0434\u0435 \u0438\u0437\u0442\u0440\u0438\u0442.\ + \u0421\u044a\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0442\u0430 \u0449\u0435 \u0431\u044a\u0434\u0435 \u0437\u0430\u043f\u0430\u0437\u0435\u043d\u0430 \u0437\u0430 \u043f\u043e\u043d\u0435 150 \u0438\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u043b\u0435\u0434 \u043f\u0440\u043e\u043c\u044f\u043d\u0430\u0442\u0430 \u043f\u043e\ + \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430\u0442\u0430. \u0412\u0435\u0440\u0441\u0438\u0438\u0442\u0435, \u043f\u043e \u0440\u0430\u043d\u043d\u0438 \u043e\u0442 \u0442\u043e\u0432\u0430, \u0441\u0430 \u0432 \u043f\u043e\u043b\u0443\u0447\u0435\u0440\u043d\u043e. \u0417\u0430 \u043f\u0440\u0435\u043f\u043e\u0440\u044a\u0447\u0432\u0430\u043d\u0435 \u0435 \u0434\u0430\ + \u0437\u0430\u043f\u0438\u0448\u0438\u0442\u0435 \u0444\u0430\u0439\u043b\u043e\u0432\u0435\u0442\u0435 \u043d\u0430\u043d\u043e\u0432\u043e. +Upgrade=\ + \u041e\u0431\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435 +Manage\ Old\ Data=\ + \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0441\u0442\u0430\u0440\u0438\u0442\u0435 \u0434\u0430\u043d\u043d\u0438 +Discard\ Unreadable\ Data=\ + \u041e\u0442\u0445\u0432\u044a\u0440\u043b\u044f\u043d\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435, \u043a\u043e\u0438\u0442\u043e \u043d\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0441\u0435 \u043f\u0440\u043e\u0447\u0435\u0442\u0430\u0442 +# \ +# When there are changes in how data is stored on disk, Jenkins uses the following strategy: \ +# data is migrated to the new structure when it is loaded, but the file is not resaved in the \ +# new format. This allows for downgrading Jenkins if needed. However, it can also leave data \ +# on disk in the old format indefinitely. The table below lists files containing such data, \ +# and the Jenkins version(s) where the data structure was changed. +blurb.1=\ + \u041f\u0440\u0438 \u043f\u0440\u043e\u043c\u044f\u043d\u0430 \u0432 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430\u0442\u0430 \u043d\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u0435\u0442\u0435 Jenkins \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u0441\u043b\u0435\u0434\u043d\u0430\u0442\u0430 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044f:\ + \u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u0441\u0435 \u043c\u0438\u0433\u0440\u0438\u0440\u0430\u0442 \u043a\u044a\u043c \u043d\u043e\u0432\u0430\u0442\u0430 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043f\u0440\u0438 \u0437\u0430\u0440\u0435\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0444\u0430\u0439\u043b\u0430, \u043d\u043e \u0442\u043e\u0439\ + \u043e\u0441\u0442\u0430\u0432\u0430 \u0441\u044a\u0441 \u0441\u0442\u0430\u0440\u0430\u0442\u0430 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430. \u0422\u043e\u0432\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0432\u0440\u044a\u0449\u0430\u043d\u0435 \u043a\u044a\u043c \u043f\u0440\u0435\u0434\u0438\u0448\u043d\u0430\u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u043d\u0430\ + Jenkins, \u0430\u043a\u043e \u0441\u0435 \u043d\u0430\u043b\u0430\u0433\u0430. \u0422\u043e\u0432\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u0434\u0430 \u043e\u0441\u0442\u0430\u043d\u0430\u0442 \u0432 \u0441\u0442\u0430\u0440\u0438\u044f \u0444\u043e\u0440\u043c\u0430\u0442 \u0437\u0430\ + \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u043d\u043e \u0434\u044a\u043b\u0433\u043e \u0432\u0440\u0435\u043c\u0435. \u0422\u0430\u0431\u043b\u0438\u0446\u0430\u0442\u0430 \u043f\u043e-\u0434\u043e\u043b\u0443 \u0441\u044a\u0434\u044a\u0440\u0436\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u0435\u0442\u0435 \u0441 \u0442\u0430\u043a\u0438\u0432\u0430 \u0434\u0430\u043d\u043d\u0438,\ + \u043a\u0430\u043a\u0442\u043e \u0438 \u0432\u0435\u0440\u0441\u0438\u044f\u0442\u0430 \u043d\u0430 Jenkins, \u043f\u0440\u0438 \u043a\u043e\u044f\u0442\u043e \u0435 \u0441\u043c\u0435\u043d\u0435\u043d \u0444\u043e\u0440\u043c\u0430\u0442\u044a\u0442 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435. +# \ +# (downgrade as far back as the selected version may still be possible) +blurb.5=\ + (\u0432\u0440\u044a\u0449\u0430\u043d\u0435 \u043a\u044a\u043c \u043d\u0430\u0439-\u0441\u0442\u0430\u0440\u0430\u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u0435\u043d\u0430 \u043e\u0442 \u0438\u0437\u0431\u0440\u0430\u043d\u0430\u0442\u0430) +# \ +# The form below may be used to resave these files in the current format. Doing so means a \ +# downgrade to a Jenkins release older than the selected version will not be able to read the \ +# data stored in the new format. Note that simply using Jenkins to create and configure jobs \ +# and run builds can save data that may not be readable by older Jenkins releases, even when \ +# this form is not used. Also if any unreadable data errors are reported in the right side \ +# of the table above, note that this data will be lost when the file is resaved. +blurb.3=\ + \u0424\u043e\u0440\u043c\u0443\u043b\u044f\u0440\u044a\u0442 \u043f\u043e-\u0434\u043e\u043b\u0443 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0434\u0430 \u043f\u0440\u0435\u0437\u0430\u043f\u0438\u0448\u0435\u0442\u0435 \u0442\u0435\u0437\u0438 \u0444\u0430\u0439\u043b\u043e\u0432\u0435 \u0432 \u043d\u043e\u0432\u0438\u044f \u0444\u043e\u0440\u043c\u0430\u0442.\ + \u0410\u043a\u043e \u043d\u0430\u043f\u0440\u0430\u0432\u0438\u0442\u0435 \u0442\u043e\u0432\u0430 \u0438 \u0432\u044a\u0440\u043d\u0435\u0442\u0435 Jenkins \u043a\u044a\u043c \u0432\u0435\u0440\u0441\u0438\u044f \u043f\u0440\u0435\u0434\u0438 \u0438\u0437\u0431\u0440\u0430\u043d\u0430\u0442\u0430, \u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u043d\u044f\u043c\u0430\ + \u0434\u0430 \u0441\u0435 \u043f\u0440\u043e\u0447\u0435\u0442\u0430\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u043d\u043e. \u0414\u043e\u0440\u0438 \u0431\u0435\u0437 \u0434\u0430 \u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0442\u043e\u0437\u0438 \u0444\u043e\u0440\u043c\u0443\u043b\u044f\u0440 \u0435 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e \u043d\u0435\u0449\u043e\ + \u043f\u043e\u0434\u043e\u0431\u043d\u043e \u0434\u0430 \u0441\u0435 \u0441\u043b\u0443\u0447\u0438 \u2014 \u0430\u043a\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u044a\u0437\u0434\u0430\u0434\u0435\u0442\u0435 \u043d\u043e\u0432\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f, \u043f\u0440\u043e\u043c\u0435\u043d\u0438\u0442\u0435 \u0438\u043b\u0438\ + \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0442\u0435 \u0432\u0435\u0447\u0435 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0438. \u0410\u043a\u043e \u0432 \u0434\u044f\u0441\u043d\u0430\u0442\u0430 \u0441\u0442\u0440\u0430\u043d\u0430 \u043d\u0430 \u0433\u043e\u0440\u043d\u0430\u0442\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0441\u0430\ + \u0434\u043e\u043a\u043b\u0430\u0434\u0432\u0430\u043d\u0438 \u0433\u0440\u0435\u0448\u043a\u0438 \u043f\u0440\u0438 \u0447\u0435\u0442\u0435\u043d\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438, \u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u0449\u0435 \u0431\u044a\u0434\u0430\u0442 \u0438\u0437\u0433\u0443\u0431\u0435\u043d\u0438, \u0430\u043a\u043e\ + \u043f\u0440\u0435\u0437\u0430\u043f\u0438\u0448\u0435\u0442\u0435 \u0444\u0430\u0439\u043b\u0430. +# \ +# It is acceptable to leave unreadable data in these files, as Jenkins will safely ignore it. \ +# To avoid the log messages at Jenkins startup you can permanently delete the unreadable data \ +# by resaving these files using the button below. +blurb.6=\ + \u041d\u0435 \u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0434\u0430 \u043e\u0441\u0442\u0430\u0432\u0438\u0442\u0435 \u0434\u0430\u043d\u043d\u0438, \u043a\u043e\u0438\u0442\u043e \u043d\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0441\u0435 \u043f\u0440\u043e\u0447\u0435\u0442\u0430\u0442 \u0432 \u0442\u0435\u0437\u0438 \u0444\u0430\u0439\u043b\u043e\u0432\u0435,\ + \u0437\u0430\u0449\u043e\u0442\u043e Jenkins \u0449\u0435 \u0433\u0438 \u043f\u0440\u0435\u0441\u043a\u043e\u0447\u0438. \u0410\u043a\u043e \u043d\u0435 \u0438\u0441\u043a\u0430\u0442\u0435 \u043f\u043e\u0432\u0435\u0447\u0435 \u0434\u0430 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430\u0442\u0435 \u0442\u0435\u0437\u0438\ + \u0441\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f, \u043c\u043e\u0436\u0435\u0442\u0435 \u0434\u0430 \u0438\u0437\u0442\u0440\u0438\u0435\u0442\u0435 \u043d\u0435\u0447\u0435\u0442\u0438\u043c\u0438\u0442\u0435 \u0434\u0430\u043d\u043d\u0438 \u043a\u0430\u0442\u043e \u043f\u0440\u0435\u0437\u0430\u043f\u0438\u0448\u0438\u0442\u0435 \u0444\u0430\u0439\u043b\u043e\u0432\u0435\u0442\u0435 \u0441\ + \u0431\u0443\u0442\u043e\u043d\u0430 \u043e\u0442\u0434\u043e\u043b\u0443. +Unreadable\ Data=\ + \u0414\u0430\u043d\u043d\u0438, \u043a\u043e\u0438\u0442\u043e \u043d\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0441\u0435 \u043f\u0440\u043e\u0447\u0435\u0442\u0430\u0442 +No\ old\ data\ was\ found.=\ + \u041d\u0435 \u0441\u0430 \u043e\u0442\u043a\u0440\u0438\u0442\u0438 \u0441\u0442\u0430\u0440\u0438 \u0434\u0430\u043d\u043d\u0438. +Version=\ + \u0412\u0435\u0440\u0441\u0438\u044f +Resave\ data\ files\ with\ structure\ changes\ no\ newer\ than\ Jenkins=\ + \u041f\u0440\u0435\u0437\u0430\u043f\u0438\u0441\u0432\u0430\u043d\u0435 \u043d\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u0435\u0442\u0435 \u0441 \u043f\u0440\u043e\u043c\u0435\u043d\u0438 \u043f\u043e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430\u0442\u0430 \u043d\u0435 \u043f\u043e \u043d\u043e\u0432\u0438, \u043e\u0442 \u0442\u0435\u043a\u0443\u0449\u0430\u0442\u0430\ + \u0432\u0435\u0440\u0441\u0438\u044f \u043d\u0430 Jenkins. +Error=\ + \u0413\u0440\u0435\u0448\u043a\u0430 +Type=\ + \u0412\u0438\u0434 +# \ +# Sometimes errors occur while reading data (if a plugin adds some data and that plugin is \ +# later disabled, if migration code is not written for structure changes, or if Jenkins is \ +# downgraded after it has already written data not readable by the older version). \ +# These errors are logged, but the unreadable data is then skipped over, allowing Jenkins to \ +# startup and function properly. +blurb.2=\ + \u0412 \u043d\u044f\u043a\u043e\u0438 \u0441\u043b\u0443\u0447\u0430\u0438 \u0432\u044a\u0437\u043d\u0438\u043a\u0432\u0430\u0442 \u0433\u0440\u0435\u0448\u043a\u0438 \u043f\u0440\u0438 \u0447\u0435\u0442\u0435\u043d\u0435\u0442\u043e \u043d\u0430 \u0434\u0430\u043d\u043d\u0438\u0442\u0435 (\u043d\u0430\u043f\u0440. \u0430\u043a\u043e \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0430\ + \u0434\u043e\u0431\u0430\u0432\u0438 \u0434\u0430\u043d\u043d\u0438, \u043d\u043e \u0441\u043b\u0435\u0434 \u0442\u043e\u0432\u0430 \u0431\u0438\u0432\u0430 \u0438\u0437\u043a\u043b\u044e\u0447\u0435\u043d\u0430, \u0430\u043a\u043e \u043e\u0449\u0435 \u043d\u0435 \u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043a\u043e\u0434 \u0437\u0430\ + \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u044f \u0438\u043b\u0438 \u0430\u043a\u043e Jenkins \u0431\u0438\u0432\u0430 \u0441\u043c\u0435\u043d\u0435\u043d \u0441 \u043f\u043e-\u0441\u0442\u0430\u0440\u0430 \u0432\u0435\u0440\u0441\u0438\u044f, \u043d\u043e \u043d\u043e\u0432\u0430\u0442\u0430 \u0432\u0435\u0447\u0435 \u0435\ + \u0437\u0430\u043f\u0438\u0441\u0430\u043b\u0430 \u0434\u0430\u043d\u043d\u0438). \u0422\u0435\u0437\u0438 \u0433\u0440\u0435\u0448\u043a\u0438 \u0441\u0435 \u0432\u043f\u0438\u0441\u0432\u0430\u0442 \u0432 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0442\u0435, \u043d\u043e \u0434\u0430\u043d\u043d\u0438\u0442\u0435, \u043a\u043e\u0438\u0442\u043e \u043d\u0435\ + \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0441\u0435 \u043f\u0440\u043e\u0447\u0435\u0442\u0430\u0442, \u0441\u0435 \u043f\u0440\u0435\u0441\u043a\u0430\u0447\u0430\u0442, \u0437\u0430 \u0434\u0430 \u043c\u043e\u0436\u0435 Jenkins \u0434\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430 \u043d\u043e\u0440\u043c\u0430\u043b\u043d\u043e. diff --git a/core/src/main/resources/hudson/diagnosis/OldDataMonitor/message_bg.properties b/core/src/main/resources/hudson/diagnosis/OldDataMonitor/message_bg.properties new file mode 100644 index 0000000000..b8566357e9 --- /dev/null +++ b/core/src/main/resources/hudson/diagnosis/OldDataMonitor/message_bg.properties @@ -0,0 +1,29 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Dismiss=\ + \u041e\u0442\u043a\u0430\u0437 +Manage=\ + \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 +You\ have\ data\ stored\ in\ an\ older\ format\ and/or\ unreadable\ data.=\ + \u0427\u0430\u0441\u0442 \u043e\u0442 \u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u043d\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u043f\u0440\u043e\u0447\u0435\u0442\u0435\u043d\u0438, \u0444\u043e\u0440\u043c\u0430\u0442\u044a\u0442 \u0438\u043c \u0435 \u043f\u0440\u0435\u043a\u0430\u043b\u0435\u043d\u043e \u0441\u0442\u0430\u0440 \u0438\u043b\u0438\ + \u0435 \u0441\u0433\u0440\u0435\u0448\u0435\u043d. diff --git a/core/src/main/resources/hudson/diagnosis/ReverseProxySetupMonitor/message_bg.properties b/core/src/main/resources/hudson/diagnosis/ReverseProxySetupMonitor/message_bg.properties index 52cd6bb32a..a30f17c108 100644 --- a/core/src/main/resources/hudson/diagnosis/ReverseProxySetupMonitor/message_bg.properties +++ b/core/src/main/resources/hudson/diagnosis/ReverseProxySetupMonitor/message_bg.properties @@ -20,6 +20,9 @@ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN # THE SOFTWARE. -Dismiss=\u041f\u0440\u043e\u043f\u0443\u0441\u043d\u0438 -More\ Info=\u041f\u043e\u0432\u0435\u0447\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f -blurb=\u0418\u0437\u0433\u043b\u0435\u0436\u0434\u0430, \u0447\u0435 \u0438\u043c\u0430\u0442\u0435 \u0433\u0440\u0435\u0448\u043a\u0430 \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0442\u0430 \u043d\u0430 \u0432\u0430\u0448\u0435\u0442\u043e reverse proxy. +Dismiss=\ + \u041f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u043d\u0435 +More\ Info=\ + \u041f\u043e\u0432\u0435\u0447\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f +blurb=\ + \u0418\u0437\u0433\u043b\u0435\u0436\u0434\u0430, \u0447\u0435 \u0438\u043c\u0430 \u0433\u0440\u0435\u0448\u043a\u0430 \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0442\u0430 \u043d\u0430 \u043d\u0430\u0441\u0440\u0435\u0449\u043d\u0438\u044f \u0441\u044a\u0440\u0432\u044a\u0440-\u043f\u043e\u0441\u0440\u0435\u0434\u043d\u0438\u043a. diff --git a/core/src/main/resources/hudson/diagnosis/TooManyJobsButNoView/message_bg.properties b/core/src/main/resources/hudson/diagnosis/TooManyJobsButNoView/message_bg.properties new file mode 100644 index 0000000000..8678416931 --- /dev/null +++ b/core/src/main/resources/hudson/diagnosis/TooManyJobsButNoView/message_bg.properties @@ -0,0 +1,32 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Dismiss=\ + \u041e\u0442\u043a\u0430\u0437\u0432\u0430\u043d\u0435 +Create\ a\ view\ now=\ + \u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u043d\u043e\u0432 \u0438\u0437\u0433\u043b\u0435\u0434 +# There appears to be a large number of jobs. Did you know that you can organize your jobs to different views? \ +# You can click '+' in the top page to create a new view any time. +blurb=\ + \u0418\u0437\u0433\u043b\u0435\u0436\u0434\u0430, \u0447\u0435 \u0431\u0440\u043e\u044f\u0442 \u043d\u0430 \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u0442\u0430 \u0435 \u043f\u0440\u0435\u043a\u0430\u043b\u0435\u043d\u043e \u0433\u043e\u043b\u044f\u043c. \u041c\u043e\u0436\u0435\u0442\u0435 \u0434\u0430 \u0433\u0438 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0438\u0440\u0430\u0442\u0435\ + \u043f\u043e \u0438\u0437\u0433\u043b\u0435\u0434\u0438. \u0417\u0430 \u0434\u0430 \u0441\u044a\u0437\u0434\u0430\u0434\u0435\u0442\u0435 \u043d\u043e\u0432 \u0438\u0437\u0433\u043b\u0435\u0434, \u043d\u0430\u0442\u0438\u0441\u043d\u0435\u0442\u0435 \u0431\u0443\u0442\u043e\u043d\u0430 \u201e+\u201c \u0432 \u0433\u043e\u0440\u043d\u0430\u0442\u0430 \u0447\u0430\u0441\u0442 \u043d\u0430\ + \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0442\u0430. diff --git a/core/src/main/resources/hudson/lifecycle/WindowsInstallerLink/_restart_bg.properties b/core/src/main/resources/hudson/lifecycle/WindowsInstallerLink/_restart_bg.properties new file mode 100644 index 0000000000..dca26fb986 --- /dev/null +++ b/core/src/main/resources/hudson/lifecycle/WindowsInstallerLink/_restart_bg.properties @@ -0,0 +1,34 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +# You should be taken automatically to the new Jenkins in a few seconds. \ +# If for some reason the service fails to start, please check the Windows event log for errors and consult the wiki page \ +# located at the official wiki. +blurb=\ + \u0421\u043b\u0435\u0434 \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434\u0438 \u0442\u0440\u044f\u0431\u0432\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0434\u0430 \u0431\u044a\u0434\u0435\u0442\u0435 \u043f\u0440\u0435\u043d\u0430\u0441\u043e\u0447\u0435\u043d\u0438 \u043a\u044a\u043c \u043d\u043e\u0432\u0438\u044f\ + Jenkins. \u0410\u043a\u043e \u0442\u043e\u0432\u0430 \u043d\u0435 \u0441\u0442\u0430\u043d\u0435 \u0432 \u043d\u044f\u043a\u0430\u043a\u0432\u043e \u0440\u0430\u0437\u0443\u043c\u043d\u043e \u0432\u0440\u0435\u043c\u0435, \u043f\u0440\u043e\u0432\u0435\u0440\u0435\u0442\u0435 \u0436\u0443\u0440\u043d\u0430\u043b\u0430 \u0437\u0430\ + \u0441\u044a\u0431\u0438\u0442\u0438\u044f \u043d\u0430 Windows \u0438 \u043f\u043e\u0441\u0435\u0442\u0435\u0442\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0442\u0430\ + \u0437\u0430 \u0442\u043e\u0437\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0432 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u043d\u043e\u0442\u043e \u0443\u0438\u043a\u0438 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430. +# located at the official wiki. +Please\ wait\ while\ Jenkins\ is\ restarting=\ + \u0418\u0437\u0447\u0430\u043a\u0430\u0439\u0442\u0435 \u0434\u043e\u043a\u0430\u0442\u043e Jenkins \u0441\u0435 \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430 diff --git a/core/src/main/resources/hudson/lifecycle/WindowsInstallerLink/index_bg.properties b/core/src/main/resources/hudson/lifecycle/WindowsInstallerLink/index_bg.properties new file mode 100644 index 0000000000..55244f7fc5 --- /dev/null +++ b/core/src/main/resources/hudson/lifecycle/WindowsInstallerLink/index_bg.properties @@ -0,0 +1,41 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Install=\ + \u0418\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043d\u0435 +Install\ as\ Windows\ Service=\ + \u0418\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043d\u0435 \u043a\u0430\u0442\u043e \u0443\u0441\u043b\u0443\u0433\u0430 \u043d\u0430 Windows +Installation\ Directory=\ + \u0418\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u043e\u043d\u043d\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f +Yes=\ + \u0414\u0430 +Installation\ Complete=\ + \u0418\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f\u0442\u0430 \u0437\u0430\u0432\u044a\u0440\u0448\u0438 +# Installation is successfully completed. Do you want to stop this Jenkins and start a newly installed Windows service? +restartBlurb=\ + \u0418\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f\u0442\u0430 \u0437\u0430\u0432\u044a\u0440\u0448\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e. \u0418\u0441\u043a\u0430\u0442\u0435 \u043b\u0438 \u0434\u0430 \u0441\u043f\u0440\u0435\u0442\u0435 \u0442\u0435\u043a\u0443\u0449\u0438\u044f Jenkins \u0438 \u0434\u0430\ + \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0442\u0435 \u0443\u0441\u043b\u0443\u0433\u0430\u0442\u0430 \u0437\u0430 Windows? +# Installing Jenkins as a Windows service allows you to start Jenkins as soon as the machine starts, and regardless of \ +# who is interactively using Jenkins. +installBlurb=\ + \u0418\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043d\u0435\u0442\u043e \u043d\u0430 Jenkins \u043a\u0430\u0442\u043e \u0443\u0441\u043b\u0443\u0433\u0430 \u043d\u0430 Windows \u0432\u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0442\u043e\u0439 \u0434\u0430 \u0441\u0435\ + \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430 \u0437\u0430\u0435\u0434\u043d\u043e \u0441 \u043c\u0430\u0448\u0438\u043d\u0430\u0442\u0430 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043a\u043e\u0439 \u043f\u043e\u043b\u0437\u0432\u0430 Jenkins \u0438\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u043e. diff --git a/core/src/main/resources/hudson/logging/LogRecorder/configure_bg.properties b/core/src/main/resources/hudson/logging/LogRecorder/configure_bg.properties new file mode 100644 index 0000000000..6ee757f527 --- /dev/null +++ b/core/src/main/resources/hudson/logging/LogRecorder/configure_bg.properties @@ -0,0 +1,34 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Loggers=\ + \u0416\u0443\u0440\u043d\u0430\u043b\u0438 +Logger=\ + \u0416\u0443\u0440\u043d\u0430\u043b +Save=\ + \u0417\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435 +Log\ level=\ + \u041d\u0438\u0432\u043e \u043d\u0430 \u0436\u0443\u0440\u043d\u0430\u043b\u043d\u0438\u0442\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 +Name=\ + \u0418\u043c\u0435 +List\ of\ loggers\ and\ the\ log\ levels\ to\ record=\ + \u0421\u043f\u0438\u0441\u044a\u043a \u0441 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0442\u0435 \u0438 \u043d\u0438\u0432\u0430\u0442\u0430 \u0438\u043c diff --git a/core/src/main/resources/hudson/logging/LogRecorder/delete_bg.properties b/core/src/main/resources/hudson/logging/LogRecorder/delete_bg.properties new file mode 100644 index 0000000000..8d3e2bf3ba --- /dev/null +++ b/core/src/main/resources/hudson/logging/LogRecorder/delete_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Are\ you\ sure\ about\ deleting\ this\ log\ recorder?=\ + \u0421\u0438\u0433\u0443\u0440\u043d\u0438 \u043b\u0438 \u0441\u0442\u0435, \u0447\u0435 \u0438\u0441\u043a\u0430\u0442\u0435 \u0434\u0430 \u043f\u0440\u0435\u043c\u0430\u0445\u043d\u0435\u0442\u0435 \u0442\u043e\u0432\u0430 \u0437\u0430\u043f\u0438\u0441\u0432\u0430\u043d\u0435 \u043d\u0430 \u0436\u0443\u0440\u043d\u0430\u043b\u0438? +Yes=\ + \u0414\u0430 diff --git a/core/src/main/resources/hudson/logging/LogRecorder/index_bg.properties b/core/src/main/resources/hudson/logging/LogRecorder/index_bg.properties new file mode 100644 index 0000000000..96ee80ccf8 --- /dev/null +++ b/core/src/main/resources/hudson/logging/LogRecorder/index_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Clear\ This\ Log=\ + \u0418\u0437\u0447\u0438\u0441\u0442\u0432\u0430\u043d\u0435 \u043d\u0430 \u0442\u043e\u0437\u0438 \u0436\u0443\u0440\u043d\u0430\u043b diff --git a/core/src/main/resources/hudson/logging/LogRecorder/sidepanel_bg.properties b/core/src/main/resources/hudson/logging/LogRecorder/sidepanel_bg.properties new file mode 100644 index 0000000000..dfa27cde7e --- /dev/null +++ b/core/src/main/resources/hudson/logging/LogRecorder/sidepanel_bg.properties @@ -0,0 +1,30 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Delete=\ + \u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043d\u0435 +Back\ to\ Loggers=\ + \u041a\u044a\u043c \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0442\u0435 +Log\ records=\ + \u0416\u0443\u0440\u043d\u0430\u043b\u043d\u0438 \u0437\u0430\u043f\u0438\u0441\u0438 +Configure=\ + \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 diff --git a/core/src/main/resources/hudson/logging/LogRecorderManager/all_bg.properties b/core/src/main/resources/hudson/logging/LogRecorderManager/all_bg.properties new file mode 100644 index 0000000000..57eb747540 --- /dev/null +++ b/core/src/main/resources/hudson/logging/LogRecorderManager/all_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Jenkins\ Log=\ + \u0416\u0443\u0440\u043d\u0430\u043b \u043d\u0430 Jenkins diff --git a/core/src/main/resources/hudson/logging/LogRecorderManager/feeds_bg.properties b/core/src/main/resources/hudson/logging/LogRecorderManager/feeds_bg.properties new file mode 100644 index 0000000000..b3eb8cbd67 --- /dev/null +++ b/core/src/main/resources/hudson/logging/LogRecorderManager/feeds_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +>\ WARNING=\ + > \u041f\u0420\u0415\u0414\u0423\u041f\u0420\u0415\u0416\u0414\u0415\u041d\u0418\u0415 +>\ SEVERE=\ + > \u041e\u041f\u0410\u0421\u041d\u041e\u0421\u0422 +All=\ + \u0412\u0441\u0438\u0447\u043a\u0438 diff --git a/core/src/main/resources/hudson/logging/LogRecorderManager/index_bg.properties b/core/src/main/resources/hudson/logging/LogRecorderManager/index_bg.properties new file mode 100644 index 0000000000..2740708946 --- /dev/null +++ b/core/src/main/resources/hudson/logging/LogRecorderManager/index_bg.properties @@ -0,0 +1,32 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Log\ Recorders=\ + \u0416\u0443\u0440\u043d\u0430\u043b\u0438 +Name=\ + \u0418\u043c\u0435 +Add\ new\ log\ recorder=\ + \u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u043d\u043e\u0432 \u0436\u0443\u0440\u043d\u0430\u043b +All\ Jenkins\ Logs=\ + \u0412\u0441\u0438\u0447\u043a\u0438 \u0436\u0443\u0440\u043d\u0430\u043b\u0438 \u043d\u0430 Jenkins +Log=\ + \u0416\u0443\u0440\u043d\u0430\u043b diff --git a/core/src/main/resources/hudson/logging/LogRecorderManager/levels_bg.properties b/core/src/main/resources/hudson/logging/LogRecorderManager/levels_bg.properties new file mode 100644 index 0000000000..1372aaaa67 --- /dev/null +++ b/core/src/main/resources/hudson/logging/LogRecorderManager/levels_bg.properties @@ -0,0 +1,40 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +# Logger with no name is the default logger. \ +# This level will be inherited by all loggers without a configured level. +defaultLoggerMsg=\ + \u0416\u0443\u0440\u043d\u0430\u043b\u044a\u0442 \u0431\u0435\u0437 \u0438\u043c\u0435 \u0435 \u043f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435. \u041d\u0435\u0433\u043e\u0432\u043e\u0442\u043e \u043d\u0438\u0432\u043e \u0441\u0435 \u043d\u0430\u0441\u043b\u0435\u0434\u044f\u0432\u0430 \u043e\u0442 \u0432\u0441\u0438\u0447\u043a\u0438\ + \u0436\u0443\u0440\u043d\u0430\u043b\u0438 \u0431\u0435\u0437 \u0438\u0437\u0440\u0438\u0447\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u043e \u043d\u0438\u0432\u043e. +Level=\ + \u041d\u0438\u0432\u043e +Submit=\ + \u0417\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435 +Logger\ Configuration=\ + \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043d\u0430 \u0436\u0443\u0440\u043d\u0430\u043b\u0430 +Adjust\ Levels=\ + \u041f\u0440\u043e\u043c\u044f\u043d\u0430 \u043d\u0430 \u043d\u0438\u0432\u0430\u0442\u0430 +Name=\ + \u0418\u043c\u0435 +# https://jenkins.io/redirect/log-levels +url=\ + https://jenkins.io/redirect/log-levels diff --git a/core/src/main/resources/hudson/logging/LogRecorderManager/new_bg.properties b/core/src/main/resources/hudson/logging/LogRecorderManager/new_bg.properties new file mode 100644 index 0000000000..0736fc63c2 --- /dev/null +++ b/core/src/main/resources/hudson/logging/LogRecorderManager/new_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Name=\ + \u0418\u043c\u0435 diff --git a/core/src/main/resources/hudson/logging/LogRecorderManager/sidepanel_bg.properties b/core/src/main/resources/hudson/logging/LogRecorderManager/sidepanel_bg.properties new file mode 100644 index 0000000000..cf4d1a5f0c --- /dev/null +++ b/core/src/main/resources/hudson/logging/LogRecorderManager/sidepanel_bg.properties @@ -0,0 +1,34 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Back\ to\ Dashboard=\ + \u041a\u044a\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u043f\u0430\u043d\u0435\u043b +Logger\ List=\ + \u0421\u043f\u0438\u0441\u044a\u043a \u0441 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0442\u0435 +Manage\ Jenkins=\ + \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 Jenkins +New\ Log\ Recorder=\ + \u041d\u043e\u0432 \u0436\u0443\u0440\u043d\u0430\u043b +All\ Logs=\ + \u0412\u0441\u0438\u0447\u043a\u0438 \u0436\u0443\u0440\u043d\u0430\u043b\u0438 +Log\ Levels=\ + \u041d\u0438\u0432\u043e \u043d\u0430 \u0436\u0443\u0440\u043d\u0430\u043b\u043d\u0438\u0442\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 diff --git a/core/src/main/resources/hudson/markup/EscapedMarkupFormatter/config_bg.properties b/core/src/main/resources/hudson/markup/EscapedMarkupFormatter/config_bg.properties new file mode 100644 index 0000000000..b5bacd470c --- /dev/null +++ b/core/src/main/resources/hudson/markup/EscapedMarkupFormatter/config_bg.properties @@ -0,0 +1,27 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# Treats all input as plain text. HTML unsafe characters like < and & are escaped to their respective character entities. +blurb=\ + \u0414\u0430 \u0441\u0435 \u043f\u0440\u0438\u0435\u043c\u0435, \u0447\u0435 \u043f\u043e\u0434\u0430\u0434\u0435\u043d\u0438\u044f\u0442 \u0442\u0435\u043a\u0441\u0442 \u0432\u0438\u043d\u0430\u0433\u0438 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0435 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d \u0442\u0435\u043a\u0441\u0442. \u0417\u043d\u0430\u0446\u0438\u0442\u0435,\ + \u043a\u043e\u0438\u0442\u043e \u043e\u0431\u044a\u0440\u043a\u0432\u0430\u0442 HTML, \u043a\u0430\u0442\u043e \u201e<\u201c \u0438 \u201e&\u201c \u0431\u0438\u0432\u0430\u0442 \u0437\u0430\u043c\u0435\u043d\u044f\u043d\u0438 \u0441\u044a\u0441 \u0441\u044a\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0430\u0449\u0438\u0442\u0435\ + \u0437\u0430\u043c\u0435\u0441\u0442\u0432\u0430\u0449\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u043d\u043e\u0441\u0442\u0438. diff --git a/core/src/main/resources/hudson/model/FileParameterDefinition/config_bg.properties b/core/src/main/resources/hudson/model/FileParameterDefinition/config_bg.properties new file mode 100644 index 0000000000..07768145c3 --- /dev/null +++ b/core/src/main/resources/hudson/model/FileParameterDefinition/config_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Description=\ + \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 +File\ location=\ + \u041c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 \u0444\u0430\u0439\u043b\u0430 diff --git a/core/src/main/resources/hudson/model/FileParameterValue/value_bg.properties b/core/src/main/resources/hudson/model/FileParameterValue/value_bg.properties new file mode 100644 index 0000000000..6a810d89a1 --- /dev/null +++ b/core/src/main/resources/hudson/model/FileParameterValue/value_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +view=\ + \u0438\u0437\u0433\u043b\u0435\u0434 diff --git a/core/src/main/resources/hudson/model/Fingerprint/index_bg.properties b/core/src/main/resources/hudson/model/Fingerprint/index_bg.properties new file mode 100644 index 0000000000..85fc773896 --- /dev/null +++ b/core/src/main/resources/hudson/model/Fingerprint/index_bg.properties @@ -0,0 +1,35 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Usage=\ + \u0423\u043f\u043e\u0442\u0440\u0435\u0431\u0430 +outside\ Jenkins=\ + \u0438\u0437\u0432\u044a\u043d Jenkins +This\ file\ has\ not\ been\ used\ anywhere\ else.=\ + \u0422\u043e\u0437\u0438 \u0444\u0430\u0439\u043b \u043d\u0435 \u0441\u0435 \u043f\u043e\u043b\u0437\u0432\u0430 \u043d\u0438\u043a\u044a\u0434\u0435 \u0434\u0440\u0443\u0433\u0430\u0434\u0435. +# Introduced {0} ago +introduced=\ + \u0412\u044a\u0432\u0435\u0434\u0435\u043d\u043e \u043f\u0440\u0435\u0434\u0438 {0} +This\ file\ has\ been\ used\ in\ the\ following\ places=\ + \u0422\u043e\u0437\u0438 \u0444\u0430\u0439\u043b \u0441\u0435 \u043f\u043e\u043b\u0437\u0432\u0430 \u043d\u0430 \u0441\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u043c\u0435\u0441\u0442\u0430. +Back\ to\ Dashboard=\ + \u041a\u044a\u043c \u0442\u0430\u0431\u043b\u043e\u0442\u043e \u0437\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 diff --git a/core/src/main/resources/hudson/model/JDK/config_bg.properties b/core/src/main/resources/hudson/model/JDK/config_bg.properties new file mode 100644 index 0000000000..0736fc63c2 --- /dev/null +++ b/core/src/main/resources/hudson/model/JDK/config_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Name=\ + \u0418\u043c\u0435 diff --git a/core/src/main/resources/hudson/model/Label/index_bg.properties b/core/src/main/resources/hudson/model/Label/index_bg.properties new file mode 100644 index 0000000000..249ee5929e --- /dev/null +++ b/core/src/main/resources/hudson/model/Label/index_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Nodes=\ + \u041c\u0430\u0448\u0438\u043d\u0438 +Projects=\ + \u041f\u0440\u043e\u0435\u043a\u0442\u0438 +None=\ + \u041d\u044f\u043c\u0430 diff --git a/core/src/main/resources/hudson/model/Label/sidepanel_bg.properties b/core/src/main/resources/hudson/model/Label/sidepanel_bg.properties new file mode 100644 index 0000000000..bbbb60523d --- /dev/null +++ b/core/src/main/resources/hudson/model/Label/sidepanel_bg.properties @@ -0,0 +1,30 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Configure=\ + \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 +Overview=\ + \u041f\u0440\u0435\u0433\u043b\u0435\u0434 +Load\ Statistics=\ + \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u0442 +Back\ to\ Dashboard=\ + \u041a\u044a\u043c \u0442\u0430\u0431\u043b\u043e\u0442\u043e \u0437\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 diff --git a/core/src/main/resources/hudson/model/ListView/configure-entries_bg.properties b/core/src/main/resources/hudson/model/ListView/configure-entries_bg.properties new file mode 100644 index 0000000000..151467b9f6 --- /dev/null +++ b/core/src/main/resources/hudson/model/ListView/configure-entries_bg.properties @@ -0,0 +1,46 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Enabled\ jobs\ only=\ + \u0421\u0430\u043c\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0442\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f +Status\ Filter=\ + \u0424\u0438\u043b\u0442\u044a\u0440 \u043f\u043e \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u0442\u043e +Add\ column=\ + \u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u043a\u043e\u043b\u043e\u043d\u0430 +Regular\ expression=\ + \u0420\u0435\u0433\u0443\u043b\u044f\u0440\u0435\u043d \u0438\u0437\u0440\u0430\u0437 +Disabled\ jobs\ only=\ + \u0421\u0430\u043c\u043e \u0438\u0437\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0442\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f +Use\ a\ regular\ expression\ to\ include\ jobs\ into\ the\ view=\ + \u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u0435\u043d \u0438\u0437\u0440\u0430\u0437 \u0437\u0430 \u0434\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043a\u044a\u043c \u0438\u0437\u0433\u043b\u0435\u0434\u0430 +Add\ Job\ Filter=\ + \u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0444\u0438\u043b\u0442\u044a\u0440 \u043f\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u0442\u0430 +Job\ Filters=\ + \u0424\u0438\u043b\u0442\u0440\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u0442\u0430 +All\ selected\ jobs=\ + \u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0438\u0437\u0431\u0440\u0430\u043d\u0438\u0442\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f +Columns=\ + \u041a\u043e\u043b\u043e\u043d\u0438 +Recurse\ in\ subfolders=\ + \u0422\u044a\u0440\u0441\u0435\u043d\u0435 \u0432\u044a\u0432 \u0432\u0441\u0438\u0447\u043a\u0438 \u043f\u043e\u0434\u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 +Jobs=\ + \u0417\u0430\u0434\u0430\u043d\u0438\u044f diff --git a/core/src/main/resources/hudson/model/ListView/newJobButtonBar_bg.properties b/core/src/main/resources/hudson/model/ListView/newJobButtonBar_bg.properties new file mode 100644 index 0000000000..9df22d3d0d --- /dev/null +++ b/core/src/main/resources/hudson/model/ListView/newJobButtonBar_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +Add\ to\ current\ view=\ + \u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043a\u044a\u043c \u0442\u0435\u043a\u0443\u0449\u0438\u044f \u0438\u0437\u0433\u043b\u0435\u0434 diff --git a/core/src/main/resources/hudson/model/ListView/newViewDetail_bg.properties b/core/src/main/resources/hudson/model/ListView/newViewDetail_bg.properties new file mode 100644 index 0000000000..4db2531bb9 --- /dev/null +++ b/core/src/main/resources/hudson/model/ListView/newViewDetail_bg.properties @@ -0,0 +1,27 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# \ +# Shows items in a simple list format. You can choose which jobs are to be displayed in which view. +blurb=\ + \u0418\u0437\u0432\u0435\u0436\u0434\u0430\u043d\u0435 \u043d\u0430 \u043e\u0431\u0435\u043a\u0442\u0438\u0442\u0435 \u043a\u0430\u0442\u043e \u0441\u043f\u0438\u0441\u044a\u043a. \u0412\u0438\u0435 \u0440\u0435\u0448\u0430\u0432\u0430\u0442\u0435 \u043a\u043e\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043a\u043e\u0438 \u0438\u0437\u0433\u043b\u0435\u0434\u0438 \u0434\u0430\ + \u0441\u0435 \u043f\u043e\u043a\u0430\u0437\u0432\u0430\u0442. diff --git a/core/src/main/resources/hudson/model/Messages_bg.properties b/core/src/main/resources/hudson/model/Messages_bg.properties index dc4ad6d81c..34260ce072 100644 --- a/core/src/main/resources/hudson/model/Messages_bg.properties +++ b/core/src/main/resources/hudson/model/Messages_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -165,7 +165,7 @@ FreeStyleProject.Description=\ \u0422\u043e\u0432\u0430 \u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442 \u0432 Jenkins. Jenkins \u043c\u043e\u0436\u0435 \u0434\u0430 \u0438\u0437\u0433\u0440\u0430\u0434\u0438 \u043f\u0440\u043e\u0435\u043a\u0442 \u043a\u0430\u0442\u043e\ \u043a\u043e\u043c\u0431\u0438\u043d\u0438\u0440\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0437\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u0438\u0442\u0435 \u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0437\u0430\ \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442. \u0422\u043e\u0432\u0430 \u0432\u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u0434\u0430 \u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 Jenkins \u0438 \u0437\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u043e\u0442\ - \u043e\u0441\u0442\u043d\u043e\u0432\u043d\u0430\u0442\u0430 \u043c\u0443 \u0446\u0435\u043b\u0438. + \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u0442\u0430 \u043c\u0443 \u0446\u0435\u043b\u0438. Hudson.BadPortNumber=\ @@ -368,8 +368,8 @@ Slave.Remote.Director.Mandatory=\ \u041e\u0442\u0434\u0430\u043b\u0435\u0447\u0435\u043d\u0430\u0442\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u0435 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u043d\u0430. Slave.Remote.Relative.Path.Warning=\ \u0421\u0438\u0433\u0443\u0440\u043d\u0438 \u043b\u0438 \u0441\u0442\u0435, \u0447\u0435 \u0438\u0441\u043a\u0430\u0442\u0435 \u0441\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u0435\u043d \u043f\u044a\u0442 \u043a\u0430\u0442\u043e \u043a\u043e\u0440\u0435\u043d\u043e\u0432\u0430\ - \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f? \u041f\u0440\u043e\u0432\u0435\u0440\u0435\u0442\u0435 \u0434\u0430\u043b\u0438 \u0438\u0437\u0431\u0440\u0430\u043d\u0438\u044f\u0442 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0449 \u043f\u0440\u043e\u0446\u0435\u0441 \u043e\u0441\u0438\u0433\u0443\u0440\u044f\u0432\u0430 \u043a\u043e\u043d\u0441\u0438\u0441\u0442\u0435\u043d\u0442\u043d\u043e\u0441\u0442\ - \u043d\u0430 \u0442\u0435\u043a\u0443\u0449\u0430\u0442\u0430 \u0440\u0430\u0431\u043e\u0442\u043d\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f. \u041f\u0440\u0435\u043f\u043e\u0440\u044a\u0447\u0438\u0442\u0435\u043b\u043d\u043e \u0435 \u0434\u0430 \u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u0435\u043d \u043f\u044a\u0442. + \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f? \u041f\u0440\u043e\u0432\u0435\u0440\u0435\u0442\u0435 \u0434\u0430\u043b\u0438 \u0438\u0437\u0431\u0440\u0430\u043d\u0438\u044f\u0442 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0449 \u043f\u0440\u043e\u0446\u0435\u0441 \u043d\u0435 \u0437\u0430\u043c\u044a\u0440\u0441\u044f\u0432\u0430 \u043d\u0430 \u0442\u0435\u043a\u0443\u0449\u0430\u0442\u0430\ + \u0440\u0430\u0431\u043e\u0442\u043d\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f. \u041f\u0440\u0435\u043f\u043e\u0440\u044a\u0447\u0438\u0442\u0435\u043b\u043d\u043e \u0435 \u0434\u0430 \u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u0435\u043d \u043f\u044a\u0442. TopLevelItemDescriptor.NotApplicableIn=\ {0} \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u043d\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0441\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0430\u0442 \u0432 {1} @@ -703,3 +703,30 @@ AbstractProject.PollingVetoed=\ # No Parameters are specified for this parameterized build Hudson.NoParamsSpecified=\ \u041b\u0438\u043f\u0441\u0432\u0430\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438 \u0437\u0430 \u0442\u043e\u0432\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438\u0437\u0438\u0440\u0430\u043d\u043e \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435. +# Update Center +UpdateCenter.DisplayName=\ + \u0426\u0435\u043d\u0442\u044a\u0440 \u0437\u0430 \u043e\u0431\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435 +# The display name, "{0}", is already in use by another view and \ +# could cause confusion and delay. +View.DisplayNameNotUniqueWarning=\ + \u0418\u043c\u0435\u0442\u043e \u201e{0}\u201c \u0432\u0435\u0447\u0435 \u0441\u0435 \u043f\u043e\u043b\u0437\u0432\u0430 \u043e\u0442 \u0434\u0440\u0443\u0433 \u0438\u0437\u0433\u043b\u0435\u0434, \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u0430\u0442\u0430 \u0443\u043f\u043e\u0442\u0440\u0435\u0431\u0430 \u0449\u0435 \u0435 \u043e\u0431\u044a\u0440\u043a\u0432\u0430\u0449\u0430. +# Executor slot already in use +Queue.executor_slot_already_in_use= +# Failed to interrupt and stop {0,choice,1#{0,number,integer} build|1<{0,number,integer} \ +# builds} of {1} +AbstractItem.FailureToStopBuilds=\ + \u041d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043f\u0440\u0435\u043a\u044a\u0441\u0432\u0430\u043d\u0435 \u0438 \u0441\u043f\u0438\u0440\u0430\u043d\u0435 \u043d\u0430\ + {0,choice,1#{0,number,integer} \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435|1<{0,number,integer} \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0438\u044f}\ + \u043d\u0430 \u201e{1}\u201c. +# Jenkins Update Notification +UpdateCenter.CoreUpdateMonitor.DisplayName=\ + \u0418\u0437\u0432\u0435\u0441\u0442\u0438\u0435 \u0437\u0430 \u043e\u0431\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 Jenkins +# Build +AbstractItem.TaskNoun=\ + \u0418\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 +# {0} is currently being deleted +AbstractItem.BeingDeleted=\ + \u201e{0}\u201c \u0432 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0441\u0435 \u0438\u0437\u0442\u0440\u0438\u0432\u0430 +# {0} has been removed from configuration +Queue.node_has_been_removed_from_configuration=\ + \u201e{0}\u201c \u0435 \u0438\u0437\u0442\u0440\u0438\u0442 \u043e\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u0442\u0435 diff --git a/core/src/main/resources/hudson/model/MyView/newViewDetail_bg.properties b/core/src/main/resources/hudson/model/MyView/newViewDetail_bg.properties new file mode 100644 index 0000000000..5cbef8173a --- /dev/null +++ b/core/src/main/resources/hudson/model/MyView/newViewDetail_bg.properties @@ -0,0 +1,27 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# \ +# This view automatically displays all the jobs that the current user has an access to. +blurb=\ + \u0422\u043e\u0437\u0438 \u0438\u0437\u0433\u043b\u0435\u0434 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u043f\u043e\u043a\u0430\u0437\u0432\u0430 \u0432\u0441\u0438\u0447\u043a\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f, \u0434\u043e \u043a\u043e\u0438\u0442\u043e \u0442\u0435\u043a\u0443\u0449\u0438\u044f\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\ + \u0438\u043c\u0430 \u0434\u043e\u0441\u0442\u044a\u043f. diff --git a/core/src/main/resources/hudson/model/MyView/noJob_bg.properties b/core/src/main/resources/hudson/model/MyView/noJob_bg.properties new file mode 100644 index 0000000000..5040f89100 --- /dev/null +++ b/core/src/main/resources/hudson/model/MyView/noJob_bg.properties @@ -0,0 +1,25 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# This view has no jobs. +blurb=\ + \u0412 \u0442\u043e\u0437\u0438 \u0438\u0437\u0433\u043b\u0435\u0434 \u043d\u044f\u043c\u0430 \u0437\u0430\u0434\u0430\u043d\u0438\u044f. diff --git a/core/src/main/resources/hudson/model/MyViewsProperty/config_bg.properties b/core/src/main/resources/hudson/model/MyViewsProperty/config_bg.properties new file mode 100644 index 0000000000..fdd4de2794 --- /dev/null +++ b/core/src/main/resources/hudson/model/MyViewsProperty/config_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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=\ + \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0435\u043d \u0438\u0437\u0433\u043b\u0435\u0434 +# The view selected by default when navigating to the users' private views +description=\ + \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0438\u044f\u0442 \u0438\u0437\u0433\u043b\u0435\u0434, \u043a\u043e\u0439\u0442\u043e \u0441\u0435 \u043f\u043e\u044f\u0432\u044f\u0432\u0430 \u043f\u0440\u0438 \u043f\u0440\u0435\u043c\u0438\u043d\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043b\u0438\u0447\u043d\u0438\u0442\u0435 \u0438\u0437\u0433\u043b\u0435\u0434\u0438 \u043d\u0430\ + \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0438\u0442\u0435. diff --git a/core/src/main/resources/hudson/model/MyViewsProperty/newView_bg.properties b/core/src/main/resources/hudson/model/MyViewsProperty/newView_bg.properties new file mode 100644 index 0000000000..07cb7f5572 --- /dev/null +++ b/core/src/main/resources/hudson/model/MyViewsProperty/newView_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +View\ name=\ + \u0418\u043c\u0435 \u043d\u0430 \u0438\u0437\u0433\u043b\u0435\u0434\u0430 diff --git a/core/src/main/resources/hudson/model/NoFingerprintMatch/index_bg.properties b/core/src/main/resources/hudson/model/NoFingerprintMatch/index_bg.properties new file mode 100644 index 0000000000..b0593f3c6e --- /dev/null +++ b/core/src/main/resources/hudson/model/NoFingerprintMatch/index_bg.properties @@ -0,0 +1,41 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# The fingerprint {0} did not match any of the recorded data. +description=\ + \u0426\u0438\u0444\u0440\u043e\u0432\u0438\u044f\u0442 \u043e\u0442\u043f\u0435\u0447\u0430\u0442\u044a\u043a \u201e{0}\u201c \u043d\u0435 \u0441\u044a\u0432\u043f\u0430\u0434\u0430 \u0441 \u043d\u0438\u043a\u043e\u0439 \u043e\u0442 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u0438\u0442\u0435. +# \ +# Perhaps the projects are not set up correctly and not recording \ +# fingerprints. Check the project setting. +cause.2=\ + \u0412\u044a\u0437\u043c\u043e\u0436\u043d\u043e \u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0442\u0435 \u0434\u0430 \u043d\u0435 \u0441\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u043d\u043e \u0438 \u0434\u0430 \u043d\u0435 \u0437\u0430\u043f\u0430\u0437\u0432\u0430\u0442\ + \u043e\u0442\u043f\u0435\u0447\u0430\u0442\u044a\u0446\u0438\u0442\u0435. \u041f\u0440\u043e\u0432\u0435\u0440\u0435\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u0442\u0435. +Back\ to\ Dashboard=\ + \u041a\u044a\u043c \u0442\u0430\u0431\u043b\u043e\u0442\u043e \u0437\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 +# \ +# Perhaps the file was not created under Jenkins. \ +# Maybe it\u2019s a version that someone built locally on his/her own machine. +cause.1=\ + \u0412\u044a\u0437\u043c\u043e\u0436\u043d\u043e \u0435 \u0444\u0430\u0439\u043b\u044a\u0442 \u0434\u0430 \u043d\u0435 \u0435 \u0441\u044a\u0437\u0434\u0430\u0434\u0435\u043d \u043e\u0442 Jenkins, \u0430 \u0434\u0430 \u0435 \u0432\u0435\u0440\u0441\u0438\u044f, \u0438\u0437\u0433\u0440\u0430\u0434\u0435\u043d\u0430 \u043e\u0442\ + \u043d\u044f\u043a\u043e\u0439 \u043e\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u0446\u0438\u0442\u0435 \u043d\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u0430\u0442\u0430 \u043c\u0443 \u043c\u0430\u0448\u0438\u043d\u0430. +No\ matching\ record\ found=\ + \u041d\u044f\u043c\u0430 \u0442\u0430\u043a\u0438\u0432\u0430 \u0437\u0430\u043f\u0438\u0441\u0438. diff --git a/core/src/main/resources/hudson/model/ParametersAction/index_bg.properties b/core/src/main/resources/hudson/model/ParametersAction/index_bg.properties new file mode 100644 index 0000000000..c423c2cdbd --- /dev/null +++ b/core/src/main/resources/hudson/model/ParametersAction/index_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Build=\ + \u0418\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 +Parameters=\ + \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438 diff --git a/core/src/main/resources/hudson/model/ParametersDefinitionProperty/index_bg.properties b/core/src/main/resources/hudson/model/ParametersDefinitionProperty/index_bg.properties new file mode 100644 index 0000000000..9b3bee5571 --- /dev/null +++ b/core/src/main/resources/hudson/model/ParametersDefinitionProperty/index_bg.properties @@ -0,0 +1,29 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# This build requires parameters: +description=\ + \u0422\u043e\u0432\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 \u0438\u0437\u0438\u0441\u043a\u0432\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438: +Build=\ + \u0418\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 +LOADING=\ + \u0417\u0410\u0420\u0415\u0416\u0414\u0410\u041d\u0415 diff --git a/core/src/main/resources/hudson/model/PasswordParameterDefinition/config_bg.properties b/core/src/main/resources/hudson/model/PasswordParameterDefinition/config_bg.properties new file mode 100644 index 0000000000..7e7c8cd6bd --- /dev/null +++ b/core/src/main/resources/hudson/model/PasswordParameterDefinition/config_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Name=\ + \u0418\u043c\u0435 +Default\ Value=\ + \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442 +Description=\ + \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 diff --git a/core/src/main/resources/hudson/model/ProxyView/configure-entries_bg.properties b/core/src/main/resources/hudson/model/ProxyView/configure-entries_bg.properties new file mode 100644 index 0000000000..75c838566c --- /dev/null +++ b/core/src/main/resources/hudson/model/ProxyView/configure-entries_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +The\ name\ of\ a\ global\ view\ that\ will\ be\ shown.=\ + \u0418\u043c\u0435\u0442\u043e \u043d\u0430 \u0433\u043b\u043e\u0431\u0430\u043b\u043d\u0438\u044f \u0438\u0437\u0433\u043b\u0435\u0434, \u043a\u043e\u0439\u0442\u043e \u0449\u0435 \u0431\u044a\u0434\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d. +View\ name=\ + \u0418\u043c\u0435 \u043d\u0430 \u0438\u0437\u0433\u043b\u0435\u0434 diff --git a/core/src/main/resources/hudson/model/ProxyView/newViewDetail_bg.properties b/core/src/main/resources/hudson/model/ProxyView/newViewDetail_bg.properties new file mode 100644 index 0000000000..68848fe8ab --- /dev/null +++ b/core/src/main/resources/hudson/model/ProxyView/newViewDetail_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Shows\ the\ content\ of\ a\ global\ view.=\ + \u0418\u0437\u0432\u0435\u0436\u0434\u0430\u043d\u0435 \u043d\u0430 \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u0433\u043b\u043e\u0431\u0430\u043b\u0435\u043d \u0438\u0437\u0433\u043b\u0435\u0434. diff --git a/core/src/main/resources/hudson/model/RunParameterDefinition/config_bg.properties b/core/src/main/resources/hudson/model/RunParameterDefinition/config_bg.properties new file mode 100644 index 0000000000..4986260823 --- /dev/null +++ b/core/src/main/resources/hudson/model/RunParameterDefinition/config_bg.properties @@ -0,0 +1,38 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Name=\ + \u0418\u043c\u0435 +Successful\ Builds\ Only=\ + \u0421\u0430\u043c\u043e \u0443\u0441\u043f\u0435\u0448\u043d\u0438\u0442\u0435 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0438\u044f +Filter=\ + \u0424\u0438\u043b\u0442\u0440\u0438\u0440\u0430\u043d\u0435 +Stable\ Builds\ Only=\ + \u0421\u0430\u043c\u043e \u0441\u0442\u0430\u0431\u0438\u043b\u043d\u0438\u0442\u0435 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0438\u044f +Description=\ + \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 +All\ Builds=\ + \u0412\u0441\u0438\u0447\u043a\u0438 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0438\u044f +Completed\ Builds\ Only=\ + \u0421\u0430\u043c\u043e \u0437\u0430\u0432\u044a\u0440\u0448\u0438\u043b\u0438\u0442\u0435 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0438\u044f +Project=\ + \u041f\u0440\u043e\u0435\u043a\u0442 diff --git a/core/src/main/resources/hudson/model/Slave/help-launcher_bg.properties b/core/src/main/resources/hudson/model/Slave/help-launcher_bg.properties new file mode 100644 index 0000000000..72d83f2ea1 --- /dev/null +++ b/core/src/main/resources/hudson/model/Slave/help-launcher_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Controls\ how\ Jenkins\ starts\ this\ agent.=\ + \u041a\u0430\u043a Jenkins \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430 \u0442\u043e\u0437\u0438 \u0430\u0433\u0435\u043d\u0442. diff --git a/core/src/main/resources/hudson/model/StringParameterDefinition/config_bg.properties b/core/src/main/resources/hudson/model/StringParameterDefinition/config_bg.properties new file mode 100644 index 0000000000..6f20bc648a --- /dev/null +++ b/core/src/main/resources/hudson/model/StringParameterDefinition/config_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Description=\ + \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 +Name=\ + \u0418\u043c\u0435 +Default\ Value=\ + \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442 diff --git a/core/src/main/resources/hudson/model/TaskAction/log_bg.properties b/core/src/main/resources/hudson/model/TaskAction/log_bg.properties new file mode 100644 index 0000000000..3fff418665 --- /dev/null +++ b/core/src/main/resources/hudson/model/TaskAction/log_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Clear\ error\ to\ retry=\ + \u0418\u0437\u0447\u0438\u0441\u0442\u0432\u0430\u043d\u0435 \u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0430\u0442\u0430 \u0437\u0430 \u043d\u043e\u0432 \u043e\u043f\u0438\u0442 diff --git a/core/src/main/resources/hudson/model/TextParameterDefinition/config_bg.properties b/core/src/main/resources/hudson/model/TextParameterDefinition/config_bg.properties new file mode 100644 index 0000000000..a961f4e69a --- /dev/null +++ b/core/src/main/resources/hudson/model/TextParameterDefinition/config_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Description=\ + \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 +Default\ Value=\ + \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430 \u0441\u0442\u043e\u0439\u043d\u043e\u0441\u0442 +Name=\ + \u0418\u043c\u0435 diff --git a/core/src/main/resources/hudson/model/TreeView/sidepanel2_bg.properties b/core/src/main/resources/hudson/model/TreeView/sidepanel2_bg.properties new file mode 100644 index 0000000000..6c612eb9e6 --- /dev/null +++ b/core/src/main/resources/hudson/model/TreeView/sidepanel2_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +New\ View=\ + \u041d\u043e\u0432 \u0438\u0437\u0433\u043b\u0435\u0434 diff --git a/core/src/main/resources/hudson/model/UpdateCenter/ConnectionCheckJob/row_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/ConnectionCheckJob/row_bg.properties index adee465bca..8cb1375a9d 100644 --- a/core/src/main/resources/hudson/model/UpdateCenter/ConnectionCheckJob/row_bg.properties +++ b/core/src/main/resources/hudson/model/UpdateCenter/ConnectionCheckJob/row_bg.properties @@ -20,4 +20,5 @@ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN # THE SOFTWARE. -Preparation=\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 +Preparation=\ + \u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 diff --git a/core/src/main/resources/hudson/model/UpdateCenter/CoreUpdateMonitor/message_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/CoreUpdateMonitor/message_bg.properties new file mode 100644 index 0000000000..fe4ef9b629 --- /dev/null +++ b/core/src/main/resources/hudson/model/UpdateCenter/CoreUpdateMonitor/message_bg.properties @@ -0,0 +1,36 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +UpgradeProgress=\ + \u0415\u0442\u0430\u043f \u043d\u0430 \u043e\u0431\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435 +Retry=\ + \u041d\u043e\u0432 \u043e\u043f\u0438\u0442 +UpgradeComplete=\ + \u041e\u0431\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435\u0442\u043e \u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e +UpgradeFailed=\ + \u041e\u0431\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435\u0442\u043e \u0435 \u043d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e +NewVersionAvailable=\ + \u0418\u043c\u0430 \u043d\u043e\u0432\u0430 \u0432\u0435\u0440\u0441\u0438\u044f +Or\ Upgrade\ Automatically=\ + \u0418\u043b\u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u043e\u0431\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435 +UpgradeCompleteRestartNotSupported=\ + \u041e\u0431\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435\u0442\u043e \u0437\u0430\u0432\u044a\u0440\u0448\u0438, \u043d\u043e \u043d\u0435 \u0441\u0435 \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 diff --git a/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Failure/status_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Failure/status_bg.properties new file mode 100644 index 0000000000..6ce533acfd --- /dev/null +++ b/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Failure/status_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Details=\ + \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 +Failure=\ + \u041d\u0435\u0443\u0441\u043f\u0435\u0445 diff --git a/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Installing/status_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Installing/status_bg.properties new file mode 100644 index 0000000000..39ae07a9e7 --- /dev/null +++ b/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Installing/status_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Installing=\ + \u0418\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043d\u0435 diff --git a/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Pending/status_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Pending/status_bg.properties new file mode 100644 index 0000000000..3288cf4164 --- /dev/null +++ b/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Pending/status_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Pending=\ + \u041f\u0440\u0435\u0434\u0441\u0442\u043e\u0438 diff --git a/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Skipped/status_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Skipped/status_bg.properties new file mode 100644 index 0000000000..26970e7876 --- /dev/null +++ b/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Skipped/status_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +Skipped=\ + \u041f\u0440\u0435\u0441\u043a\u043e\u0447\u0435\u043d\u043e diff --git a/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Success/status_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Success/status_bg.properties new file mode 100644 index 0000000000..df2d213006 --- /dev/null +++ b/core/src/main/resources/hudson/model/UpdateCenter/DownloadJob/Success/status_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Success=\ + \u0423\u0441\u043f\u0435\u0445 diff --git a/core/src/main/resources/hudson/model/UpdateCenter/EnableJob/row_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/EnableJob/row_bg.properties new file mode 100644 index 0000000000..8cd15938d7 --- /dev/null +++ b/core/src/main/resources/hudson/model/UpdateCenter/EnableJob/row_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Enabled\ Dependency=\ + \u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442 diff --git a/core/src/main/resources/hudson/model/UpdateCenter/NoOpJob/row_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/NoOpJob/row_bg.properties new file mode 100644 index 0000000000..00533baa3d --- /dev/null +++ b/core/src/main/resources/hudson/model/UpdateCenter/NoOpJob/row_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Already\ Installed=\ + \u0412\u0435\u0447\u0435 \u0438\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043d\u043e diff --git a/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Canceled/status_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Canceled/status_bg.properties new file mode 100644 index 0000000000..04691a952e --- /dev/null +++ b/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Canceled/status_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Canceled=\ + \u041e\u0442\u043c\u0435\u043d\u0435\u043d\u043e diff --git a/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Failure/status_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Failure/status_bg.properties new file mode 100644 index 0000000000..3e609f7aad --- /dev/null +++ b/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Failure/status_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Failure=\ + \u041d\u0435\u0443\u0441\u043f\u0435\u0445 diff --git a/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Pending/status_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Pending/status_bg.properties new file mode 100644 index 0000000000..3288cf4164 --- /dev/null +++ b/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Pending/status_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Pending=\ + \u041f\u0440\u0435\u0434\u0441\u0442\u043e\u0438 diff --git a/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Running/status_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Running/status_bg.properties new file mode 100644 index 0000000000..648d63853a --- /dev/null +++ b/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/Running/status_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Running=\ + \u0418\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 \u0441\u0435 diff --git a/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/row_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/row_bg.properties new file mode 100644 index 0000000000..3f646f192c --- /dev/null +++ b/core/src/main/resources/hudson/model/UpdateCenter/RestartJenkinsJob/row_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Restarting\ Jenkins=\ + \u0420\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 Jenkins diff --git a/core/src/main/resources/hudson/model/UpdateCenter/body_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/body_bg.properties index 8f9a6ef638..6f33842528 100644 --- a/core/src/main/resources/hudson/model/UpdateCenter/body_bg.properties +++ b/core/src/main/resources/hudson/model/UpdateCenter/body_bg.properties @@ -20,6 +20,9 @@ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN # THE SOFTWARE. -Go\ back\ to\ the\ top\ page=\u041e\u0431\u0440\u0430\u0442\u043d\u043e \u043a\u044a\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u0442\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 -warning=\u0420\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0439\u0442\u0435 Jenkins, \u043a\u043e\u0433\u0430\u0442\u043e \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f\u0442\u0430 \u043f\u0440\u0438\u043a\u043b\u044e\u0447\u0438 \u0438 \u043d\u044f\u043c\u0430 \u0430\u043a\u0442\u0438\u0432\u043d\u0438 \u0437\u0430\u0434\u0430\u0447\u0438 -you\ can\ start\ using\ the\ installed\ plugins\ right\ away=\u043c\u043e\u0436\u0435\u0442\u0435 \u0434\u0430 \u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0438\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043d\u0438\u0442\u0435 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0438 \u0441\u0435\u0433\u0430 +Go\ back\ to\ the\ top\ page=\ + \u041a\u044a\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u0442\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 +warning=\ + \u0420\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0439\u0442\u0435 Jenkins, \u043a\u043e\u0433\u0430\u0442\u043e \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f\u0442\u0430 \u043f\u0440\u0438\u043a\u043b\u044e\u0447\u0438 \u0438 \u043d\u044f\u043c\u0430 \u0430\u043a\u0442\u0438\u0432\u043d\u0438 \u0437\u0430\u0434\u0430\u0447\u0438 +you\ can\ start\ using\ the\ installed\ plugins\ right\ away=\ + \u043c\u043e\u0436\u0435\u0442\u0435 \u0434\u0430 \u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0438\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043d\u0438\u0442\u0435 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0438 \u0441\u0435\u0433\u0430 diff --git a/core/src/main/resources/hudson/model/UpdateCenter/sidepanel_bg.properties b/core/src/main/resources/hudson/model/UpdateCenter/sidepanel_bg.properties index 302e18f26a..1505afe969 100644 --- a/core/src/main/resources/hudson/model/UpdateCenter/sidepanel_bg.properties +++ b/core/src/main/resources/hudson/model/UpdateCenter/sidepanel_bg.properties @@ -20,6 +20,9 @@ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN # THE SOFTWARE. -Back\ to\ Dashboard=\u041e\u0431\u0440\u0430\u0442\u043d\u043e \u043a\u044a\u043c \u041d\u0430\u0447\u0430\u043b\u0435\u043d \u0435\u043a\u0440\u0430\u043d -Manage\ Jenkins=\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 Jenkins -Manage\ Plugins=\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u043b\u044a\u0433\u0438\u043d\u0438 +Back\ to\ Dashboard=\ + \u041a\u044a\u043c \u0442\u0430\u0431\u043b\u043e\u0442\u043e \u0437\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 +Manage\ Jenkins=\ + \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 Jenkins +Manage\ Plugins=\ + \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0438 diff --git a/core/src/main/resources/hudson/model/View/configure_bg.properties b/core/src/main/resources/hudson/model/View/configure_bg.properties new file mode 100644 index 0000000000..4467f1c728 --- /dev/null +++ b/core/src/main/resources/hudson/model/View/configure_bg.properties @@ -0,0 +1,36 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +Filter\ build\ queue=\ + \u0424\u0438\u043b\u0442\u0440\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u043e\u043f\u0430\u0448\u043a\u0430\u0442\u0430 \u0441 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0438\u044f +Name=\ + \u0418\u043c\u0435 +OK=\ + \u0414\u043e\u0431\u0440\u0435 +Edit\ View=\ + \u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0438\u0437\u0433\u043b\u0435\u0434\u0430 +Filter\ build\ executors=\ + \u0424\u0438\u043b\u0442\u0440\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u0449\u0438\u0442\u0435 \u043c\u0430\u0448\u0438\u043d\u0438 +Description=\ + \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 +Apply=\ + \u041f\u0440\u0438\u043b\u0430\u0433\u0430\u043d\u0435 diff --git a/core/src/main/resources/hudson/model/View/delete_bg.properties b/core/src/main/resources/hudson/model/View/delete_bg.properties new file mode 100644 index 0000000000..81f5d0e4a8 --- /dev/null +++ b/core/src/main/resources/hudson/model/View/delete_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Yes=\ + \u0414\u0430 +Are\ you\ sure\ about\ deleting\ the\ view?=\ + \u0421\u0438\u0433\u0443\u0440\u043d\u0438 \u043b\u0438 \u0441\u0442\u0435, \u0447\u0435 \u0438\u0441\u043a\u0430\u0442\u0435 \u0434\u0430 \u0438\u0437\u0442\u0440\u0438\u0435\u0442\u0435 \u0438\u0437\u0433\u043b\u0435\u0434\u0430? diff --git a/core/src/main/resources/hudson/model/View/index_bg.properties b/core/src/main/resources/hudson/model/View/index_bg.properties new file mode 100644 index 0000000000..5b949939d4 --- /dev/null +++ b/core/src/main/resources/hudson/model/View/index_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Dashboard=\ + \u0422\u0430\u0431\u043b\u043e \u0437\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 diff --git a/core/src/main/resources/hudson/model/View/noJob_bg.properties b/core/src/main/resources/hudson/model/View/noJob_bg.properties new file mode 100644 index 0000000000..4b517fa907 --- /dev/null +++ b/core/src/main/resources/hudson/model/View/noJob_bg.properties @@ -0,0 +1,29 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# You can either add some existing jobs to this view or create a new job in this view. +description_2=\ + \u0418\u043b\u0438 \u0434\u043e\u0431\u0430\u0432\u0435\u0442\u0435 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f, \u0438\u043b\u0438\ + \u0441\u044a\u0437\u0434\u0430\u0439\u0442\u0435 \u043d\u043e\u0432\u0438 \u0432 \u043d\u0435\u0433\u043e. +# This view has no jobs associated with it. +description_1=\ + \u0412 \u0442\u043e\u0437\u0438 \u0438\u0437\u0433\u043b\u0435\u0434 \u043d\u044f\u043c\u0430 \u0437\u0430\u0434\u0430\u043d\u0438\u044f. diff --git a/core/src/main/resources/hudson/model/labels/LabelAtom/configure_bg.properties b/core/src/main/resources/hudson/model/labels/LabelAtom/configure_bg.properties new file mode 100644 index 0000000000..43651eccbf --- /dev/null +++ b/core/src/main/resources/hudson/model/labels/LabelAtom/configure_bg.properties @@ -0,0 +1,31 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# {0} Config +title=\ + \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043d\u0430 \u201e{0}\u201c +Name=\ + \u0418\u043c\u0435 +Description=\ + \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 +Save=\ + \u0417\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435 diff --git a/core/src/main/resources/hudson/node_monitors/AbstractDiskSpaceMonitor/config_bg.properties b/core/src/main/resources/hudson/node_monitors/AbstractDiskSpaceMonitor/config_bg.properties new file mode 100644 index 0000000000..083431c4e6 --- /dev/null +++ b/core/src/main/resources/hudson/node_monitors/AbstractDiskSpaceMonitor/config_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Free\ Space\ Threshold=\ + \u041f\u0440\u0430\u0433 \u0437\u0430 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e diff --git a/core/src/main/resources/hudson/node_monitors/Messages_bg.properties b/core/src/main/resources/hudson/node_monitors/Messages_bg.properties index 6ecaba258b..78615260d9 100644 --- a/core/src/main/resources/hudson/node_monitors/Messages_bg.properties +++ b/core/src/main/resources/hudson/node_monitors/Messages_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -44,3 +44,6 @@ AbstractNodeMonitorDescriptor.NoDataYet=\ \u041d\u044f\u043c\u0430 \u0434\u0430\u043d\u043d\u0438 DiskSpaceMonitorDescriptor.DiskSpace.FreeSpaceTooLow=\ \u0414\u0438\u0441\u043a\u043e\u0432\u043e\u0442\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e \u043f\u0440\u0438\u0432\u044a\u0440\u0448\u0432\u0430. \u041d\u0430 {1} \u043e\u0441\u0442\u0430\u0432\u0430\u0442 \u0441\u0430\u043c\u043e {0}\u200aGB. +MonitorMarkedNodeOffline.DisplayName=\ + \u041a\u043e\u043c\u043f\u044e\u0442\u044a\u0440\u044a\u0442 \u0435 \u043e\u0442\u0431\u0435\u043b\u044f\u0437\u0430\u043d \u043a\u0430\u0442\u043e \u0438\u0437\u0432\u044a\u043d \u043b\u0438\u043d\u0438\u044f \u0432 \u0440\u0435\u0437\u0443\u043b\u0442\u0430\u0442 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430\u0442\u0430 \u043d\u0430\ + \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u0442\u043e \u043c\u0443. diff --git a/core/src/main/resources/hudson/node_monitors/MonitorMarkedNodeOffline/message_bg.properties b/core/src/main/resources/hudson/node_monitors/MonitorMarkedNodeOffline/message_bg.properties new file mode 100644 index 0000000000..dea163dd1e --- /dev/null +++ b/core/src/main/resources/hudson/node_monitors/MonitorMarkedNodeOffline/message_bg.properties @@ -0,0 +1,32 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Dismiss=\ + \u041e\u0442\u043a\u0430\u0437\u0432\u0430\u043d\u0435 +# Jenkins took some agents offline because their key health metrics went below a threshold. \ +# If you don\u2019t want Jenkins to do this, \ +# change the setting. +blurb=\ + Jenkins \u0438\u0437\u0432\u0435\u0434\u0435 \u0447\u0430\u0441\u0442 \u043e\u0442 \u043c\u0430\u0448\u0438\u043d\u0438\u0442\u0435 \u0438\u0437\u0432\u044a\u043d \u043b\u0438\u043d\u0438\u044f, \u0437\u0430\u0449\u043e\u0442\u043e\ + \u043a\u043b\u044e\u0447\u043e\u0432\u0438\u0442\u0435 \u043c\u0435\u0442\u0440\u0438\u043a\u0438 \u0437\u0430 \u0442\u044f\u0445\u043d\u043e\u0442\u043e \u0437\u0434\u0440\u0430\u0432\u0435 \u0441\u0430 \u043f\u043e\u0434\ + \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u043d\u0438\u044f \u043f\u0440\u0430\u0433. \u0410\u043a\u043e \u043d\u0435 \u0438\u0441\u043a\u0430\u0442\u0435 Jenkins \u0434\u0430 \u043f\u0440\u0430\u0432\u0438 \u0442\u043e\u0432\u0430,\ + \u043f\u0440\u043e\u043c\u0435\u043d\u0435\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u0442\u0435. diff --git a/core/src/main/resources/hudson/node_monitors/ResponseTimeMonitor/Data/cause_bg.properties b/core/src/main/resources/hudson/node_monitors/ResponseTimeMonitor/Data/cause_bg.properties new file mode 100644 index 0000000000..b285c96c29 --- /dev/null +++ b/core/src/main/resources/hudson/node_monitors/ResponseTimeMonitor/Data/cause_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Ping\ response\ time\ is\ too\ long\ or\ timed\ out.=\ + \u0412\u0440\u0435\u043c\u0435\u0442\u043e \u0437\u0430 \u043e\u0442\u0433\u043e\u0432\u043e\u0440 \u043d\u0430 \u043f\u0440\u0430\u0437\u043d\u0430 \u0437\u0430\u044f\u0432\u043a\u0430 \u0435 \u043f\u0440\u0435\u043a\u0430\u043b\u0435\u043d\u043e \u0434\u044a\u043b\u0433\u043e \u0438\u043b\u0438 \u0442\u0430\u043a\u044a\u0432 \u043d\u0435 \u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d. diff --git a/core/src/main/resources/hudson/os/solaris/ZFSInstaller/MigrationCompleteNotice/message_bg.properties b/core/src/main/resources/hudson/os/solaris/ZFSInstaller/MigrationCompleteNotice/message_bg.properties new file mode 100644 index 0000000000..44821a6802 --- /dev/null +++ b/core/src/main/resources/hudson/os/solaris/ZFSInstaller/MigrationCompleteNotice/message_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +OK=\ + \u0414\u043e\u0431\u0440\u0435 +Data\ was\ successfully\ migrated\ to\ ZFS.=\ + \u0414\u0430\u043d\u043d\u0438\u0442\u0435 \u0441\u0430 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043c\u0438\u0433\u0440\u0438\u0440\u0430\u043d\u0438 \u043a\u044a\u043c ZFS. diff --git a/core/src/main/resources/hudson/os/solaris/ZFSInstaller/MigrationFailedNotice/index_bg.properties b/core/src/main/resources/hudson/os/solaris/ZFSInstaller/MigrationFailedNotice/index_bg.properties new file mode 100644 index 0000000000..bccc36d052 --- /dev/null +++ b/core/src/main/resources/hudson/os/solaris/ZFSInstaller/MigrationFailedNotice/index_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +ZFS\ Migration\ Problem=\ + \u041f\u0440\u043e\u0431\u043b\u0435\u043c \u043f\u0440\u0438 \u043c\u0438\u0433\u0440\u0438\u0440\u0430\u043d\u0435\u0442\u043e \u043a\u044a\u043c ZFS diff --git a/core/src/main/resources/hudson/os/solaris/ZFSInstaller/MigrationFailedNotice/message_bg.properties b/core/src/main/resources/hudson/os/solaris/ZFSInstaller/MigrationFailedNotice/message_bg.properties new file mode 100644 index 0000000000..ab99bda24f --- /dev/null +++ b/core/src/main/resources/hudson/os/solaris/ZFSInstaller/MigrationFailedNotice/message_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +See\ the\ log\ for\ more\ details=\ + \u0417\u0430 \u043f\u043e\u0432\u0435\u0447\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0432\u0438\u0436\u0442\u0435 \u0436\u0443\u0440\u043d\u0430\u043b\u0430. +ZFS\ migration\ failed.=\ + \u041d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043c\u0438\u0433\u0440\u0438\u0440\u0430\u043d\u0435 \u043a\u044a\u043c ZFS. diff --git a/core/src/main/resources/hudson/os/solaris/ZFSInstaller/askRootPassword_bg.properties b/core/src/main/resources/hudson/os/solaris/ZFSInstaller/askRootPassword_bg.properties new file mode 100644 index 0000000000..1e9a4efd3d --- /dev/null +++ b/core/src/main/resources/hudson/os/solaris/ZFSInstaller/askRootPassword_bg.properties @@ -0,0 +1,38 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Permission\ Denied=\ + \u041d\u044f\u043c\u0430 \u043f\u0440\u0430\u0432\u0430 +Password=\ + \u041f\u0430\u0440\u043e\u043b\u0430 +OK=\ + \u0414\u043e\u0431\u0440\u0435 +# It appears that the current user account lacks necessary permissions to create a ZFS file system. \ +# Please provide the username and the password that's capable of doing this, such as root. +blurb=\ + \u0422\u0435\u043a\u0443\u0449\u0430\u0442\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u043d\u044f\u043c\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0438\u0442\u0435 \u043f\u0440\u0430\u0432\u0430 \u0437\u0430 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\ + ZFS. \u0412\u044a\u0432\u0435\u0434\u0435\u0442\u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0441\u043a\u043e \u0438\u043c\u0435 (\u043d\u0430\u0439-\u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e \u201eroot\u201c) \u0438 \u0441\u044a\u043e\u0442\u0432\u0435\u0442\u043d\u0430\u0442\u0430 \u043f\u0430\u0440\u043e\u043b\u0430,\ + \u043a\u043e\u0438\u0442\u043e \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u044f\u0442 \u0442\u0430\u043a\u0438\u0432\u0430 \u043f\u0440\u0430\u0432\u0430. +Username=\ + \u041f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0441\u043a\u043e \u0438\u043c\u0435 +See\ errors...=\ + \u041f\u0440\u0435\u0433\u043b\u0435\u0434 \u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0438\u0442\u0435\u2026 diff --git a/core/src/main/resources/hudson/os/solaris/ZFSInstaller/confirm_bg.properties b/core/src/main/resources/hudson/os/solaris/ZFSInstaller/confirm_bg.properties new file mode 100644 index 0000000000..1660b9446e --- /dev/null +++ b/core/src/main/resources/hudson/os/solaris/ZFSInstaller/confirm_bg.properties @@ -0,0 +1,48 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Start\ migration=\ + \u041d\u0430\u0447\u0430\u043b\u043e \u043d\u0430 \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u044f\u0442\u0430 +# Jenkins will perform the following steps to migrate your existing data to a ZFS file system. +blurb=\ + Jenkins \u0449\u0435 \u0438\u0437\u0432\u044a\u0440\u0448\u0438 \u0441\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u0437\u0430 \u0434\u0430 \u043c\u0438\u0433\u0440\u0438\u0440\u0430 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0438\u0442\u0435 \u0434\u0430\u043d\u043d\u0438 \u043a\u044a\u043c\ + \u0444\u0430\u0439\u043b\u043e\u0432\u0430\u0442\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 ZFS. +You\ will\ need\ the\ root\ password\ of\ the\ system\ to\ do\ this.=\ + \u0417\u0430 \u0442\u043e\u0432\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0449\u0435 \u0432\u0438 \u0442\u0440\u044f\u0431\u0432\u0430 \u043f\u0430\u0440\u043e\u043b\u0430\u0442\u0430 \u043d\u0430 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430. +# Mount a new ZFS file system at {0} +mount=\ + \u041c\u043e\u043d\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u043d\u043e\u0432\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 ZFS \u043e\u0442 {0} +# Rename {0} to {0}.backup +rename=\ + \u041f\u0440\u0435\u0438\u043c\u0435\u043d\u0443\u0432\u0430\u043d\u0435 \u043d\u0430 \u201e{0}\u201c \u043d\u0430 \u201e{0}.backup\u201c +Restart\ itself\ so\ that\ the\ migration\ can\ be\ done\ without\ worrying\ about\ concurrent\ data\ modifications=\ + \u0420\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435, \u0437\u0430 \u0434\u0430 \u043c\u043e\u0436\u0435 \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u044f\u0442\u0430 \u0434\u0430 \u0441\u0435 \u0438\u0437\u0432\u044a\u0440\u0448\u0438 \u0431\u0435\u0437 \u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442 \u043e\u0442 \u043f\u0440\u043e\u043c\u0435\u043d\u0438 \u043d\u0430\ + \u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u043e\u0442 \u0434\u0440\u0443\u0433\u043e \u043c\u044f\u0441\u0442\u043e. +# Delete {0}.backup +delete=\ + \u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043d\u0435 \u043d\u0430 \u201e{0}.backup\u201c +# Create a new ZFS file system {0} and copy all the data into it +create=\ + \u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u043d\u043e\u0432\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 ZFS \u0432 {0} \u0438 \u043a\u043e\u043f\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0432\u0441\u0438\u0447\u043a\u0438\ + \u0434\u0430\u043d\u043d\u0438 \u0432 \u043d\u0435\u044f. +ZFS\ file\ system\ creation=\ + \u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 ZFS diff --git a/core/src/main/resources/hudson/os/solaris/ZFSInstaller/message_bg.properties b/core/src/main/resources/hudson/os/solaris/ZFSInstaller/message_bg.properties new file mode 100644 index 0000000000..6b68462b3e --- /dev/null +++ b/core/src/main/resources/hudson/os/solaris/ZFSInstaller/message_bg.properties @@ -0,0 +1,31 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Yes,\ please=\ + \u0414\u0430 +No,\ thank\ you=\ + \u041d\u0435 +# You are running on Solaris. Would you like Jenkins to create a ZFS file system for you \ +# so that you can get the most out of Solaris? +blurb=\ + \u0420\u0430\u0431\u043e\u0442\u0438\u0442\u0435 \u0441\u044a\u0441 Solaris. \u0418\u0441\u043a\u0430\u0442\u0435 \u043b\u0438 Jenkins \u0434\u0430 \u0441\u044a\u0437\u0434\u0430\u0434\u0435 \u0444\u0430\u0439\u043b\u043e\u0432\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 ZFS, \u0437\u0430 \u0434\u0430\ + \u0441\u0435 \u0432\u044a\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u043e\u0442 \u0432\u0441\u0438\u0447\u043a\u0438 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043d\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u0442\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430? diff --git a/core/src/main/resources/hudson/scm/AbstractScmTagAction/inProgress_bg.properties b/core/src/main/resources/hudson/scm/AbstractScmTagAction/inProgress_bg.properties new file mode 100644 index 0000000000..e3deadebc3 --- /dev/null +++ b/core/src/main/resources/hudson/scm/AbstractScmTagAction/inProgress_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Tagging\ is\ in\ progress\:=\ + \u0415\u0442\u0438\u043a\u0435\u0442\u0438\u0442\u0435 \u0441\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u044f\u0442 \u0432 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 diff --git a/core/src/main/resources/hudson/search/Search/search-failed_bg.properties b/core/src/main/resources/hudson/search/Search/search-failed_bg.properties new file mode 100644 index 0000000000..f5f1a7c2c9 --- /dev/null +++ b/core/src/main/resources/hudson/search/Search/search-failed_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Search\ for=\ + \u0422\u044a\u0440\u0441\u0435\u043d\u0435 \u043d\u0430 +Nothing\ seems\ to\ match.=\ + \u041d\u0438\u0449\u043e \u043d\u0435 \u0441\u044a\u0432\u043f\u0430\u0434\u0430. diff --git a/core/src/main/resources/hudson/search/UserSearchProperty/config_bg.properties b/core/src/main/resources/hudson/search/UserSearchProperty/config_bg.properties new file mode 100644 index 0000000000..8087fbf228 --- /dev/null +++ b/core/src/main/resources/hudson/search/UserSearchProperty/config_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Case-sensitivity=\ + \u0420\u0430\u0437\u043b\u0438\u043a\u0430 \u0433\u043b\u0430\u0432\u043d\u0438/\u043c\u0430\u043b\u043a\u0438 +Insensitive\ search\ tool=\ + \u0422\u044a\u0440\u0441\u0435\u043d\u0435 \u0431\u0435\u0437 \u0441\u044a\u043e\u0431\u0440\u0430\u0437\u044f\u0432\u0430\u043d\u0435 \u0433\u043b\u0430\u0432\u043d\u0438/\u043c\u0430\u043b\u043a\u0438 diff --git a/core/src/main/resources/hudson/security/FederatedLoginService/UnclaimedIdentityException/error_bg.properties b/core/src/main/resources/hudson/security/FederatedLoginService/UnclaimedIdentityException/error_bg.properties new file mode 100644 index 0000000000..886bed9418 --- /dev/null +++ b/core/src/main/resources/hudson/security/FederatedLoginService/UnclaimedIdentityException/error_bg.properties @@ -0,0 +1,39 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# Login Error: unassociated {0} +loginError=\ + \u0413\u0440\u0435\u0448\u043a\u0430 \u043f\u0440\u0438 \u0432\u043b\u0438\u0437\u0430\u043d\u0435: \u201e{0}\u201c \u043d\u0435 \u0435 \u0441\u0432\u044a\u0440\u0437\u0430\u043d \u0441 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u043d\u0430 Jenkins +# {0} "{1}" is not associated with any of the Jenkins user account. \ +# Note that if you already have a user account and is trying to associate a {0} with your account, \ +# this is a wrong place. To do so,
  1. Login
  2. Click on your name
  3. Click on the "Configure" link, and \ +# then
  4. associate a new {0} from that page
+blurb=\ + {0} \u201e{1}\u201c \u043d\u0435 \u0435 \u0441\u0432\u044a\u0440\u0437\u0430\u043d \u0441 \u043d\u0438\u043a\u043e\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u043d\u0430 Jenkins. \u0410\u043a\u043e \u0432\u0435\u0447\u0435 \u0438\u043c\u0430\u0442\u0435\ + \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0441\u043a\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u0438 \u0438\u0441\u043a\u0430\u0442\u0435 \u0434\u0430 \u0441\u0432\u044a\u0440\u0436\u0435\u0442\u0435 {0} \u0441 \u043d\u0435\u044f, \u0442\u043e\u0432\u0430 \u043d\u0435 \u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043d\u043e\u0442\u043e\ + \u043c\u044f\u0441\u0442\u043e. \u0417\u0430 \u0434\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u0438\u0442\u0435 \u0442\u043e\u0432\u0430:\ +
    \ +
  1. \u0432\u043b\u0435\u0437\u0442\u0435 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430;
  2. \ +
  3. \u043d\u0430\u0442\u0438\u0441\u043d\u0435\u0442\u0435 \u0438\u043c\u0435\u0442\u043e \u0441\u0438;
  4. \ +
  5. \u043d\u0430\u0442\u0438\u0441\u043d\u0435\u0442\u0435 \u0432\u0440\u044a\u0437\u043a\u0430\u0442\u0430 \u0437\u0430 \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438;
  6. \ +
  7. \u0441\u0432\u044a\u0440\u0436\u0435\u0442\u0435 \u043d\u043e\u0432 {0}.
  8. \ +
\ No newline at end of file diff --git a/core/src/main/resources/hudson/security/FullControlOnceLoggedInAuthorizationStrategy/config_bg.properties b/core/src/main/resources/hudson/security/FullControlOnceLoggedInAuthorizationStrategy/config_bg.properties new file mode 100644 index 0000000000..caf3e2bc91 --- /dev/null +++ b/core/src/main/resources/hudson/security/FullControlOnceLoggedInAuthorizationStrategy/config_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Allow\ anonymous\ read\ access=\ + \u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0430\u043d\u043e\u043d\u0438\u043c\u0435\u043d \u0434\u043e\u0441\u0442\u044a\u043f \u0437\u0430 \u0447\u0435\u0442\u0435\u043d\u0435 diff --git a/core/src/main/resources/hudson/security/SecurityRealm/signup_bg.properties b/core/src/main/resources/hudson/security/SecurityRealm/signup_bg.properties new file mode 100644 index 0000000000..cfb28e18f2 --- /dev/null +++ b/core/src/main/resources/hudson/security/SecurityRealm/signup_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Sign\ up=\ + \u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f +This\ is\ not\ supported\ in\ the\ current\ configuration.=\ + \u0422\u043e\u0432\u0430 \u043d\u0435 \u0441\u0435 \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u043e\u0442 \u0442\u0435\u043a\u0443\u0449\u0438\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438. +Signup\ not\ supported=\ + \u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043d\u0435 \u0441\u0435 \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 diff --git a/core/src/main/resources/hudson/security/csrf/DefaultCrumbIssuer/config_bg.properties b/core/src/main/resources/hudson/security/csrf/DefaultCrumbIssuer/config_bg.properties new file mode 100644 index 0000000000..c443d84303 --- /dev/null +++ b/core/src/main/resources/hudson/security/csrf/DefaultCrumbIssuer/config_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Enable\ proxy\ compatibility=\ + \u0412\u043a\u043b\u044e\u0447\u0432\u0430\u043d\u0435 \u043d\u0430 \u0441\u044a\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0442\u0430 \u0441\u044a\u0441 \u0441\u044a\u0440\u0432\u044a\u0440\u0438-\u043f\u043e\u0441\u0440\u0435\u0434\u043d\u0438\u0446\u0438 diff --git a/core/src/main/resources/hudson/slaves/Cloud/index_bg.properties b/core/src/main/resources/hudson/slaves/Cloud/index_bg.properties new file mode 100644 index 0000000000..af23fba2f8 --- /dev/null +++ b/core/src/main/resources/hudson/slaves/Cloud/index_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +Cloud=\ + \u041e\u0431\u043b\u0430\u043a diff --git a/core/src/main/resources/hudson/slaves/CommandConnector/config_bg.properties b/core/src/main/resources/hudson/slaves/CommandConnector/config_bg.properties new file mode 100644 index 0000000000..ee97be0e93 --- /dev/null +++ b/core/src/main/resources/hudson/slaves/CommandConnector/config_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Launch\ command=\ + \u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0437\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 diff --git a/core/src/main/resources/hudson/slaves/CommandLauncher/config_bg.properties b/core/src/main/resources/hudson/slaves/CommandLauncher/config_bg.properties new file mode 100644 index 0000000000..ee97be0e93 --- /dev/null +++ b/core/src/main/resources/hudson/slaves/CommandLauncher/config_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Launch\ command=\ + \u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0437\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 diff --git a/core/src/main/resources/hudson/slaves/CommandLauncher/help_bg.properties b/core/src/main/resources/hudson/slaves/CommandLauncher/help_bg.properties new file mode 100644 index 0000000000..8efdbd543b --- /dev/null +++ b/core/src/main/resources/hudson/slaves/CommandLauncher/help_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# Starts an agent by having Jenkins execute a command from the master. \ +# Use this when the master is capable of remotely executing a process on another machine, e.g. via SSH or RSH. +blurb=\ + \u0421\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442 \u043a\u0430\u0442\u043e Jenkins \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043e\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u0432\u0430\u0449\u0438\u044f \u043a\u043e\u043c\u043f\u044e\u0442\u044a\u0440.\ + \u041f\u043e\u043b\u0437\u0432\u0430\u0439\u0442\u0435 \u0442\u043e\u0437\u0438 \u0432\u0430\u0440\u0438\u0430\u043d\u0442, \u043a\u043e\u0433\u0430\u0442\u043e \u043a\u043e\u043c\u0430\u043d\u0434\u0432\u0430\u0449\u0438\u044f\u0442 \u043a\u043e\u043c\u043f\u044e\u0442\u044a\u0440 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0438\ + \u043d\u0430 \u0434\u0440\u0443\u0433\u0438 \u043c\u0430\u0448\u0438\u043d\u0438, \u043d\u0430\u043f\u0440. \u0447\u0440\u0435\u0437 SSH \u0438\u043b\u0438 RSH. diff --git a/core/src/main/resources/hudson/slaves/ComputerLauncher/main_bg.properties b/core/src/main/resources/hudson/slaves/ComputerLauncher/main_bg.properties new file mode 100644 index 0000000000..cf7c74ea99 --- /dev/null +++ b/core/src/main/resources/hudson/slaves/ComputerLauncher/main_bg.properties @@ -0,0 +1,31 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Relaunch\ agent=\ + \u0421\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442\u0430 \u043d\u0430\u043d\u043e\u0432\u043e +See\ log\ for\ more\ details=\ + \u0417\u0430 \u043f\u043e\u0432\u0435\u0447\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043f\u0440\u0435\u0433\u043b\u0435\u0434\u0430\u0439\u0442\u0435 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0442\u0435 +Launch\ agent=\ + \u0421\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442\u0430 +# This node is being launched. +launchingDescription=\ + \u0422\u0430\u0437\u0438 \u043c\u0430\u0448\u0438\u043d\u0430 \u0432 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0441\u0435 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430. diff --git a/core/src/main/resources/hudson/slaves/DelegatingComputerLauncher/config_bg.properties b/core/src/main/resources/hudson/slaves/DelegatingComputerLauncher/config_bg.properties new file mode 100644 index 0000000000..8e930f459b --- /dev/null +++ b/core/src/main/resources/hudson/slaves/DelegatingComputerLauncher/config_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Actual\ launch\ method=\ + \u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u0435\u043d \u043c\u0435\u0442\u043e\u0434 \u0437\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 diff --git a/core/src/main/resources/hudson/slaves/DumbSlave/configure-entries_bg.properties b/core/src/main/resources/hudson/slaves/DumbSlave/configure-entries_bg.properties new file mode 100644 index 0000000000..6e4cf513f3 --- /dev/null +++ b/core/src/main/resources/hudson/slaves/DumbSlave/configure-entries_bg.properties @@ -0,0 +1,36 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Availability=\ + \u041d\u0430\u043b\u0438\u0447\u043d\u043e\u0441\u0442 +Node\ Properties=\ + \u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043d\u0430 \u043c\u0430\u0448\u0438\u043d\u0430\u0442\u0430 +\#\ of\ executors=\ + \u0411\u0440\u043e\u0439 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u0449\u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0438 +Description=\ + \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 +Launch\ method=\ + \u041c\u0435\u0442\u043e\u0434 \u0437\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 +Labels=\ + \u0415\u0442\u0438\u043a\u0435\u0442\u0438 +Remote\ root\ directory=\ + \u041e\u0441\u043d\u043e\u0432\u043d\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u043d\u0430 \u043e\u0442\u0434\u0430\u043b\u0435\u0447\u0435\u043d\u0430\u0442\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 diff --git a/core/src/main/resources/hudson/slaves/DumbSlave/newInstanceDetail_bg.properties b/core/src/main/resources/hudson/slaves/DumbSlave/newInstanceDetail_bg.properties new file mode 100644 index 0000000000..5178853833 --- /dev/null +++ b/core/src/main/resources/hudson/slaves/DumbSlave/newInstanceDetail_bg.properties @@ -0,0 +1,33 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# \ +# Adds a plain, permanent agent to Jenkins. This is called "permanent" because Jenkins doesn\u2019t provide \ +# higher level of integration with these agents, such as dynamic provisioning. \ +# Select this type if no other agent types apply — for example such as when you are adding \ +# a physical computer, virtual machines managed outside Jenkins, etc. +detail=\ + \u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d, \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u0435\u043d \u0430\u0433\u0435\u043d\u0442 \u043a\u044a\u043c Jenkins. \u041d\u0430\u0440\u0438\u0447\u0430 \u0441\u0435 \u201e\u043f\u043e\u0441\u0442\u043e\u044f\u043d\u0435\u043d\u201c,\ + \u0437\u0430\u0449\u043e\u0442\u043e Jenkins \u043d\u0435 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430 \u043f\u043e-\u0432\u0438\u0441\u043e\u043a\u0438 \u043d\u0438\u0432\u0430 \u043d\u0430 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 \u0442\u043e\u0437\u0438 \u0432\u0438\u0434 \u0430\u0433\u0435\u043d\u0442\u0438,\ + \u043a\u0430\u0442\u043e \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u043d\u043e \u0437\u0430\u0434\u0435\u043b\u044f\u043d\u0435. \u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u0442\u043e\u0437\u0438 \u0432\u0438\u0434 \u0430\u0433\u0435\u043d\u0442, \u0441\u0430\u043c\u043e \u0430\u043a\u043e \u0434\u0440\u0443\u0433\u0438\u0442\u0435\ + \u0432\u0438\u0434\u043e\u0432\u0435 \u0430\u0433\u0435\u043d\u0442\u0438 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u044f\u0442, \u043d\u0430\u043f\u0440. \u043a\u043e\u0433\u0430\u0442\u043e \u0434\u043e\u0431\u0430\u0432\u044f\u0442\u0435 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438 \u043a\u043e\u043c\u043f\u044e\u0442\u044a\u0440, \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u043d\u0438\ + \u043c\u0430\u0448\u0438\u043d\u0438, \u043a\u043e\u0438\u0442\u043e \u0441\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430\u0442 \u0438\u0437\u0432\u044a\u043d Jenkins, \u0438 \u0442.\u043d. diff --git a/core/src/main/resources/hudson/slaves/EnvironmentVariablesNodeProperty/config_bg.properties b/core/src/main/resources/hudson/slaves/EnvironmentVariablesNodeProperty/config_bg.properties new file mode 100644 index 0000000000..6a8664977a --- /dev/null +++ b/core/src/main/resources/hudson/slaves/EnvironmentVariablesNodeProperty/config_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Value=\ + \u0421\u0442\u043e\u0439\u043d\u043e\u0441\u0442 +Name=\ + \u0418\u043c\u0435 +List\ of\ variables=\ + \u0421\u043f\u0438\u0441\u044a\u043a \u0441 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0438\u0442\u0435 diff --git a/core/src/main/resources/hudson/slaves/JNLPLauncher/config_bg.properties b/core/src/main/resources/hudson/slaves/JNLPLauncher/config_bg.properties new file mode 100644 index 0000000000..5fbeb54e51 --- /dev/null +++ b/core/src/main/resources/hudson/slaves/JNLPLauncher/config_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +Tunnel\ connection\ through=\ + \u0422\u0443\u043d\u0435\u043b\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0432\u0440\u044a\u0437\u043a\u0430\u0442\u0430 \u043f\u0440\u0435\u0437 +JVM\ options=\ + \u041e\u043f\u0446\u0438\u0438 \u043d\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u043d\u0430\u0442\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 \u043d\u0430 Java +Enable\ work\ directory=\ + \u0412\u043a\u043b\u044e\u0447\u0432\u0430\u043d\u0435 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u043d\u0430\u0442\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f diff --git a/core/src/main/resources/hudson/slaves/JNLPLauncher/help_bg.properties b/core/src/main/resources/hudson/slaves/JNLPLauncher/help_bg.properties new file mode 100644 index 0000000000..6e9390b1d1 --- /dev/null +++ b/core/src/main/resources/hudson/slaves/JNLPLauncher/help_bg.properties @@ -0,0 +1,44 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# Allows an agent to be launched using Java Web Start.
\ +# In this case, a JNLP file must be opened on the agent machine, which will \ +# establish a TCP connection to the Jenkins master.
\ +# This means that the agent need not be reachable from the master; the agent \ +# just needs to be able to reach the master. If you have enabled security via \ +# the Configure Global Security page, you can customise the port on \ +# which the Jenkins master will listen for incoming JNLP agent connections.
\ +# By default, the JNLP agent will launch a GUI, but it's also possible to run \ +# a JNLP agent without a GUI, e.g. as a Window service. +blurb=\ + \u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d \u0447\u0440\u0435\u0437\ + Java Web Start.
\ + \u0417\u0430 \u0442\u043e\u0432\u0430 \u0442\u0440\u044f\u0431\u0432\u0430 \u043e\u0442\u0434\u0430\u043b\u0435\u0447\u0435\u043d\u0430\u0442\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 \u0434\u0430 \u043e\u0442\u0432\u043e\u0440\u0438 \u0444\u0430\u0439\u043b \u0432\u044a\u0432 \u0444\u043e\u0440\u043c\u0430\u0442 JNLP, \u0441\u043b\u0435\u0434 \u0442\u043e\u0432\u0430\ + \u0442\u044f \u0449\u0435 \u043e\u0442\u0432\u043e\u0440\u0438 \u0432\u0440\u044a\u0437\u043a\u0430 \u043f\u043e TCP \u043a\u044a\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430\u0449\u0438\u044f\u0442 \u0441\u044a\u0440\u0432\u044a\u0440 \u043d\u0430 Jenkins.
\ + \u0422\u043e\u0432\u0430 \u043e\u0437\u043d\u0430\u0447\u0430\u0432\u0430, \u0447\u0435 \u043d\u0435 \u0435 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430\u0449\u0438\u044f\u0442 \u0441\u044a\u0440\u0432\u044a\u0440 \u0434\u0430 \u0435 \u0432 \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0434\u0430\ + \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0435 \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u0438\u044f, \u043d\u043e \u0435 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u043d\u043e \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u0438\u044f\u0442 \u0434\u0430 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0442\u0438\u0433\u043d\u0435 \u0434\u043e\ + \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430\u0449\u0438\u044f. \u0410\u043a\u043e \u0441\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u043b\u0438 \u0441\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442\u0442\u0430 \u043f\u0440\u0435\u0437 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0442\u0430 \u0437\u0430\ + \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043d\u0430 \u0441\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442\u0442\u0430, \u043c\u043e\u0436\u0435 \u0438 \u0434\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u0435 \u043f\u043e\u0440\u0442\u0430, \u043d\u0430 \u043a\u043e\u0439\u0442\u043e\ + \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430\u0449\u0438\u044f\u0442 \u0441\u044a\u0440\u0432\u044a\u0440 \u0449\u0435 \u0447\u0430\u043a\u0430 \u0437\u0430 \u0432\u0445\u043e\u0434\u044f\u0449\u0438 \u0432\u0440\u044a\u0437\u043a\u0438 \u0437\u0430 JNLP.
\ + \u041f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435 \u0430\u0433\u0435\u043d\u0442\u0438\u0442\u0435 \u0441 JNLP \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0442 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u043d \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441, \u043d\u043e \u043c\u043e\u0436\u0435 \u0434\u0430\ + \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u0435 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u0431\u0435\u0437 \u0442\u0430\u043a\u044a\u0432 \u2014 \u043f\u043e\u0434\u043e\u0431\u043d\u043e \u043d\u0430 \u0443\u0441\u043b\u0443\u0433\u0430 \u043d\u0430 Windows. diff --git a/core/src/main/resources/hudson/slaves/JNLPLauncher/main_bg.properties b/core/src/main/resources/hudson/slaves/JNLPLauncher/main_bg.properties new file mode 100644 index 0000000000..7e857ee1cb --- /dev/null +++ b/core/src/main/resources/hudson/slaves/JNLPLauncher/main_bg.properties @@ -0,0 +1,39 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Connect\ agent\ to\ Jenkins\ one\ of\ these\ ways\:=\ + \u0421\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442 \u043a\u044a\u043c Jenkins \u043f\u043e \u0435\u0434\u0438\u043d \u043e\u0442 \u0441\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u043d\u0430\u0447\u0438\u043d\u0438: +Or\ if\ the\ agent\ is\ headless\:=\ + \u0410\u043a\u043e \u0430\u0433\u0435\u043d\u0442\u044a\u0442 \u0435 \u0431\u0435\u0437 \u043c\u043e\u043d\u0438\u0442\u043e\u0440: +Run\ from\ agent\ command\ line\:=\ + \u0421\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442\u0430 \u043e\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u0440\u0435\u0434 +launch\ agent=\ + \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442\u0430 +slaveAgentPort.disabled=\ + \u041f\u043e\u0440\u0442\u044a\u0442 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442\u0430 \u0435 \u0438\u0437\u043a\u043b\u044e\u0447\u0435\u043d +Launch\ agent\ from\ browser=\ + \u0421\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442 \u043e\u0442 \u0431\u0440\u0430\u0443\u0437\u044a\u0440 +Connected\ via\ JNLP\ agent.=\ + \u0412\u0440\u044a\u0437\u043a\u0430 \u0441 \u0430\u0433\u0435\u043d\u0442 \u0447\u0440\u0435\u0437 JNLP. +# Go to security configuration screen and change it +configure.link.text=\ + \u041e\u0442\u0438\u0434\u0435\u0442\u0435 \u0432 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0442\u0430 \u0437\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u0442\u0435 \u0437\u0430 \u0441\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442\u0442\u0430 \u0438 \u0433\u043e \u0441\u043c\u0435\u043d\u0435\u0442\u0435. diff --git a/core/src/main/resources/hudson/slaves/Messages_bg.properties b/core/src/main/resources/hudson/slaves/Messages_bg.properties index 6d537b2277..fccc9dd6a9 100644 --- a/core/src/main/resources/hudson/slaves/Messages_bg.properties +++ b/core/src/main/resources/hudson/slaves/Messages_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -72,3 +72,12 @@ SimpleScheduledRetentionStrategy.displayName=\ # Launching agent process aborted. ComputerLauncher.abortedLaunch=\ \u041f\u0440\u043e\u0446\u0435\u0441\u044a\u0442 \u0437\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442\u0430 \u043f\u0440\u0438\u043a\u043b\u044e\u0447\u0438 \u043d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e +# Couldn\u2019t figure out the Java version of {0} +ComputerLauncher.UnknownJavaVersion=\ + \u0412\u0435\u0440\u0441\u0438\u044f\u0442\u0430 \u043d\u0430 Java \u043d\u0430 {0} \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 +# Name is mandatory +NodeDescriptor.CheckName.Mandatory=\ + \u0418\u043c\u0435\u0442\u043e \u0435 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u043d\u043e +# Provision new nodes +Cloud.ProvisionPermission.Description=\ + \u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u043e\u0449\u0435 \u043c\u0430\u0448\u0438\u043d\u0438 diff --git a/core/src/main/resources/hudson/slaves/OfflineCause/ChannelTermination/cause_bg.properties b/core/src/main/resources/hudson/slaves/OfflineCause/ChannelTermination/cause_bg.properties new file mode 100644 index 0000000000..24c58e08d7 --- /dev/null +++ b/core/src/main/resources/hudson/slaves/OfflineCause/ChannelTermination/cause_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Connection\ was\ broken=\ + \u0412\u0440\u044a\u0437\u043a\u0430\u0442\u0430 \u043f\u0440\u0435\u043a\u044a\u0441\u043d\u0430 diff --git a/core/src/main/resources/hudson/slaves/RetentionStrategy/Demand/config_bg.properties b/core/src/main/resources/hudson/slaves/RetentionStrategy/Demand/config_bg.properties new file mode 100644 index 0000000000..8e8626be8a --- /dev/null +++ b/core/src/main/resources/hudson/slaves/RetentionStrategy/Demand/config_bg.properties @@ -0,0 +1,30 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +In\ demand\ delay\ is\ mandatory\ and\ must\ be\ a\ number.=\ + \u0418\u0437\u0447\u0430\u043a\u0432\u0430\u043d\u0435\u0442\u043e \u043f\u0440\u0438 \u0437\u0430\u0435\u0442\u043e\u0441\u0442 \u0435 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u0435\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u044a\u0440 \u2014 \u0447\u0438\u0441\u043b\u043e. +Idle\ delay\ is\ mandatory\ and\ must\ be\ a\ number.=\ + \u0418\u0437\u0447\u0430\u043a\u0432\u0430\u043d\u0435\u0442\u043e \u043f\u0440\u0438 \u0431\u0435\u0437\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0435 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u0435\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u044a\u0440 \u2014 \u0447\u0438\u0441\u043b\u043e. +Idle\ delay=\ + \u0418\u0437\u0447\u0430\u043a\u0432\u0430\u043d\u0435 \u043f\u0440\u0438 \u0431\u0435\u0437\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 +In\ demand\ delay=\ + \u0418\u0437\u0447\u0430\u043a\u0432\u0430\u043d\u0435 \u043f\u0440\u0438 \u0437\u0430\u0435\u0442\u043e\u0441\u0442 diff --git a/core/src/main/resources/hudson/slaves/RetentionStrategy/Scheduled/config_bg.properties b/core/src/main/resources/hudson/slaves/RetentionStrategy/Scheduled/config_bg.properties new file mode 100644 index 0000000000..9ef3fbe705 --- /dev/null +++ b/core/src/main/resources/hudson/slaves/RetentionStrategy/Scheduled/config_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Startup\ Schedule=\ + \u0420\u0430\u0437\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0437\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 +Shutdown\ Schedule=\ + \u0420\u0430\u0437\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0437\u0430 \u0441\u043f\u0438\u0440\u0430\u043d\u0435 diff --git a/core/src/main/resources/hudson/slaves/SimpleScheduledRetentionStrategy/config_bg.properties b/core/src/main/resources/hudson/slaves/SimpleScheduledRetentionStrategy/config_bg.properties new file mode 100644 index 0000000000..990f58ac3d --- /dev/null +++ b/core/src/main/resources/hudson/slaves/SimpleScheduledRetentionStrategy/config_bg.properties @@ -0,0 +1,35 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Scheduled\ Uptime=\ + \u0420\u0430\u0437\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0437\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 +Keep\ online\ while\ jobs\ are\ running=\ + \u041d\u0430 \u043b\u0438\u043d\u0438\u044f \u0434\u043e\u043a\u0430\u0442\u043e \u0438\u043c\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u0449\u0438 \u0441\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 +Startup\ Schedule=\ + \u0420\u0430\u0437\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043d\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435\u0442\u043e +# \ +# The number of minutes to keep the node up for. If this is longer than the startup schedule, then the node will remain constantly on-line. +uptime.description=\ + \u041c\u0430\u0448\u0438\u043d\u0430\u0442\u0430 \u0434\u0430 \u0435 \u043e\u043d\u043b\u0430\u0439\u043d \u0442\u043e\u0437\u0438 \u0431\u0440\u043e\u0439 \u043c\u0438\u043d\u0443\u0442\u0438. \u0410\u043a\u043e \u043f\u0435\u0440\u0438\u043e\u0434\u044a\u0442 \u0435 \u043f\u043e \u0434\u044a\u043b\u044a\u0433 \u043e\u0442 \u0432\u0440\u0435\u043c\u0435\u0442\u043e \u0437\u0430\ + \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435, \u043c\u0430\u0448\u0438\u043d\u0430\u0442\u0430 \u0449\u0435 \u0435 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u043d\u0430 \u043b\u0438\u043d\u0438\u044f. +Scheduled\ Uptime\ is\ mandatory\ and\ must\ be\ a\ number.=\ + \u0417\u0430\u043f\u043b\u0430\u043d\u0443\u0432\u0430\u043d\u043e\u0442\u043e \u0432\u0440\u0435\u043c\u0435 \u0437\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u0435 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u0435\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u044a\u0440 \u2014 \u0447\u0438\u0441\u043b\u043e. \ No newline at end of file diff --git a/core/src/main/resources/hudson/tasks/ArtifactArchiver/config_bg.properties b/core/src/main/resources/hudson/tasks/ArtifactArchiver/config_bg.properties new file mode 100644 index 0000000000..2319e9fdd4 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/ArtifactArchiver/config_bg.properties @@ -0,0 +1,40 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# Do not fail build if archiving returns nothing +allowEmptyArchive=\ + \u0414\u043e\u0440\u0438 \u0438 \u0430\u0440\u0445\u0438\u0432\u0438\u0440\u0430\u043d\u0435\u0442\u043e \u0434\u0430 \u043d\u0435 \u0441\u044a\u0437\u0434\u0430\u0434\u0435 \u043d\u0438\u0449\u043e, \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u0434\u0430 \u043d\u0435 \u0441\u0435 \u0441\u0447\u0438\u0442\u0430 \u0437\u0430\ + \u043d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e +Files\ to\ archive=\ + \u0424\u0430\u0439\u043b\u043e\u0432\u0435 \u0437\u0430 \u0430\u0440\u0445\u0438\u0432\u0438\u0440\u0430\u043d\u0435 +Excludes=\ + \u041e\u0431\u0435\u043a\u0442\u0438 \u0437\u0430 \u043f\u0440\u0435\u0441\u043a\u0430\u0447\u0430\u043d\u0435 +# Treat include and exclude patterns as case sensitive +caseSensitive=\ + \u0428\u0430\u0431\u043b\u043e\u043d\u0438\u0442\u0435 \u0437\u0430 \u043f\u0440\u0435\u0441\u043a\u0430\u0447\u0430\u043d\u0435 \u0438 \u0437\u0430 \u0432\u043a\u043b\u044e\u0447\u0432\u0430\u043d\u0435 \u0432 \u0430\u0440\u0445\u0438\u0432\u0430 \u0434\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u0430\u0432\u0430\u0442 \u0433\u043b\u0430\u0432\u043d\u0438/\u043c\u0430\u043b\u043a\u0438 +# Archive artifacts only if build is successful +onlyIfSuccessful=\ + \u0410\u0440\u0445\u0438\u0432\u0438\u0440\u0430\u043d\u0435 \u0441\u0430\u043c\u043e \u043f\u0440\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 +Fingerprint\ all\ archived\ artifacts= +# Use default excludes +defaultExcludes=\ + \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0438 \u043e\u0431\u0435\u043a\u0442\u0438 \u0437\u0430 \u043f\u0440\u0435\u0441\u043a\u0430\u0447\u0430\u043d\u0435 diff --git a/core/src/main/resources/hudson/tasks/BatchFile/config_bg.properties b/core/src/main/resources/hudson/tasks/BatchFile/config_bg.properties new file mode 100644 index 0000000000..20be8836e8 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/BatchFile/config_bg.properties @@ -0,0 +1,30 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +# See the list of available environment variables +description=\ + \u0412\u0438\u0436\u0442\u0435 \u0441\u043f\u0438\u0441\u044a\u043a\u0430 \u0441 \u043d\u0430\u043b\u0438\u0447\u043d\u0438\u0442\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0438\ + \u043d\u0430 \u0441\u0440\u0435\u0434\u0430\u0442\u0430 +Command=\ + \u041a\u043e\u043c\u0430\u043d\u0434\u0430 +ERRORLEVEL\ to\ set\ build\ unstable=\ + \u0421\u0442\u043e\u0439\u043d\u043e\u0441\u0442 \u043d\u0430 ERRORLEVEL \u0437\u0430 \u043e\u0431\u044f\u0432\u044f\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043a\u0430\u0442\u043e \u043d\u0435\u0441\u0442\u0430\u0431\u0438\u043b\u043d\u043e diff --git a/core/src/main/resources/hudson/tasks/BuildTrigger/config_bg.properties b/core/src/main/resources/hudson/tasks/BuildTrigger/config_bg.properties new file mode 100644 index 0000000000..2b414b2bb5 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/BuildTrigger/config_bg.properties @@ -0,0 +1,30 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Projects\ to\ build=\ + \u041f\u0440\u043e\u0435\u043a\u0442\u0438 \u0437\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 +Trigger\ even\ if\ the\ build\ fails=\ + \u0417\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0430\u043d\u0435 \u0434\u043e\u0440\u0438 \u0438 \u043f\u0440\u0438 \u043d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 +Trigger\ only\ if\ build\ is\ stable=\ + \u0417\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0430\u043d\u0435 \u0441\u0430\u043c\u043e \u043f\u0440\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 +Trigger\ even\ if\ the\ build\ is\ unstable=\ + \u0417\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0430\u043d\u0435 \u0434\u043e\u0440\u0438 \u0438 \u043f\u0440\u0438 \u043d\u0435\u0441\u0442\u0430\u0431\u0438\u043b\u043d\u043e \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 diff --git a/core/src/main/resources/hudson/tasks/Fingerprinter/FingerprintAction/index_bg.properties b/core/src/main/resources/hudson/tasks/Fingerprinter/FingerprintAction/index_bg.properties new file mode 100644 index 0000000000..2c90d1f8f0 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/Fingerprinter/FingerprintAction/index_bg.properties @@ -0,0 +1,36 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +more\ details=\ + \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 +Original\ owner=\ + \u041f\u044a\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u0435\u043d \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u0438\u043a +File=\ + \u0424\u0430\u0439\u043b +this\ build=\ + \u0442\u043e\u0432\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 +Age=\ + \u0412\u044a\u0437\u0440\u0430\u0441\u0442 +Recorded\ Fingerprints=\ + \u0418\u0437\u0432\u0435\u0441\u0442\u043d\u0438 \u043e\u0442\u043f\u0435\u0447\u0430\u0442\u044a\u0446\u0438 +outside\ Jenkins=\ + \u0438\u0437\u0432\u044a\u043d Jenkins diff --git a/core/src/main/resources/hudson/tasks/Fingerprinter/config_bg.properties b/core/src/main/resources/hudson/tasks/Fingerprinter/config_bg.properties new file mode 100644 index 0000000000..4d1161b123 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/Fingerprinter/config_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Files\ to\ fingerprint=\ + \u0424\u0430\u0439\u043b\u043e\u0432\u0435, \u043d\u0430 \u043a\u043e\u0438\u0442\u043e \u0434\u0430 \u0441\u0435 \u0438\u0437\u0447\u0438\u0441\u043b\u0438 \u043e\u0442\u043f\u0435\u0447\u0430\u0442\u044a\u043a diff --git a/core/src/main/resources/hudson/tasks/Maven/MavenInstallation/config_bg.properties b/core/src/main/resources/hudson/tasks/Maven/MavenInstallation/config_bg.properties new file mode 100644 index 0000000000..0736fc63c2 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/Maven/MavenInstallation/config_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Name=\ + \u0418\u043c\u0435 diff --git a/core/src/main/resources/hudson/tasks/Maven/config_bg.properties b/core/src/main/resources/hudson/tasks/Maven/config_bg.properties index 11dff5faa9..48ec508096 100644 --- a/core/src/main/resources/hudson/tasks/Maven/config_bg.properties +++ b/core/src/main/resources/hudson/tasks/Maven/config_bg.properties @@ -23,7 +23,7 @@ Default=\ \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0438 JVM\ Options=\ - \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0437\u0430 JVM + \u041e\u043f\u0446\u0438\u0438 \u043d\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u043d\u0430\u0442\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 \u043d\u0430 Java Settings\ file=\ \u0424\u0430\u0439\u043b \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 Goals=\ diff --git a/core/src/main/resources/hudson/tasks/Maven/help_bg.properties b/core/src/main/resources/hudson/tasks/Maven/help_bg.properties new file mode 100644 index 0000000000..d25d153121 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/Maven/help_bg.properties @@ -0,0 +1,45 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# Jenkins passes various environment \ +# variables to Maven, which you can access from Maven as "${env.VARIABLENAME}". +para2=\ + Jenkins \u043f\u0440\u0435\u0434\u0430\u0432\u0430 \u043d\u044f\u043a\u043e\u0438 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0438 \u043d\u0430\ + \u0441\u0440\u0435\u0434\u0430\u0442\u0430 \u043a\u044a\u043c Maven. \u0422\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0434\u043e\u0441\u0442\u044a\u043f\u0435\u043d\u0438 \u043e\u0442 Maven \u0447\u0440\u0435\u0437\ + \u201e${env.VARIABLENAME}\u201c. + +# For projects that use Maven as the build system. This causes Jenkins to invoke \ +# Maven with the given goals and options. A non-zero exit code from Maven makes Jenkins \ +# mark the build as a failure. Some Maven versions have a bug where it doesn't return \ +# the exit code correctly. +para1=\ + \u0417\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0438, \u043a\u043e\u0438\u0442\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 Maven. \u041f\u0440\u0438 \u0442\u044f\u0445 Jenkins \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430 Maven \u0441\ + \u0434\u0430\u0434\u0435\u043d\u0438\u0442\u0435 \u0446\u0435\u043b\u0438 \u0438 \u043e\u043f\u0446\u0438\u0438. \u0418\u0437\u0445\u043e\u0434\u0435\u043d \u043a\u043e\u0434 \u043e\u0442 Maven \u0440\u0430\u0437\u043b\u0438\u0447\u0435\u043d \u043e\u0442 0 \u043a\u0430\u0440\u0430 Jenkins \u0434\u0430\ + \u043e\u0431\u044f\u0432\u0438 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043a\u0430\u0442\u043e \u043d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e. \u041d\u044f\u043a\u043e\u0438 \u0432\u0435\u0440\u0441\u0438\u0438 \u043d\u0430 Maven \u0438\u043c\u0430\u0442 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447e\u043d\ + \u0434\u0435\u0444\u0435\u043a\u0442, \u043f\u0440\u0438 \u043a\u043e\u0439\u0442\u043e \u0438\u0437\u0445\u043e\u0434\u043d\u0438\u044f\u0442 \u043a\u043e\u0434 \u043d\u0435 \u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u0435\u043d. +# The same variables can be used in command-line arguments (as if you are invoking \ +# this from shell). For example, you can specify \ +# -DresultsFile=\${WORKSPACE}/\${BUILD_TAG}.results.txt +para3=\ + \u0421\u044a\u0449\u0438\u0442\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0438 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u043a\u0430\u0442\u043e \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0438 \u043d\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u0440\u0435\u0434, \u0432\u0441\u0435\ + \u0435\u0434\u043d\u043e \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0442\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u0442\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u043f\u0440\u0435\u0437 \u043e\u0431\u0432\u0438\u0432\u043a\u0430\u0442\u0430. \u041d\u0430\u043f\u0440. \u043c\u043e\u0436\u0435 \u0434\u0430 \u0443\u043a\u0430\u0436\u0435\u0442\u0435:\ + -DresultsFile=\${WORKSPACE}/\${BUILD_TAG}.results.txt diff --git a/core/src/main/resources/hudson/tasks/Messages_bg.properties b/core/src/main/resources/hudson/tasks/Messages_bg.properties index 910a69bd58..2cd51a9c5f 100644 --- a/core/src/main/resources/hudson/tasks/Messages_bg.properties +++ b/core/src/main/resources/hudson/tasks/Messages_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -124,4 +124,17 @@ Shell.DisplayName=\ \u0418\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0435\u043d \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 # Ancestor/Context Unknown: the project specified cannot be validated BuildTrigger.ok_ancestor_is_null=\ - \u041d\u0435\u043f\u043e\u0437\u043d\u0430\u0442 \u0440\u043e\u0434\u0438\u0442\u0435\u043b/\u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442: \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u044f\u0442 \u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u0438 + \u041d\u0435\u043f\u043e\u0437\u043d\u0430\u0442 \u0440\u043e\u0434\u0438\u0442\u0435\u043b/\u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442: \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u044f\u0442 \u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u0438. +# Invalid exit code value: {0}. Check help section +Shell.invalid_exit_code_range=\ + \u041d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u0435\u043d \u0438\u0437\u0445\u043e\u0434\u0435\u043d \u043a\u043e\u0434: {0}. \u041f\u0440\u043e\u0432\u0435\u0440\u0435\u0442\u0435 \u043f\u043e\u043c\u043e\u0449\u0442\u0430. +# Exit code zero is ignored and does not make the build unstable +Shell.invalid_exit_code_zero=\ + \u0418\u0437\u0445\u043e\u0434\u0435\u043d \u043a\u043e\u0434 0 \u0441\u0435 \u043f\u0440\u0435\u0441\u043a\u0430\u0447\u0430 \u2014 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043d\u044f\u043c\u0430 \u0434\u0430 \u0441\u0435 \u043e\u0431\u044f\u0432\u0438 \u0437\u0430 \u043d\u0435\u0441\u0442\u0430\u0431\u0438\u043b\u043d\u043e. +# Invalid errorlevel value: {0}. Check help section +BatchFile.invalid_exit_code_range=\ + \u041d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u0435\u043d \u043a\u043e\u0434 \u0437\u0430 \u0433\u0440\u0435\u0448\u043a\u0430 (ERRORLEVEL): {0}. \u041f\u0440\u043e\u0432\u0435\u0440\u0435\u0442\u0435 \u043f\u043e\u043c\u043e\u0449\u0442\u0430. +# ERRORLEVEL zero is ignored and does not make the build unstable +BatchFile.invalid_exit_code_zero=\ + \u041a\u043e\u0434 \u0437\u0430 \u0433\u0440\u0435\u0448\u043a\u0430 (ERRORLEVEL) 0 \u0441\u0435 \u043f\u0440\u0435\u0441\u043a\u0430\u0447\u0430 \u2014 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043d\u044f\u043c\u0430 \u0434\u0430 \u0441\u0435 \u043e\u0431\u044f\u0432\u0438 \u0437\u0430\ + \u043d\u0435\u0441\u0442\u0430\u0431\u0438\u043b\u043d\u043e. diff --git a/core/src/main/resources/hudson/tools/AbstractCommandInstaller/config_bg.properties b/core/src/main/resources/hudson/tools/AbstractCommandInstaller/config_bg.properties new file mode 100644 index 0000000000..7592eff17b --- /dev/null +++ b/core/src/main/resources/hudson/tools/AbstractCommandInstaller/config_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Command=\ + \u041a\u043e\u043c\u0430\u043d\u0434\u0430 +Tool\ Home=\ + \u0414\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u043d\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430 diff --git a/core/src/main/resources/hudson/tools/DownloadFromUrlInstaller/config_bg.properties b/core/src/main/resources/hudson/tools/DownloadFromUrlInstaller/config_bg.properties new file mode 100644 index 0000000000..78b31bbaf5 --- /dev/null +++ b/core/src/main/resources/hudson/tools/DownloadFromUrlInstaller/config_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Version=\ + \u0412\u0435\u0440\u0441\u0438\u044f diff --git a/core/src/main/resources/hudson/tools/InstallSourceProperty/config_bg.properties b/core/src/main/resources/hudson/tools/InstallSourceProperty/config_bg.properties new file mode 100644 index 0000000000..de2e2f71e6 --- /dev/null +++ b/core/src/main/resources/hudson/tools/InstallSourceProperty/config_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Add\ Installer=\ + \u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0442\u043e\u0440 +Delete\ Installer=\ + \u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043d\u0435 \u043d\u0430 \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0442\u043e\u0440 diff --git a/core/src/main/resources/hudson/tools/JDKInstaller/DescriptorImpl/credentialOK_bg.properties b/core/src/main/resources/hudson/tools/JDKInstaller/DescriptorImpl/credentialOK_bg.properties new file mode 100644 index 0000000000..c9a4c88d9e --- /dev/null +++ b/core/src/main/resources/hudson/tools/JDKInstaller/DescriptorImpl/credentialOK_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Credential\ is\ saved=\ + \u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f\u0442\u0430 \u0435 \u0437\u0430\u043f\u0430\u0437\u0435\u043d\u0430 +Close=\ + \u0417\u0430\u0442\u0432\u0430\u0440\u044f\u043d\u0435 diff --git a/core/src/main/resources/hudson/tools/JDKInstaller/DescriptorImpl/enterCredential_bg.properties b/core/src/main/resources/hudson/tools/JDKInstaller/DescriptorImpl/enterCredential_bg.properties new file mode 100644 index 0000000000..fa475cad59 --- /dev/null +++ b/core/src/main/resources/hudson/tools/JDKInstaller/DescriptorImpl/enterCredential_bg.properties @@ -0,0 +1,34 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +# To access older versions of JDK, you need to have Oracle Account. +description=\ + \u0414\u043e\u0441\u0442\u044a\u043f\u044a\u0442 \u0434\u043e \u043f\u043e-\u0441\u0442\u0430\u0440\u0438 \u0432\u0435\u0440\u0441\u0438\u0438 \u043d\u0430 JDK \u0438\u0437\u0438\u0441\u043a\u0432\u0430 \u0434\u0430 \u0438\u043c\u0430\u0442\u0435\ + \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u043a\u044a\u043c Oracle. +OK=\ + \u0414\u043e\u0431\u0440\u0435 +Enter\ Your\ Oracle\ Account=\ + \u0412\u044a\u0432\u0435\u0434\u0435\u0442\u0435 \u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u0437\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f\u0442\u0430 \u0432\u0438 \u043a\u044a\u043c Oracle +Password=\ + \u041f\u0430\u0440\u043e\u043b\u0430 +Username=\ + \u0418\u043c\u0435 \u043d\u0430 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b diff --git a/core/src/main/resources/hudson/tools/JDKInstaller/config_bg.properties b/core/src/main/resources/hudson/tools/JDKInstaller/config_bg.properties new file mode 100644 index 0000000000..a538c952b1 --- /dev/null +++ b/core/src/main/resources/hudson/tools/JDKInstaller/config_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +I\ agree\ to\ the\ Java\ SE\ Development\ Kit\ License\ Agreement=\ + \u041f\u0440\u0438\u0435\u043c\u0430\u043c \u043b\u0438\u0446\u0435\u043d\u0437\u043d\u043e\u0442\u043e \u0441\u043f\u043e\u0440\u0430\u0437\u0443\u043c\u0435\u043d\u0438\u0435 \u043d\u0430 \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0442\u0430 \u0437\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u0446\u0438 \u043d\u0430 Java SE +Version=\ + \u0412\u0435\u0440\u0441\u0438\u044f diff --git a/core/src/main/resources/hudson/tools/Messages_bg.properties b/core/src/main/resources/hudson/tools/Messages_bg.properties index 299ea8527e..15217e34b4 100644 --- a/core/src/main/resources/hudson/tools/Messages_bg.properties +++ b/core/src/main/resources/hudson/tools/Messages_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -60,3 +60,6 @@ JDKInstaller.DescriptorImpl.doCheckAcceptLicense=\ ToolDescriptor.NotADirectory=\ \u201e{0}\u201c \u043d\u0435 \u0435 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u0438\u044f \u043a\u043e\u043c\u043f\u044e\u0442\u044a\u0440 \u043d\u0430 Jenkins, \u043d\u043e \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\ \u043d\u0430 \u043d\u044f\u043a\u043e\u0438 \u043e\u0442 \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u0438\u0442\u0435 \u043a\u043e\u043c\u043f\u044e\u0442\u0440\u0438 +# Installer "{0}" cannot be used to install "{1}" on the node "{2}" +CannotBeInstalled=\ + \u0418\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u0442\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0430 \u201e{0}\u201c \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0438\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430 \u201e{1}\u201c \u043d\u0430 \u043a\u043e\u043c\u043f\u044e\u0442\u044a\u0440\u0430 \u201e{2}\u201c diff --git a/core/src/main/resources/hudson/tools/ToolInstallation/config_bg.properties b/core/src/main/resources/hudson/tools/ToolInstallation/config_bg.properties new file mode 100644 index 0000000000..8730e2cc4d --- /dev/null +++ b/core/src/main/resources/hudson/tools/ToolInstallation/config_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Name=\ + \u0418\u043c\u0435 +Installation\ directory=\ + \u0414\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u0437\u0430 \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f diff --git a/core/src/main/resources/hudson/tools/ToolInstallation/global_bg.properties b/core/src/main/resources/hudson/tools/ToolInstallation/global_bg.properties new file mode 100644 index 0000000000..6878d5f791 --- /dev/null +++ b/core/src/main/resources/hudson/tools/ToolInstallation/global_bg.properties @@ -0,0 +1,34 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# Add {0} +label.add=\ + \u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u201e{0}\u201c +# {0} installations +title=\ + {0} \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u0438 +# List of {0} installations on this system +description=\ + \u0421\u043f\u0438\u0441\u044a\u043a \u0441 {0}-\u0442\u0435 \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u0438 \u043d\u0430 \u0442\u0430\u0437\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 +# Delete {0} +label.delete=\ + \u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043d\u0435 \u043d\u0430 \u201e{0}\u201c diff --git a/core/src/main/resources/hudson/tools/ToolLocationNodeProperty/config_bg.properties b/core/src/main/resources/hudson/tools/ToolLocationNodeProperty/config_bg.properties new file mode 100644 index 0000000000..2fd248606d --- /dev/null +++ b/core/src/main/resources/hudson/tools/ToolLocationNodeProperty/config_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Home=\ + \u0414\u043e\u043c\u0430\u0448\u043d\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f +List\ of\ tool\ locations=\ + \u0421\u043f\u0438\u0441\u044a\u043a \u0441 \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0442\u0430 \u043d\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0438\u0442\u0435 +Name=\ + \u0418\u043c\u0435 diff --git a/core/src/main/resources/hudson/tools/ZipExtractionInstaller/config_bg.properties b/core/src/main/resources/hudson/tools/ZipExtractionInstaller/config_bg.properties new file mode 100644 index 0000000000..00d36908b8 --- /dev/null +++ b/core/src/main/resources/hudson/tools/ZipExtractionInstaller/config_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Download\ URL\ for\ binary\ archive=\ + \u0410\u0434\u0440\u0435\u0441 \u0437\u0430 \u0438\u0437\u0442\u0435\u0433\u043b\u044f\u043d\u0435 \u043d\u0430 \u0434\u0432\u043e\u0438\u0447\u0435\u043d \u0430\u0440\u0445\u0438\u0432 +Subdirectory\ of\ extracted\ archive=\ + \u041f\u043e\u0434\u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u043d\u0430 \u0440\u0430\u0437\u0430\u0440\u0445\u0438\u0432\u0438\u0440\u0430\u043d\u043e\u0442\u043e diff --git a/core/src/main/resources/hudson/triggers/Messages_bg.properties b/core/src/main/resources/hudson/triggers/Messages_bg.properties index cc701ff73d..76aed3bab4 100644 --- a/core/src/main/resources/hudson/triggers/Messages_bg.properties +++ b/core/src/main/resources/hudson/triggers/Messages_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -40,3 +40,23 @@ Trigger.init=\ \u0421\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0432\u0440\u0435\u043c\u0435\u0442\u043e \u043d\u0430 \u0445\u0440\u043e\u043d\u043e\u043c\u0435\u0442\u0440\u0438\u0442\u0435 TimerTrigger.no_schedules_so_will_never_run=\ \u041d\u0438\u043a\u043e\u0433\u0430 \u043d\u044f\u043c\u0430 \u0434\u0430 \u0441\u0435 \u0438\u0437\u043f\u044a\u043b\u043d\u0438, \u0437\u0430\u0449\u043e\u0442\u043e \u043b\u0438\u043f\u0441\u0432\u0430 \u0445\u0440\u043e\u043d\u043e\u043c\u0435\u0442\u044a\u0440. +# Post commit hooks are being ignored and no schedules so will never run due to SCM changes +SCMTrigger.no_schedules_no_hooks=\ + \u0421\u044a\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0442\u0430 \u043e\u0442 \u043a\u0443\u043a\u0438\u0442\u0435 \u0437\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435 \u0441\u043b\u0435\u0434 \u043f\u043e\u0434\u0430\u0432\u0430\u043d\u0435 \u0441\u0435 \u043f\u0440\u0435\u0441\u043a\u0430\u0447\u0430\u0442.\ + \u041d\u044f\u043c\u0430 \u0438 \u0437\u0430\u044f\u0432\u043a\u0438 \u0437\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u0437\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u0438\u0442\u0435,\ + \u0437\u0430\u0442\u043e\u0432\u0430 \u043d\u044f\u043c\u0430 \u0434\u0430 \u0438\u043c\u0430 \u0438 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0438\u044f. +# This schedule will match dates only rarely (e.g. February 29) or \ +# never (e.g. June 31), so this job may be triggered very rarely, if at all. +TimerTrigger.the_specified_cron_tab_is_rare_or_impossible=\ + \u0422\u0435\u0437\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0449\u0435 \u0434\u043e\u0432\u0435\u0434\u0430\u0442 \u0434\u043e \u0438\u0437\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u043d\u043e \u0440\u044f\u0434\u043a\u043e \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0430\u0442\u0430 (\u0441\u0430\u043c\u043e\ + \u043d\u0430 29 \u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438) \u0438\u043b\u0438 \u0434\u043e\u0440\u0438 \u0434\u043e \u043f\u044a\u043b\u043d\u043e \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0438\u044f\u0442\u0430 (\u043d\u0430\u043f\u0440. 31\ + \u044e\u043d\u0438). +# No schedules so will only run due to SCM changes if triggered by a post-commit hook +SCMTrigger.no_schedules_hooks=\ + \u0417\u0430\u044f\u0432\u043a\u0438\u0442\u0435 \u0437\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u0437\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u0438\u0442\u0435 \u0441\u0430\ + \u0438\u0437\u043a\u043b\u044e\u0447\u0435\u043d\u0438, \u0437\u0430\u0442\u043e\u0432\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0438\u044f \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0442 \u0441\u0430\u043c\u043e \u0447\u0440\u0435\u0437 \u043a\u0443\u043a\u0430 \u0437\u0430\ + \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435 \u0441\u043b\u0435\u0434 \u043f\u043e\u0434\u0430\u0432\u0430\u043d\u0435. +# Too Many SCM Polling Threads +SCMTrigger.AdministrativeMonitorImpl.DisplayName=\ + \u041f\u0440\u0435\u043a\u0430\u043b\u0435\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u043d\u0438\u0448\u043a\u0438 \u0437\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u0437\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b \u043d\u0430\ + \u0432\u0435\u0440\u0441\u0438\u0438\u0442\u0435 diff --git a/core/src/main/resources/hudson/triggers/SCMTrigger/AdministrativeMonitorImpl/message_bg.properties b/core/src/main/resources/hudson/triggers/SCMTrigger/AdministrativeMonitorImpl/message_bg.properties new file mode 100644 index 0000000000..14df1b0337 --- /dev/null +++ b/core/src/main/resources/hudson/triggers/SCMTrigger/AdministrativeMonitorImpl/message_bg.properties @@ -0,0 +1,31 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# There are more SCM polling activities scheduled than handled, so \ +# the threads are not keeping up with the demands. \ +# Check if your polling is \ +# hanging, and/or increase the number of threads if necessary. +blurb=\ + \u0417\u0430\u044f\u0432\u043a\u0438\u0442\u0435 \u0437\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u0437\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u0438 \u0441\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442 \u043f\u043e-\u0431\u0430\u0432\u043d\u043e\ + \u043e\u0442\u043a\u043e\u043b\u043a\u043e\u0442\u043e \u0442\u0435 \u043f\u0440\u0438\u0441\u0442\u0438\u0433\u0430\u0442 \u0438 \u043d\u0438\u0448\u043a\u0438\u0442\u0435 \u043d\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u044f\u0442 \u043d\u0443\u0436\u0434\u0438\u0442\u0435. \u041f\u0440\u043e\u0432\u0435\u0440\u0435\u0442\u0435\ + \u0434\u0430\u043b\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438\u0442\u0435 \u043d\u0435 \u0441\u0430 \u0437\u0430\u0431\u0438\u043b\u0438,\ + \u0430 \u0432 \u043f\u0440\u043e\u0442\u0438\u0432\u0435\u043d \u0441\u043b\u0443\u0447\u0430\u0439 \u0443\u0432\u0435\u043b\u0438\u0447\u0430\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0431\u0440\u043e\u044f \u043d\u0430 \u043d\u0438\u0448\u043a\u0438\u0442\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u043f\u043e\u043c\u043e\u0433\u043d\u0435. diff --git a/core/src/main/resources/hudson/triggers/SCMTrigger/BuildAction/index_bg.properties b/core/src/main/resources/hudson/triggers/SCMTrigger/BuildAction/index_bg.properties new file mode 100644 index 0000000000..22d07a35b3 --- /dev/null +++ b/core/src/main/resources/hudson/triggers/SCMTrigger/BuildAction/index_bg.properties @@ -0,0 +1,31 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +View\ as\ plain\ text=\ + \u041f\u0440\u0435\u0433\u043b\u0435\u0434 \u043a\u0430\u0442\u043e \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d \u0442\u0435\u043a\u0441\u0442 +# \ +# This page captures the polling log that triggered this build. +blurb=\ + \u0422\u0430\u0437\u0438 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u044a\u0434\u044a\u0440\u0436\u0430 \u0437\u0430\u044f\u0432\u043a\u0438\u0442\u0435 \u043a\u044a\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u0437\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u0438\u0442\u0435, \u043a\u043e\u0438\u0442\u043e\ + \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0445\u0430 \u0442\u043e\u0432\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435. +Polling\ Log=\ + \u0416\u0443\u0440\u043d\u0430\u043b \u043d\u0430 \u0437\u0430\u044f\u0432\u043a\u0438\u0442\u0435 diff --git a/core/src/main/resources/hudson/triggers/SCMTrigger/DescriptorImpl/index_bg.properties b/core/src/main/resources/hudson/triggers/SCMTrigger/DescriptorImpl/index_bg.properties new file mode 100644 index 0000000000..2fe6b16ed0 --- /dev/null +++ b/core/src/main/resources/hudson/triggers/SCMTrigger/DescriptorImpl/index_bg.properties @@ -0,0 +1,40 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Project=\ + \u041f\u0440\u043e\u0435\u043a\u0442 +Running\ for=\ + \u0418\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 \u0441\u0435 \u043e\u0442 +No\ polling\ activity\ is\ in\ progress.=\ + \u0412 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u043d\u044f\u043c\u0430 \u0437\u0430\u044f\u0432\u043a\u0438 \u0437\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u0437\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u0438\u0442\u0435. +# There are more SCM polling activities scheduled than handled, so \ +# the threads are not keeping up with the demands. Check if your polling is \ +# hanging, and/or increase the number of threads if necessary. +clogged=\ + \u0412 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0437\u0430\u044f\u0432\u043a\u0438\u0442\u0435 \u0437\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0438\u0442\u0435 \u0437\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u0438\u0442\u0435 \u043f\u043e\u0441\u0442\u044a\u043f\u0432\u0430\u0442\ + \u043f\u043e-\u0431\u044a\u0440\u0437\u043e \u043e\u0442\u043a\u043e\u043b\u043a\u043e\u0442\u043e \u0441\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0442 \u0438 \u0441\u0435 \u043d\u0430\u0442\u0440\u0443\u043f\u0432\u0430\u0442. \u041f\u0440\u043e\u0432\u0435\u0440\u0435\u0442\u0435 \u0434\u0430\u043b\u0438 \u0441\u0430\u043c\u0430\u0442\u0430\ + \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0435 \u0435 \u0437\u0430\u0431\u0438\u043b\u0430, \u0430 \u0430\u043a\u043e \u0442\u0440\u044f\u0431\u0432\u0430, \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u0442\u0435 \u0431\u0440\u043e\u044f \u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0432\u0430\u0449\u0438\u0442\u0435 \u043d\u0438\u0448\u043a\u0438. +The\ following\ polling\ activities\ are\ currently\ in\ progress\:=\ + \u0412 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0441\u0435 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u0442 \u0441\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0437\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u0437\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\ + \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u0438\u0442\u0435. +Current\ SCM\ Polling\ Activities=\ + \u0422\u0435\u043a\u0443\u0449\u0438 \u0437\u0430\u044f\u0432\u043a\u0438 \u0437\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u0437\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u0438\u0442\u0435. diff --git a/core/src/main/resources/hudson/triggers/SCMTrigger/config_bg.properties b/core/src/main/resources/hudson/triggers/SCMTrigger/config_bg.properties new file mode 100644 index 0000000000..41e54916b6 --- /dev/null +++ b/core/src/main/resources/hudson/triggers/SCMTrigger/config_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Ignore\ post-commit\ hooks=\ + \u041f\u0440\u0435\u0441\u043a\u0430\u0447\u0430\u043d\u0435 \u043d\u0430 \u043a\u0443\u043a\u0438\u0442\u0435 \u0441\u043b\u0435\u0434 \u043f\u043e\u0434\u0430\u0432\u0430\u043d\u0435 +Schedule=\ + \u041d\u0430\u0441\u0440\u043e\u0447\u0432\u0430\u043d\u0435 diff --git a/core/src/main/resources/hudson/triggers/SCMTrigger/global_bg.properties b/core/src/main/resources/hudson/triggers/SCMTrigger/global_bg.properties new file mode 100644 index 0000000000..bd9243b662 --- /dev/null +++ b/core/src/main/resources/hudson/triggers/SCMTrigger/global_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Max\ \#\ of\ concurrent\ polling=\ + \u041c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u0435\u043d \u0431\u0440\u043e\u0439 \u0435\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0438 \u0437\u0430\u044f\u0432\u043a\u0438 +SCM\ Polling=\ + \u0417\u0430\u044f\u0432\u043a\u0438 \u043a\u044a\u043c \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0430 \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u0438\u0442\u0435 diff --git a/core/src/main/resources/hudson/triggers/TimerTrigger/config_bg.properties b/core/src/main/resources/hudson/triggers/TimerTrigger/config_bg.properties new file mode 100644 index 0000000000..3fef1dcbd8 --- /dev/null +++ b/core/src/main/resources/hudson/triggers/TimerTrigger/config_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Schedule=\ + \u041d\u0430\u0441\u0440\u043e\u0447\u0432\u0430\u043d\u0435 diff --git a/core/src/main/resources/hudson/util/AWTProblem/index_bg.properties b/core/src/main/resources/hudson/util/AWTProblem/index_bg.properties new file mode 100644 index 0000000000..650a6df3fa --- /dev/null +++ b/core/src/main/resources/hudson/util/AWTProblem/index_bg.properties @@ -0,0 +1,29 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +# AWT is not properly configured on this server. Perhaps you need to run your container with "-Djava.awt.headless=true"? See also: https://jenkins.io/redirect/troubleshooting/java.awt.headless +errorMessage=\ + AWT \u043d\u0435 \u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d \u043f\u0440\u0430\u0432\u0438\u043b\u043d\u043e \u043d\u0430 \u0442\u043e\u0437\u0438 \u0441\u044a\u0440\u0432\u044a\u0440. \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0442\u0435\ + \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u0441 \u201e-Djava.awt.headless=true\u201c. \u0412\u0438\u0436\u0442\u0435 \u0438:\ + https://jenkins.io/redirect/troubleshooting/java.awt.headless +Error=\ + \u0413\u0440\u0435\u0448\u043a\u0430 diff --git a/core/src/main/resources/hudson/util/AdministrativeError/message_bg.properties b/core/src/main/resources/hudson/util/AdministrativeError/message_bg.properties new file mode 100644 index 0000000000..de19e68a62 --- /dev/null +++ b/core/src/main/resources/hudson/util/AdministrativeError/message_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +See\ the\ log\ for\ more\ details=\ + \u0417\u0430 \u043f\u043e\u0432\u0435\u0447\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043f\u0440\u0435\u0433\u043b\u0435\u0434\u0430\u0439\u0442\u0435 \u0436\u0443\u0440\u043d\u0430\u043b\u0430. diff --git a/core/src/main/resources/hudson/util/DoubleLaunchChecker/index_bg.properties b/core/src/main/resources/hudson/util/DoubleLaunchChecker/index_bg.properties new file mode 100644 index 0000000000..0d206fb8df --- /dev/null +++ b/core/src/main/resources/hudson/util/DoubleLaunchChecker/index_bg.properties @@ -0,0 +1,40 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# Ignore this problem and keep using Jenkins anyway +label=\ + \u041f\u0440\u0435\u043d\u0435\u0431\u0440\u0435\u0433\u0432\u0430\u043d\u0435 \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430, \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 Jenkins \u043a\u0430\u043a\u0442\u043e \u0432\u0438\u043d\u0430\u0433\u0438 +Other\ Jenkins=\ + \u0414\u0440\u0443\u0433\u0438 \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u0438 \u043d\u0430 Jenkins +This\ Jenkins=\ + \u0422\u0430\u0437\u0438 \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f \u043d\u0430 Jenkins +# \ +# Jenkins detected that you appear to be running more than one \ +# instance of Jenkins that share the same home directory ''{0}\u2019. \ +# This greatly confuses Jenkins and you will likely experience \ +# strange behaviors, so please correct the situation. +message=\ + Jenkins \u0437\u0430\u0441\u0435\u0447\u0435, \u0447\u0435 \u0441\u0442\u0435 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043b\u0438 \u043f\u043e\u0432\u0435\u0447\u0435 \u043e\u0442 \u0435\u0434\u0438\u043d Jenkins \u043e\u0442 \u0435\u0434\u043d\u0430 \u0438 \u0441\u044a\u0449\u0430\ + \u0434\u043e\u043c\u0430\u0448\u043d\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u201e{0}\u201c. \u0422\u043e\u0432\u0430 \u0441\u0438\u043b\u043d\u043e \u043e\u0431\u044a\u0440\u043a\u0432\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0430\u0442\u0430 \u0438 \u0449\u0435 \u0434\u043e\u0432\u0435\u0434\u0435 \u0434\u043e\ + \u043d\u0435\u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0443\u0435\u043c\u043e \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435, \u0437\u0430\u0442\u043e\u0432\u0430 \u043a\u043e\u0440\u0438\u0433\u0438\u0440\u0430\u0439\u0442\u0435 \u0442\u043e\u0437\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c. +Error=\ + \u0413\u0440\u0435\u0448\u043a\u0430 diff --git a/core/src/main/resources/hudson/util/HudsonFailedToLoad/index_bg.properties b/core/src/main/resources/hudson/util/HudsonFailedToLoad/index_bg.properties new file mode 100644 index 0000000000..19062c4b9f --- /dev/null +++ b/core/src/main/resources/hudson/util/HudsonFailedToLoad/index_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Error=\ + \u0413\u0440\u0435\u0448\u043a\u0430 diff --git a/core/src/main/resources/hudson/util/HudsonIsLoading/index_bg.properties b/core/src/main/resources/hudson/util/HudsonIsLoading/index_bg.properties new file mode 100644 index 0000000000..690f556b2e --- /dev/null +++ b/core/src/main/resources/hudson/util/HudsonIsLoading/index_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Your\ browser\ will\ reload\ automatically\ when\ Jenkins\ is\ ready.=\ + \u0411\u0440\u0430\u0443\u0437\u044a\u0440\u044a\u0442 \u0432\u0438 \u0449\u0435 \u0441\u0435 \u043f\u0440\u0435\u0437\u0430\u0440\u0435\u0434\u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e, \u043a\u043e\u0433\u0430\u0442\u043e Jenkins \u0435 \u0433\u043e\u0442\u043e\u0432. +Please\ wait\ while\ Jenkins\ is\ getting\ ready\ to\ work=\ + \u0418\u0437\u0447\u0430\u043a\u0430\u0439\u0442\u0435 \u0434\u043e\u043a\u0430\u0442\u043e Jenkins \u0441\u0442\u0430\u043d\u0435 \u0433\u043e\u0442\u043e\u0432 \u0437\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 diff --git a/core/src/main/resources/hudson/util/HudsonIsRestarting/index_bg.properties b/core/src/main/resources/hudson/util/HudsonIsRestarting/index_bg.properties new file mode 100644 index 0000000000..5fec94d06c --- /dev/null +++ b/core/src/main/resources/hudson/util/HudsonIsRestarting/index_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Please\ wait\ while\ Jenkins\ is\ restarting=\ + \u0418\u0437\u0447\u0430\u043a\u0430\u0439\u0442\u0435 \u0434\u043e\u043a\u0430\u0442\u043e Jenkins \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430 +Your\ browser\ will\ reload\ automatically\ when\ Jenkins\ is\ ready.=\ + \u0411\u0440\u0430\u0443\u0437\u044a\u0440 \u0432\u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0449\u0435 \u043f\u0440\u0435\u0437\u0430\u0440\u0435\u0434\u0438 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0442\u0430, \u043a\u043e\u0433\u0430\u0442\u043e Jenkins \u0435 \u0433\u043e\u0442\u043e\u0432. diff --git a/core/src/main/resources/hudson/util/IncompatibleAntVersionDetected/index_bg.properties b/core/src/main/resources/hudson/util/IncompatibleAntVersionDetected/index_bg.properties new file mode 100644 index 0000000000..d030ed8413 --- /dev/null +++ b/core/src/main/resources/hudson/util/IncompatibleAntVersionDetected/index_bg.properties @@ -0,0 +1,38 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# \ +# We detected that your servlet container is loading an older version of Ant by itself, \ +# thereby preventing Jenkins from loading its own newer copy. \ +# (Ant classes are loaded from {0})
\ +# Perhaps can you override Ant in your container by copying one from Jenkins\u2019s WEB-INF/lib, \ +# or can you set up the classloader delegation to child-first so that Jenkins sees its own copy first? +errorMessage=\ + \u0418\u0437\u0433\u043b\u0435\u0436\u0434\u0430, \u0447\u0435 \u0432\u0430\u0448\u0438\u044f\u0442 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0438 \u0437\u0430 \u0441\u044a\u0440\u0432\u043b\u0435\u0442\u0438 \u0437\u0430\u0440\u0435\u0436\u0434\u0430 \u0441\u0442\u0430\u0440\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u043d\u0430 Ant, \u0430 \u0442\u043e\u0432\u0430\ + \u043f\u0440\u0435\u0447\u0438 \u043d\u0430 Jenkins \u0434\u0430 \u0437\u0430\u0440\u0435\u0434\u0438 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u0430\u0442\u0430 \u0441\u0438 \u0432\u0435\u0440\u0441\u0438\u044f. (\u041a\u043b\u0430\u0441\u043e\u0432\u0435\u0442\u0435 \u043d\u0430 Ant \u0432 \u043c\u043e\u043c\u0435\u043d\u0442\u0430\ + \u0441\u0430 \u0437\u0430\u0440\u0435\u0434\u0435\u043d\u0438 \u043e\u0442 \u201e{0}\u201c)
\ + \u0415\u0434\u0438\u043d \u043e\u0442 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0438\u0442\u0435 \u0435 \u0434\u0430 \u043f\u0440\u0438\u043f\u043e\u043a\u0440\u0438\u0435\u0442\u0435 \u0432\u0435\u0440\u0441\u0438\u044f\u0442\u0430 \u043d\u0430 Ant \u043d\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430, \u043a\u0430\u0442\u043e\ + \u043a\u043e\u043f\u0438\u0440\u0430\u0442\u0435 \u0442\u0430\u0437\u0438 \u043d\u0430 Jenkins \u043e\u0442WEB-INF/lib. \u0414\u0440\u0443\u0433\u0430 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442 \u0435 \u0434\u0430\ + \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u0435 \u0438\u043b\u0438 \u043f\u0440\u0435\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u0438\u0440\u0430\u0442\u0435 \u0437\u0430\u0440\u0435\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043a\u043b\u0430\u0441\u043e\u0432\u0435, \u0442\u0430\u043a\u0430 \u0447\u0435 \u0441 \u043f\u0440\u0435\u0434\u0438\u043c\u0441\u0442\u0432\u043e \u0434\u0430\ + \u0441\u0435 \u043f\u043e\u043b\u0437\u0432\u0430 \u043a\u043e\u043f\u0438\u0435\u0442\u043e \u043d\u0430 Jenkins. +Error=\ + \u0413\u0440\u0435\u0448\u043a\u0430 diff --git a/core/src/main/resources/hudson/util/IncompatibleServletVersionDetected/index_bg.properties b/core/src/main/resources/hudson/util/IncompatibleServletVersionDetected/index_bg.properties new file mode 100644 index 0000000000..c2256e58f8 --- /dev/null +++ b/core/src/main/resources/hudson/util/IncompatibleServletVersionDetected/index_bg.properties @@ -0,0 +1,30 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Error=\ + \u0413\u0440\u0435\u0448\u043a\u0430 +# \ +# We detected that your servlet container does not support Servlet 2.4 \ +# (servlet API is loaded from {0}) +errorMessage=\ + \u0418\u0437\u0433\u043b\u0435\u0436\u0434\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044a\u0442 \u0437\u0430 \u0441\u044a\u0440\u0432\u043b\u0435\u0442\u0438, \u043a\u043e\u0439\u0442\u043e \u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435, \u043d\u0435 \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u0432\u0435\u0440\u0441\u0438\u044f 2.4 \u043d\u0430\ + \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f\u0442\u0430 \u0437\u0430 \u0441\u044a\u0440\u0432\u043b\u0435\u0442\u0438. (API-\u0442\u043e \u0435 \u0437\u0430\u0440\u0435\u0434\u0435\u043d\u043e \u043e\u0442 \u201e{0}\u201c). diff --git a/core/src/main/resources/hudson/util/IncompatibleVMDetected/index_bg.properties b/core/src/main/resources/hudson/util/IncompatibleVMDetected/index_bg.properties new file mode 100644 index 0000000000..870a017c5d --- /dev/null +++ b/core/src/main/resources/hudson/util/IncompatibleVMDetected/index_bg.properties @@ -0,0 +1,44 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Vendor=\ + \u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b +Error=\ + \u0413\u0440\u0435\u0448\u043a\u0430 +VM\ Name=\ + \u0418\u043c\u0435 \u043d\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u043d\u0430\u0442\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 +Detected\ JVM=\ + \u041e\u0442\u043a\u0440\u0438\u0442\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u043d\u0430\u0442\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 \u043d\u0430 Java +OS\ Name=\ + \u0418\u043c\u0435 \u043d\u0430 \u041e\u0421 +# \ +# We detected that your JVM is not supported by Jenkins. \ +# This is due to the limitation is one of the libraries that Jenkins uses, namely XStream. \ +# See this FAQ for more details. +errorMessage=\ + \u0412\u0430\u0448\u0430\u0442\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u043d\u0430\u0442\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 \u0437\u0430 Java \u043d\u0435 \u0441\u0435 \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u043e\u0442 Jenkins. \u0422\u043e\u0432\u0430 \u0435\ + \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0432 \u0435\u0434\u043d\u0430 \u043e\u0442 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438\u0442\u0435, \u043a\u043e\u0438\u0442\u043e Jenkins \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u2014 XStream. \u0417\u0430\ + \u043f\u043e\u0432\u0435\u0447\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043f\u0440\u0435\u0433\u043b\u0435\u0434\u0430\u0439\u0442\u0435\ + \u043e\u0442\u0433\u043e\u0432\u043e\u0440\u0438\u0442\u0435 \u043d\u0430 \u0447\u0435\u0441\u0442\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u043d\u0438\u0442\u0435\ + \u0432\u044a\u043f\u0440\u043e\u0441\u0438 \u0437\u0430 XStream. +Version=\ + \u0412\u0435\u0440\u0441\u0438\u044f diff --git a/core/src/main/resources/hudson/util/InsufficientPermissionDetected/index_bg.properties b/core/src/main/resources/hudson/util/InsufficientPermissionDetected/index_bg.properties new file mode 100644 index 0000000000..8a316a5158 --- /dev/null +++ b/core/src/main/resources/hudson/util/InsufficientPermissionDetected/index_bg.properties @@ -0,0 +1,45 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +# For how to turn off security manager in your container, refer to \ +# \ +# Container-specific documentations of Jenkins. +errorMessage.2=\ + \u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043a\u0430\u043a \u0434\u0430 \u0441\u043f\u0440\u0435\u0442\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u0441\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442\u0442\u0430 (security manager) \u043d\u0430\ + \u0432\u0430\u0448\u0438\u044f \u0443\u0435\u0431 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u0438\u043c\u0430 \u0432\ + \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u0442\u0430\ + \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u043d\u0430 \u0437\u0430 \u043e\u0442\u0434\u0435\u043b\u043d\u0438\u0442\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0438 \u0437\u0430 \u0441\u044a\u0440\u0432\u043b\u0435\u0442\u0438. +# \ +# We detected that Jenkins does not have sufficient permission to run, \ +# as indicated by the stack trace below. Most likely cause of this \ +# problem is that the security manger is on. If that was intended, \ +# you need to grant sufficient permissions for Jenkins to run. Otherwise, \ +# or if you have no idea what a security manager is, then the easiest \ +# way to fix the problem is simply to turn the security manager off. +errorMessage.1=\ + Jenkins \u0437\u0430\u0441\u0435\u0447\u0435, \u0447\u0435 \u043d\u044f\u043c\u0430 \u0434\u043e\u0441\u0442\u0430\u0442\u044a\u0447\u043d\u043e \u043f\u0440\u0430\u0432\u0430, \u0437\u0430 \u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u0438 \u2014 \u043f\u0440\u0435\u0433\u043b\u0435\u0434\u0430\u0439\u0442\u0435 \u0441\u0442\u0435\u043a\u0430\ + \u043e\u0442\u0434\u043e\u043b\u0443. \u041d\u0430\u0439-\u0432\u0435\u0440\u043e\u044f\u0442\u043d\u0430\u0442\u0430 \u043f\u0440\u0438\u0447\u0438\u043d\u0430, \u0435 \u0447\u0435 \u0435 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u0441\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442\u0442\u0430.\ + \u0410\u043a\u043e \u0442\u043e\u0432\u0430 \u0435 \u043d\u0430\u0440\u043e\u0447\u043d\u043e, \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u043c\u0443 \u0434\u0430\u0434\u0435\u0442\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u044a\u0447\u043d\u043e \u043f\u0440\u0430\u0432\u0430. \u0412 \u043f\u0440\u043e\u0442\u0438\u0432\u0435\u043d \u0441\u043b\u0443\u0447\u0430\u0439\ + \u0438\u043b\u0438 \u0430\u043a\u043e \u043f\u043e\u043d\u044f\u0442\u0438\u0435\u0442\u043e \u201esecurity manager\u201c \u043d\u0435 \u0432\u0438 \u0433\u043e\u0432\u043e\u0440\u0438 \u043d\u0438\u0449\u043e, \u043d\u0430\u0439-\u043b\u0435\u0441\u043d\u043e\u0442\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0435\ + \u043f\u0440\u043e\u0441\u0442\u043e \u0434\u0430 \u0438\u0437\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u0441\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442\u0442\u0430. +Error=\ + \u0413\u0440\u0435\u0448\u043a\u0430 diff --git a/core/src/main/resources/hudson/util/JNADoublyLoaded/index_bg.properties b/core/src/main/resources/hudson/util/JNADoublyLoaded/index_bg.properties new file mode 100644 index 0000000000..23ca3bf353 --- /dev/null +++ b/core/src/main/resources/hudson/util/JNADoublyLoaded/index_bg.properties @@ -0,0 +1,31 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +Failed\ to\ load\ JNA=\ + JNA \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0437\u0430\u0440\u0435\u0434\u0438 +# Another instance of JNA is already loaded in another classloader, thereby making it impossible for Jenkins \ +# to load its own copy. See Wiki for more details. +blurb=\ + JNA \u0432\u0435\u0447\u0435 \u0435 \u0437\u0430\u0440\u0435\u0434\u0435\u043d \u043e\u0442 \u0434\u0440\u0443\u0433 \u043a\u043b\u0430\u0441 \u0437\u0430 \u0437\u0430\u0440\u0435\u0436\u0434\u0430\u043d\u0435 \u043d\u0430 \u043a\u043b\u0430\u0441\u043e\u0432\u0435 \u0438 Jenkins \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430\ + \u0437\u0430\u0440\u0435\u0434\u0438 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u0430\u0442\u0430 \u0441\u0438 \u0432\u0435\u0440\u0441\u0438\u044f \u043d\u0430 JNA. \u0417\u0430 \u043f\u043e\u0432\u0435\u0447\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \ + \u043f\u0440\u0435\u0433\u043b\u0435\u0434\u0430\u0439\u0442\u0435 \u0443\u0438\u043a\u0438\u0442\u043e. \ No newline at end of file diff --git a/core/src/main/resources/hudson/util/NoHomeDir/index_bg.properties b/core/src/main/resources/hudson/util/NoHomeDir/index_bg.properties new file mode 100644 index 0000000000..290dcb28c6 --- /dev/null +++ b/core/src/main/resources/hudson/util/NoHomeDir/index_bg.properties @@ -0,0 +1,40 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +# \ +# Unable to create the home directory \u2018{0}\u2019. This is most likely a permission problem. +errorMessage.1=\ + \u0414\u043e\u043c\u0430\u0448\u043d\u0430\u0442\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u201e{0}\u201c \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0431\u044a\u0434\u0435 \u0441\u044a\u0437\u0434\u0430\u0434\u0435\u043d\u0430. \u041d\u0430\u0439-\u0447\u0435\u0441\u0442\u0430\u0442\u0430 \u043f\u0440\u0438\u0447\u0438\u043d\u0430 \u0441\u0430\ + \u043f\u0440\u0430\u0432\u0430\u0442\u0430 \u0437\u0430 \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e \u0444\u0430\u0439\u043b\u043e\u0432\u0435\u0442\u0435. +# \ +# To change the home directory, use JENKINS_HOME environment variable or set the \ +# JENKINS_HOME system property. \ +# See Container-specific documentation \ +# for more details of how to do this. +errorMessage.2=\ + \u041c\u043e\u0436\u0435 \u0434\u0430 \u0441\u043c\u0435\u043d\u0438\u0442\u0435 \u0434\u043e\u043c\u0430\u0448\u043d\u0430\u0442\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u0447\u0440\u0435\u0437 \u043f\u0440\u043e\u043c\u0435\u043d\u043b\u0438\u0432\u0430\u0442\u0430 \u043d\u0430 \u0441\u0440\u0435\u0434\u0430\u0442\u0430\ + JENKINS_HOME \u0438\u043b\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0442\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e \u0441\u044a\u0441 \u0441\u044a\u0449\u043e\u0442\u043e \u0438\u043c\u0435.\ + \u0417\u0430 \u043f\u043e\u0432\u0435\u0447\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043a\u0430\u043a \u0441\u0435 \u043f\u0440\u0430\u0432\u0438 \u0442\u043e\u0432\u0430, \u043f\u0440\u0435\u0433\u043b\u0435\u0434\u0430\u0439\u0442\u0435\ + \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u0442\u0430\ + \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u043d\u0430 \u0437\u0430 \u043e\u0442\u0434\u0435\u043b\u043d\u0438\u0442\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0438 \u0437\u0430 \u0441\u044a\u0440\u0432\u043b\u0435\u0442\u0438. +Error=\ + \u0413\u0440\u0435\u0448\u043a\u0430 diff --git a/core/src/main/resources/hudson/util/NoTempDir/index_bg.properties b/core/src/main/resources/hudson/util/NoTempDir/index_bg.properties new file mode 100644 index 0000000000..72cad82298 --- /dev/null +++ b/core/src/main/resources/hudson/util/NoTempDir/index_bg.properties @@ -0,0 +1,33 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# \ +# Unable to create a temporary file. This is most likely caused by \ +# a mis-configuration of the container. The JVM seems to be told to use \ +# "{0}" as the temporary directory. Does this directory exist and is it writable? +description=\ + \u041d\u0435 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0441\u0435 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0438 \u0444\u0430\u0439\u043b\u043e\u0432\u0435. \u041d\u0430\u0439-\u0447\u0435\u0441\u0442\u0430\u0442\u0430 \u043f\u0440\u0438\u0447\u0438\u043d\u0430 \u0437\u0430 \u0442\u043e\u0432\u0430 \u0435\ + \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u043d\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043d\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u0437\u0430 \u0441\u044a\u0440\u0432\u043b\u0435\u0442\u0438. \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u043d\u0430\u0442\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 \u043d\u0430 Java \u0435\ + \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u201e{0}\u201c \u043a\u0430\u0442\u043e \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u0437\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0438 \u0444\u0430\u0439\u043b\u043e\u0432\u0435. \u041f\u0440\u043e\u0432\u0435\u0440\u0435\u0442\u0435\ + \u0434\u0430\u043b\u0438 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430 \u0438 \u0434\u0430\u043b\u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044a\u0442 \u0438\u043c\u0430 \u043f\u0440\u0430\u0432\u0430 \u0434\u0430 \u043f\u0438\u0448\u0435 \u0432 \u043d\u0435\u044f. +Error=\ + \u0413\u0440\u0435\u0448\u043a\u0430 diff --git a/core/src/main/resources/hudson/views/BuildButtonColumn/column_bg.properties b/core/src/main/resources/hudson/views/BuildButtonColumn/column_bg.properties new file mode 100644 index 0000000000..70955dd6c8 --- /dev/null +++ b/core/src/main/resources/hudson/views/BuildButtonColumn/column_bg.properties @@ -0,0 +1,31 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +# {0} scheduled +Task_scheduled=\ + \u0417\u0430\u043f\u043b\u0430\u043d\u0443\u0432\u0430\u043d\u0435 \u043d\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u201e{0}\u201c +# Schedule a {1} with parameters for {0} +Schedule_a_task_with_parameters=\ + \u0417\u0430\u043f\u043b\u0430\u043d\u0443\u0432\u0430\u043d\u0435 \u043d\u0430 \u0438\u0437\u043f\u044a\u043b\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u201e{1}\u201c \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438 \u0437\u0430 {0} +# Schedule a {1} for {0} +Schedule_a_task=\ + \u0417\u0430\u043f\u043b\u0430\u043d\u0443\u0432\u0430\u043d\u0435 \u043d\u0430 \u201e{1}\u201c \u0437\u0430 {0} diff --git a/core/src/main/resources/hudson/views/Messages_bg.properties b/core/src/main/resources/hudson/views/Messages_bg.properties index 69a1733513..a16086b9cc 100644 --- a/core/src/main/resources/hudson/views/Messages_bg.properties +++ b/core/src/main/resources/hudson/views/Messages_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -40,3 +40,6 @@ DefaultViewsTabsBar.DisplayName=\ \u041b\u0435\u043d\u0442\u0430 \u0437\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0438\u0442\u0435 \u0438\u0437\u0433\u043b\u0435\u0434\u0438 DefaultMyViewsTabsBar.DisplayName=\ \u041b\u0435\u043d\u0442\u0430 \u0437\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0438\u0442\u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0441\u043a\u0438 \u0438\u0437\u0433\u043b\u0435\u0434\u0438 +# The specified view does not exist: {0} +GlobalDefaultViewConfiguration.ViewDoesNotExist=\ + \u0423\u043a\u0430\u0437\u0430\u043d\u0438\u044f\u0442 \u0438\u0437\u0433\u043b\u0435\u0434 \u043d\u0435 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430: {0} diff --git a/core/src/main/resources/hudson/views/StatusColumn/columnHeader_bg.properties b/core/src/main/resources/hudson/views/StatusColumn/columnHeader_bg.properties index 2eec4596f7..b109304037 100644 --- a/core/src/main/resources/hudson/views/StatusColumn/columnHeader_bg.properties +++ b/core/src/main/resources/hudson/views/StatusColumn/columnHeader_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal diff --git a/core/src/main/resources/hudson/views/WeatherColumn/columnHeader_bg.properties b/core/src/main/resources/hudson/views/WeatherColumn/columnHeader_bg.properties index e956271eda..08c776faa8 100644 --- a/core/src/main/resources/hudson/views/WeatherColumn/columnHeader_bg.properties +++ b/core/src/main/resources/hudson/views/WeatherColumn/columnHeader_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal diff --git a/core/src/main/resources/hudson/widgets/HistoryWidget/entry_bg.properties b/core/src/main/resources/hudson/widgets/HistoryWidget/entry_bg.properties index 210cd27a86..590e356ec8 100644 --- a/core/src/main/resources/hudson/widgets/HistoryWidget/entry_bg.properties +++ b/core/src/main/resources/hudson/widgets/HistoryWidget/entry_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -22,3 +22,6 @@ Console\ Output=\ \u041a\u043e\u043d\u0437\u043e\u043b\u0435\u043d \u0438\u0437\u0445\u043e\u0434 +# Are you sure you want to abort {0}? +confirm=\ + \u0421\u0438\u0433\u0443\u0440\u043d\u0438 \u043b\u0438 \u0441\u0442\u0435, \u0447\u0435 \u0438\u0441\u043a\u0430\u0442\u0435 \u0434\u0430 \u043f\u0440\u0435\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 {0}? diff --git a/core/src/main/resources/jenkins/CLI/WarnWhenEnabled/message_bg.properties b/core/src/main/resources/jenkins/CLI/WarnWhenEnabled/message_bg.properties new file mode 100644 index 0000000000..076efa540f --- /dev/null +++ b/core/src/main/resources/jenkins/CLI/WarnWhenEnabled/message_bg.properties @@ -0,0 +1,36 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +# \ +# Allowing Jenkins CLI to work in -remoting mode is considered dangerous and usually unnecessary. \ +# You are advised to disable this mode. \ +# Please refer to the CLI documentation for details. +blurb=\ + \u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043e\u043f\u0446\u0438\u044f\u0442\u0430 -remoting \u0437\u0430 \u043d\u0435\u0437\u0430\u0449\u0438\u0442\u0435\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u0437\ + \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u0440\u0435\u0434 \u0441\u0435 \u0441\u0447\u0438\u0442\u0430 \u0437\u0430 \u043e\u043f\u0430\u0441\u043d\u043e \u0438 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0435 \u043d\u0435\u043d\u0443\u0436\u043d\u043e. \u0421\u044a\u0432\u0435\u0442\u0432\u0430\u043c\u0435 \u0432\u0438 \u0434\u0430\ + \u0438\u0437\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0442\u043e\u0437\u0438 \u0440\u0435\u0436\u0438\u043c. \u0417\u0430 \u043f\u043e\u0432\u0435\u0447\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0432\u0438\u0436\u0442\u0435\ + \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u0442\u0430 \u0437\u0430\ + \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u0440\u0435\u0434. +Dismiss=\ + \u0411\u0435\u0437 \u0438\u0437\u043a\u043b\u044e\u0447\u0432\u0430\u043d\u0435 +Disable\ CLI\ over\ Remoting=\ + \u0418\u0437\u043a\u043b\u044e\u0447\u0432\u0430\u043d\u0435 \u043d\u0430 \u043d\u0435\u0437\u0430\u0449\u0438\u0442\u0435\u043d\u043e\u0442\u043e \u043e\u0442\u0434\u0430\u043b\u0435\u0447\u0435\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u0437 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u0440\u0435\u0434 diff --git a/core/src/main/resources/jenkins/CLI/config_bg.properties b/core/src/main/resources/jenkins/CLI/config_bg.properties new file mode 100644 index 0000000000..a5022de96b --- /dev/null +++ b/core/src/main/resources/jenkins/CLI/config_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +CLI=\ + \u041a\u043e\u043c\u0430\u043d\u0434\u0435\u043d \u0440\u0435\u0434 +Enable\ CLI\ over\ Remoting=\ + \u041d\u0435\u0437\u0430\u0449\u0438\u0442\u0435\u043d\u043e \u043e\u0442\u0434\u0430\u043b\u0435\u0447\u0435\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u0437 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u0440\u0435\u0434 diff --git a/core/src/main/resources/jenkins/diagnosis/HsErrPidList/index_bg.properties b/core/src/main/resources/jenkins/diagnosis/HsErrPidList/index_bg.properties new file mode 100644 index 0000000000..53f10d048f --- /dev/null +++ b/core/src/main/resources/jenkins/diagnosis/HsErrPidList/index_bg.properties @@ -0,0 +1,44 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +# {0} ago +ago=\ + \u041f\u0440\u0435\u0434\u0438 {0} +# The following JVM crash reports are found for this Jenkins instance. \ +# If you think this is a problem in Jenkins, please report it. \ +# Jenkins relies on some heuristics to find these files. For more reliable discovery, please consider adding \ +# -XX:ErrorFile=/path/to/hs_err_pid%p.log as your JVM argument. +blurb=\ + \u041d\u0430 \u0442\u0430\u0437\u0438 \u043c\u0430\u0448\u0438\u043d\u0430 \u043d\u0430 Jenkins \u0438\u043c\u0430 \u0441\u043b\u0435\u0434\u043d\u0438\u0442\u0435 \u0434\u043e\u043a\u043b\u0430\u0434\u0438 \u0437\u0430 \u0437\u0430\u0431\u0438\u0432\u0430\u043d\u0438\u044f \u043d\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u043d\u0430\u0442\u0430\ + \u043c\u0430\u0448\u0438\u043d\u0430 \u043d\u0430 Java. \u0410\u043a\u043e \u0441\u0447\u0438\u0442\u0430\u0442\u0435, \u0447\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044a\u0442 \u0435 \u0432 Jenkins, \u043c\u043e\u043b\u0438\u043c \u043f\u043e\u0434\u0430\u0439\u0442\u0435\ + \u0434\u043e\u043a\u043b\u0430\u0434 \u0437\u0430 \u0433\u0440\u0435\u0448\u043a\u0430.\ + \u0417\u0430 \u043e\u0442\u043a\u0440\u0438\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0442\u0430\u043a\u0438\u0432\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u0435 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u043c\u0430\u043b\u043a\u043e \u0435\u0432\u0440\u0438\u0441\u0442\u0438\u043a\u0430. \u0417\u0430 \u043f\u043e-\u043d\u0430\u0434\u0435\u0436\u0434\u043d\u043e\ + \u043e\u0442\u043a\u0440\u0438\u0432\u0430\u043d\u0435, \u0434\u043e\u0431\u0430\u0432\u0435\u0442\u0435 \u201e-XX:ErrorFile=/path/to/hs_err_pid%p.log\u201c \u043a\u0430\u0442\u043e\ + \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u0437\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u043d\u0430\u0442\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 \u043d\u0430 Java. +Name=\ + \u0418\u043c\u0435 +Date=\ + \u0414\u0430\u0442\u0430 +Java\ VM\ Crash\ Reports=\ + \u0414\u043e\u043a\u043b\u0430\u0434\u0438 \u0437\u0430 \u0437\u0430\u0431\u0438\u0432\u0430\u043d\u0438\u044f\u0442\u0430 \u043d\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u043d\u0430\u0442\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 \u043d\u0430 Java +Delete=\ + \u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043d\u0435 diff --git a/core/src/main/resources/jenkins/diagnosis/HsErrPidList/message_bg.properties b/core/src/main/resources/jenkins/diagnosis/HsErrPidList/message_bg.properties new file mode 100644 index 0000000000..2b98427425 --- /dev/null +++ b/core/src/main/resources/jenkins/diagnosis/HsErrPidList/message_bg.properties @@ -0,0 +1,25 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# This Jenkins appears to have crashed. Please check the logs. +blurb=\ + \u0418\u0437\u0433\u043b\u0435\u0436\u0434\u0430, \u0447\u0435 \u0442\u043e\u0437\u0438 Jenkins \u0435 \u0437\u0430\u0431\u0438\u043b. \u041f\u0440\u0435\u0433\u043b\u0435\u0434\u0430\u0439\u0442\u0435 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0442\u0435. diff --git a/core/src/main/resources/jenkins/diagnostics/CompletedInitializationMonitor/message_bg.properties b/core/src/main/resources/jenkins/diagnostics/CompletedInitializationMonitor/message_bg.properties new file mode 100644 index 0000000000..b43ada8efc --- /dev/null +++ b/core/src/main/resources/jenkins/diagnostics/CompletedInitializationMonitor/message_bg.properties @@ -0,0 +1,46 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +# Jenkins initialization has not reached the COMPLETED initialization milestone after the configuration reload. \ +# Current state is: \"{0}\". \ +# Such invalid state may cause undefined incorrect behavior of Jenkins plugins. \ +# It is likely an issue with the jenkins initialization or reloading task graph. +blurb=\ + \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 \u043d\u0430 Jenkins \u043d\u0435 \u0441\u0442\u0438\u0433\u043d\u0430 \u0435\u0442\u0430\u043f\u0430 \u201eCOMPLETED\u201c (\u0437\u0430\u0432\u044a\u0440\u0448\u0435\u043d\u0430) \u0441\u043b\u0435\u0434\ + \u043f\u0440\u0435\u0437\u0430\u0440\u0435\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u0442\u0435. \u0422\u0435\u043a\u0443\u0449\u043e\u0442\u043e \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0435 \u201e{0}\u201c. \u0422\u043e\u0432\u0430 \u0441\u044a\u0441\u0442\u043e\u044f\u043d\u0438\u0435\ + \u043c\u043e\u0436\u0435 \u0434\u0430 \u0434\u043e\u0432\u0435\u0434\u0435 \u0434\u043e \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u043d\u043e \u0438\u043b\u0438 \u043d\u0435\u043e\u0447\u0430\u043a\u0432\u0430\u043d\u043e \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0438\u0442\u0435.\ + \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e \u0442\u043e\u0432\u0430 \u0435 \u0441\u043b\u0435\u0434\u0441\u0442\u0432\u0438\u0435 \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0432 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 \u043d\u0430 Jenkin \u0438\u043b\u0438\ + \u043f\u0440\u0435\u0437\u0430\u0440\u0435\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0433\u0440\u0430\u0444\u0430 \u0441\u044a\u0441 \u0437\u0430\u0434\u0430\u0447\u0438\u0442\u0435. +Warning!=\ + \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435! +See\ documentation=\ + \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f +report\ a\ bug=\ + \u0414\u043e\u043a\u043b\u0430\u0434 \u0437\u0430 \u0433\u0440\u0435\u0448\u043a\u0430 +in\ a\ plugin=\ + \u0432 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0430 +Example\:\ usage\ of=\ + \u041f\u0440\u0438\u043c\u0435\u0440\u043d\u043e: \u0443\u043f\u043e\u0442\u0440\u0435\u0431\u0430 \u043d\u0430 +in\ the\ Jenkins\ bugtracker=\ + \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430 \u0437\u0430 \u0433\u0440\u0435\u0448\u043a\u0438 \u043d\u0430 Jenkins +Please=\ + \u041c\u043e\u043b\u0438\u043c diff --git a/core/src/main/resources/jenkins/diagnostics/Messages_bg.properties b/core/src/main/resources/jenkins/diagnostics/Messages_bg.properties new file mode 100644 index 0000000000..068b63402d --- /dev/null +++ b/core/src/main/resources/jenkins/diagnostics/Messages_bg.properties @@ -0,0 +1,31 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +# Check URI Encoding +URICheckEncodingMonitor.DisplayName=\ + \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u043a\u043e\u0434\u0438\u0440\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0430\u0434\u0440\u0435\u0441\u0438\u0442\u0435 +# Disabled Security +SecurityIsOffMonitor.DisplayName=\ + \u0421\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442\u0442\u0430 \u0435 \u0438\u0437\u043a\u043b\u044e\u0447\u0435\u043d\u0430 +# Jenkins Initialization Monitor +CompletedInitializationMonitor.DisplayName=\ + \u041c\u043e\u043d\u0438\u0442\u043e\u0440 \u043d\u0430 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 \u043d\u0430 Jenkins diff --git a/core/src/main/resources/jenkins/diagnostics/SecurityIsOffMonitor/message_bg.properties b/core/src/main/resources/jenkins/diagnostics/SecurityIsOffMonitor/message_bg.properties new file mode 100644 index 0000000000..cd8e0e03ac --- /dev/null +++ b/core/src/main/resources/jenkins/diagnostics/SecurityIsOffMonitor/message_bg.properties @@ -0,0 +1,32 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Dismiss=\ + \u041e\u0442\u043a\u0430\u0437 +Setup\ Security=\ + \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u0432\u0430\u043d\u0435 \u043d\u0430 \u0441\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442\u0442\u0430 +# Unsecured Jenkins allows anyone on the network to launch processes on your behalf. \ +# Consider at least enabling authentication to discourage misuse. +blurb=\ + Jenkins, \u043a\u043e\u0439\u0442\u043e \u0435 \u0431\u0435\u0437 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u0441\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043d\u0430 \u043b\u0438\u0446\u0430 \u043f\u043e \u043c\u0440\u0435\u0436\u0430\u0442\u0430 \u0434\u0430\ + \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0438 \u043e\u0442 \u0432\u0430\u0448\u0435 \u0438\u043c\u0435. \u041d\u0430\u043f\u0440\u0430\u0432\u0435\u0442\u0435 \u043f\u043e\u043d\u0435 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f\u0442\u0430 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u043d\u0430, \u0437\u0430\ + \u0434\u0430 \u0437\u0430\u0442\u0440\u0443\u0434\u043d\u0438\u0442\u0435 \u0442\u043e\u0432\u0430. diff --git a/core/src/main/resources/jenkins/install/SetupWizard/authenticate-security-token_bg.properties b/core/src/main/resources/jenkins/install/SetupWizard/authenticate-security-token_bg.properties new file mode 100644 index 0000000000..23f4e20b9a --- /dev/null +++ b/core/src/main/resources/jenkins/install/SetupWizard/authenticate-security-token_bg.properties @@ -0,0 +1,51 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# Administrator password +authenticate-security-token.password.administrator=\ + \u041f\u0430\u0440\u043e\u043b\u0430 \u043d\u0430 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430 +# Continue +authenticate-security-token.continue=\ + \u041d\u0430\u0442\u0430\u0442\u044a\u043a +# ERROR: +authenticate-security-token.error=\ + \u0413\u0420\u0415\u0428\u041a\u0410: +# The password entered is incorrect, please check the file for the correct password +authenticate-security-token.password.incorrect=\ + \u0412\u044a\u0432\u0435\u0434\u0435\u043d\u0430\u0442\u0430 \u043f\u0430\u0440\u043e\u043b\u0430 \u0435 \u0433\u0440\u0435\u0448\u043d\u0430. \u041f\u0440\u043e\u0432\u0435\u0440\u0435\u0442\u0435 \u0437\u0430 \u0432\u044f\u0440\u043d\u0430\u0442\u0430 \u0432\u044a\u0432 \u0444\u0430\u0439\u043b\u0430. +# Unlock Jenkins +authenticate-security-token.unlock.jenkins=\ + \u041e\u0442\u043a\u043b\u044e\u0447\u0432\u0430\u043d\u0435 \u043d\u0430 Jenkins +# To ensure Jenkins is securely set up by the administrator, \ +# a password has been written to the log (not sure where to find it?) and this file on the server:

{0}

+jenkins.install.findSecurityTokenMessage=\ + \u0417\u0430 \u0434\u0430 \u0431\u044a\u0434\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d Jenkins \u043e\u0442 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440, \u0431\u0435 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0430\u043d\u0430 \u043f\u0430\u0440\u043e\u043b\u0430, \u043a\u043e\u044f\u0442\u043e \u0435\ + \u0437\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u0432 \u0436\u0443\u0440\u043d\u0430\u043b\u0430 (\u0430\u043a\u043e \u043d\u0435 \u0437\u043d\u0430\u0435\u0442\u0435 \u043a\u044a\u0434\u0435 \u0435 \u0442\u043e\u0439: \u0432\u0438\u0436\u0442\u0435\ + \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u0442\u0430), \u043a\u0430\u043a\u0442\u043e \u0438 \u0432 \u0442\u043e\u0437\u0438 \u0444\u0430\u0439\u043b \u043d\u0430 \u0441\u044a\u0440\u0432\u044a\u0440\u0430:\ + \u201e

{0}

\u201c +# Getting Started +authenticate-security-token.getting.started=\ + \u041d\u0430\u0447\u0430\u043b\u043e +# Please copy the password from either location and paste it below. +authenticate-security-token.copy.password=\ + \u041a\u043e\u043f\u0438\u0440\u0430\u0439\u0442\u0435 \u043f\u0430\u0440\u043e\u043b\u0430\u0442\u0430 \u043e\u0442 \u043d\u044f\u043a\u043e\u0439 \u043e\u0442 \u043f\u043e\u0441\u043e\u0447\u0435\u043d\u0438\u0442\u0435 \u0444\u0430\u0439\u043b\u043e\u0432\u0435 \u0438 \u044f \u043d\u0430\u043f\u0438\u0448\u0435\u0442\u0435 \u043e\u0442\u0434\u043e\u043b\u0443. diff --git a/core/src/main/resources/jenkins/install/SetupWizard/proxy-configuration_bg.properties b/core/src/main/resources/jenkins/install/SetupWizard/proxy-configuration_bg.properties new file mode 100644 index 0000000000..f2171f0ec3 --- /dev/null +++ b/core/src/main/resources/jenkins/install/SetupWizard/proxy-configuration_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +HTTP\ Proxy\ Configuration=\ + \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043d\u0430 \u0441\u044a\u0440\u0432\u044a\u0440-\u043f\u043e\u0441\u0440\u0435\u0434\u043d\u0438\u043a \u0437\u0430 HTTP diff --git a/core/src/main/resources/jenkins/install/SetupWizard/setupWizardFirstUser_bg.properties b/core/src/main/resources/jenkins/install/SetupWizard/setupWizardFirstUser_bg.properties new file mode 100644 index 0000000000..86e2c8162e --- /dev/null +++ b/core/src/main/resources/jenkins/install/SetupWizard/setupWizardFirstUser_bg.properties @@ -0,0 +1,25 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# Create First Admin User +Create\ First\ Admin\ User=\ + \u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u043f\u044a\u0440\u0432\u0438\u044f \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 diff --git a/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_bg.properties b/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_bg.properties new file mode 100644 index 0000000000..fb0da55906 --- /dev/null +++ b/core/src/main/resources/jenkins/install/UpgradeWizard/client-scripts_bg.properties @@ -0,0 +1,31 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# \u0020to get the new features +msg.after=\ + , \u0437\u0430 \u0434\u0430 \u0441\u0435 \u0441\u0434\u043e\u0431\u0438\u0435\u0442\u0435 \u0441 \u043d\u043e\u0432\u0438\u0442\u0435 \u0432\u044a\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 +# Upgrade now +msg.link=\ + \u041e\u0431\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435 +# Welcome to Jenkins 2!\u0020 +msg.before=\ + \u0414\u043e\u0431\u0440\u0435 \u0434\u043e\u0448\u043b\u0438 \u0432 Jenkins 2!\u0020 diff --git a/core/src/main/resources/jenkins/management/AdministrativeMonitorsDecorator/footer_bg.properties b/core/src/main/resources/jenkins/management/AdministrativeMonitorsDecorator/footer_bg.properties new file mode 100644 index 0000000000..2b8a1cd9cb --- /dev/null +++ b/core/src/main/resources/jenkins/management/AdministrativeMonitorsDecorator/footer_bg.properties @@ -0,0 +1,27 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +# There are {0} active administrative monitors. +tooltip=\ + \u0412 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0438\u043c\u0430 {0} \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u044f. +Manage\ Jenkins=\ + \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 Jenkins diff --git a/core/src/main/resources/jenkins/management/Messages_bg.properties b/core/src/main/resources/jenkins/management/Messages_bg.properties index b605e22c46..22a399bbfd 100644 --- a/core/src/main/resources/jenkins/management/Messages_bg.properties +++ b/core/src/main/resources/jenkins/management/Messages_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -83,3 +83,6 @@ ConfigureTools.Description=\ # Global Tool Configuration ConfigureTools.DisplayName=\ \u041e\u0431\u0449\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043d\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0438\u0442\u0435 +# Administrative Monitors Notifier +AdministrativeMonitorsDecorator.DisplayName=\ + \u0418\u0437\u0432\u0435\u0441\u0442\u0438\u044f \u0437\u0430 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u044f diff --git a/core/src/main/resources/jenkins/management/PluginsLink/info_bg.properties b/core/src/main/resources/jenkins/management/PluginsLink/info_bg.properties new file mode 100644 index 0000000000..2f4386fad5 --- /dev/null +++ b/core/src/main/resources/jenkins/management/PluginsLink/info_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +updates\ available=\ + \u043d\u0430\u043b\u0438\u0447\u043d\u0438 \u0441\u0430 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f diff --git a/core/src/main/resources/jenkins/model/BuildDiscarderProperty/config-details_bg.properties b/core/src/main/resources/jenkins/model/BuildDiscarderProperty/config-details_bg.properties new file mode 100644 index 0000000000..7a53d880a7 --- /dev/null +++ b/core/src/main/resources/jenkins/model/BuildDiscarderProperty/config-details_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Strategy=\ + \u0421\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044f diff --git a/core/src/main/resources/jenkins/model/DownloadSettings/Warning/message_bg.properties b/core/src/main/resources/jenkins/model/DownloadSettings/Warning/message_bg.properties new file mode 100644 index 0000000000..9ad0da03e4 --- /dev/null +++ b/core/src/main/resources/jenkins/model/DownloadSettings/Warning/message_bg.properties @@ -0,0 +1,33 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# \ +# You currently are using browser-based download to retrieve metadata for Jenkins plugins and tools. \ +# This has reliability issues and is not considered fully secure. \ +# Consider switching to server-based download. +blurb=\ + \u0412 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0438\u0437\u0442\u0435\u0433\u043b\u044f\u043d\u0435 \u043d\u0430 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u0437\u0430 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0438\u0442\u0435 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0438\u0442\u0435 \u043d\u0430\ + Jenkins \u043f\u0440\u0435\u0437 \u0431\u0440\u0430\u0443\u0437\u044a\u0440\u0430. \u0422\u043e\u0432\u0430 \u043d\u0435 \u0435 \u0441\u044a\u0432\u0441\u0435\u043c \u043d\u0430\u0434\u0435\u0436\u0434\u043d\u043e, \u0430 \u0438 \u043d\u0435 \u0435 \u0441\u044a\u0432\u0441\u0435\u043c \u0441\u0438\u0433\u0443\u0440\u043d\u043e.\ + \u041f\u043e\u043c\u0438\u0441\u043b\u0435\u0442\u0435 \u0437\u0430 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u043d\u0430 \u0438\u0437\u0442\u0435\u0433\u043b\u044f\u043d\u0438\u044f \u043f\u0440\u0435\u0437\ + \u0441\u044a\u0440\u0432\u044a\u0440\u0430. +Dismiss=\ + \u041e\u0442\u043a\u0430\u0437 diff --git a/core/src/main/resources/jenkins/model/Jenkins/EnforceSlaveAgentPortAdministrativeMonitor/message_bg.properties b/core/src/main/resources/jenkins/model/Jenkins/EnforceSlaveAgentPortAdministrativeMonitor/message_bg.properties new file mode 100644 index 0000000000..9a2eee5fff --- /dev/null +++ b/core/src/main/resources/jenkins/model/Jenkins/EnforceSlaveAgentPortAdministrativeMonitor/message_bg.properties @@ -0,0 +1,29 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov +# +# 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. + +# JNLP Agent Port has been changed but was specified through system property {0} on startup. Its value will be reset to {1,number,#} on restart. +description=\ + \u041f\u043e\u0440\u0442\u044a\u0442 \u0437\u0430 \u0430\u0433\u0435\u043d\u0442\u0430 \u043f\u043e JNLP \u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u0435\u043d \u0447\u0440\u0435\u0437 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0442\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e \u201e{0}\u201c \u043f\u0440\u0438\ + \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435. \u0421\u0442\u043e\u0439\u043d\u043e\u0441\u0442\u0442\u0430 \u0449\u0435 \u0431\u044a\u0434\u0435 \u0432\u044a\u0440\u043d\u0430\u0442\u0430 \u043d\u0430 {1,number,#} \u043f\u0440\u0438 \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435. +# Reset to {0,number,#} +reset=\ + \u0412\u0440\u044a\u0449\u0430\u043d\u0435 \u043d\u0430 {0,number,#} diff --git a/core/src/main/resources/jenkins/model/Jenkins/MasterComputer/configure_bg.properties b/core/src/main/resources/jenkins/model/Jenkins/MasterComputer/configure_bg.properties new file mode 100644 index 0000000000..2b04ba83b1 --- /dev/null +++ b/core/src/main/resources/jenkins/model/Jenkins/MasterComputer/configure_bg.properties @@ -0,0 +1,32 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Node\ Properties=\ + \u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043d\u0430 \u043c\u0430\u0448\u0438\u043d\u0430\u0442\u0430 +\#\ of\ executors=\ + \u0411\u0440\u043e\u0439 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u0449\u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0438 +Description=\ + \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 +Save=\ + \u0417\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435 +Labels=\ + \u0415\u0442\u0438\u043a\u0435\u0442\u0438 diff --git a/core/src/main/resources/jenkins/model/Messages_bg.properties b/core/src/main/resources/jenkins/model/Messages_bg.properties index 3079bce9c2..264a216106 100644 --- a/core/src/main/resources/jenkins/model/Messages_bg.properties +++ b/core/src/main/resources/jenkins/model/Messages_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -111,3 +111,9 @@ CLI.disable-job.shortDescription=\ \u0418\u0437\u043a\u043b\u044e\u0447\u0432\u0430\u043d\u0435 \u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0430. CLI.enable-job.shortDescription=\ \u0412\u043a\u043b\u044e\u0447\u0432\u0430\u043d\u0435 \u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0430. +# Browser-based metadata download +DownloadSettings.Warning.DisplayName=\ + \u0418\u0437\u0442\u0435\u0433\u043b\u044f\u043d\u0430 \u043d\u0430 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u0438\u0442\u0435 \u0447\u0440\u0435\u0437 \u0431\u0440\u0430\u0443\u0437\u044a\u0440 +# Enforce JNLP Slave Agent Port +EnforceSlaveAgentPortAdministrativeMonitor.displayName=\ + \u041a\u043e\u043d\u043a\u0440\u0435\u0442\u0435\u043d \u043f\u043e\u0440\u0442 \u0437\u0430 JNLP \u043d\u0430 \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u043f\u044e\u0442\u044a\u0440 diff --git a/core/src/main/resources/jenkins/model/RunIdMigrator/UnmigrationInstruction/index_bg.properties b/core/src/main/resources/jenkins/model/RunIdMigrator/UnmigrationInstruction/index_bg.properties new file mode 100644 index 0000000000..ac1e83ceae --- /dev/null +++ b/core/src/main/resources/jenkins/model/RunIdMigrator/UnmigrationInstruction/index_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Copied=\ + \u041a\u043e\u043f\u0438\u0440\u0430\u043d\u043e diff --git a/core/src/main/resources/jenkins/model/identity/IdentityRootAction/index_bg.properties b/core/src/main/resources/jenkins/model/identity/IdentityRootAction/index_bg.properties new file mode 100644 index 0000000000..0dce3bcc38 --- /dev/null +++ b/core/src/main/resources/jenkins/model/identity/IdentityRootAction/index_bg.properties @@ -0,0 +1,37 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# Every Jenkins instance has a pair of public and private keys used to uniquely identify that Jenkins instance. \ +# The public key is published in the X-Instance-Identity header for web requests against the Jenkins UI. \ +# You can also find the key and the fingerprint of the key on this page. +blurb=\ + \u0412\u0441\u044f\u043a\u0430 \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f \u043d\u0430 Jenkins \u0438\u043c\u0430 \u0434\u0432\u043e\u0439\u043a\u0430 \u043f\u0443\u0431\u043b\u0438\u0447\u0435\u043d \u0438 \u0447\u0430\u0441\u0442\u0435\u043d \u043a\u043b\u044e\u0447, \u043a\u043e\u0438\u0442\u043e \u0441\u0430\ + \u0443\u043d\u0438\u043a\u0430\u043b\u043d\u0438 \u0438 \u0441\u043b\u0443\u0436\u0430\u0442 \u0437\u0430 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f. \u041f\u0443\u0431\u043b\u0438\u0447\u043d\u0438\u044f\u0442 \u043a\u043b\u044e\u0447 \u0441\u0435 \u0438\u0437\u0432\u0435\u0436\u0434\u0430 \u0432 \u0437\u0430\u0433\u043b\u0430\u0432\u043d\u0430\u0442\u0430\ + \u0447\u0430\u0441\u0442 X-Instance-Identity \u043d\u0430 \u043e\u0442\u0433\u043e\u0432\u043e\u0440\u0430 \u043a\u044a\u043c \u0432\u0441\u044f\u043a\u0430 \u0437\u0430\u044f\u0432\u043a\u0430 \u043a\u044a\u043c \u0443\u0435\u0431\ + \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u043d\u0430 Jenkins. \u041a\u043b\u044e\u0447\u044a\u0442 \u0438 \u043d\u0435\u0433\u043e\u0432\u0438\u044f\u0442 \u043e\u0442\u043f\u0435\u0447\u0430\u0442\u044a\u043a \u0441\u0430 \u0434\u0430\u0434\u0435\u043d\u0438 \u0438 \u043d\u0430 \u0442\u0435\u043a\u0443\u0449\u0430\u0442\u0430 \u0443\u0435\u0431\ + \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430. +Public\ Key=\ + \u041f\u0443\u0431\u043b\u0438\u0447\u0435\u043d \u043a\u043b\u044e\u0447 +Fingerprint=\ + \u041e\u0442\u043f\u0435\u0447\u0430\u0442\u044a\u043a +Instance\ Identity=\ + \u0418\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u043e\u0441\u0442 \u043d\u0430 Jenkins diff --git a/core/src/main/resources/jenkins/model/item_category/Messages_bg.properties b/core/src/main/resources/jenkins/model/item_category/Messages_bg.properties new file mode 100644 index 0000000000..15af22fd70 --- /dev/null +++ b/core/src/main/resources/jenkins/model/item_category/Messages_bg.properties @@ -0,0 +1,42 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +# Create projects with a self-contained configuration and history. These projects can be at the top-level or grouped within folders. +StandaloneProjects.Description=\ + \u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442 \u0441 \u043e\u0442\u0434\u0435\u043b\u043d\u0430 \u0438\u0441\u0442\u043e\u0440\u0438\u044f \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438. \u0422\u0435\u0437\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438 \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442\ + \u043d\u0430 \u043d\u0430\u0439-\u0433\u043e\u0440\u043d\u043e \u043d\u0438\u0432\u043e \u0438\u043b\u0438 \u0434\u0430 \u0441\u0430 \u0433\u0440\u0443\u043f\u0438\u0440\u0430\u043d\u0438 \u043f\u043e \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438. +# Uncategorized +Uncategorized.DisplayName=\ + \u0411\u0435\u0437 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u044f +# Standalone Projects +StandaloneProjects.DisplayName=\ + \u0421\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u043d\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438 +# Nested Projects +NestedProjects.DisplayName=\ + \u041f\u043e\u0434\u043f\u0440\u043e\u0435\u043a\u0442\u0438 +# Item types that have not yet been categorized by their plugin maintainer. +Uncategorized.Description=\ + \u041f\u0440\u043e\u0435\u043a\u0442\u0438, \u043a\u043e\u0438\u0442\u043e \u043d\u0435 \u0441\u0430 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0437\u0438\u0440\u0430\u043d\u0438 \u043e\u0442 \u0441\u044a\u0437\u0434\u0430\u0442\u0435\u043b\u044f \u043d\u0430 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0430\u0442\u0430 \u0438\u043c. +# Create project categories or project hierarchies with folders. Folders can be created manually or automatically based on repositories. +NestedProjects.Description=\ + \u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438 \u0438\u043b\u0438 \u0439\u0435\u0440\u0430\u0440\u0445\u0438\u044f \u043e\u0442 \u043f\u0430\u043f\u043a\u0438. \u041f\u0430\u043f\u043a\u0438\u0442\u0435 \u0441\u0435 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u0442 \u0440\u044a\u0447\u043d\u043e \u0438\u043b\u0438\ + \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0441\u043f\u043e\u0440\u0435\u0434 \u043f\u043e\u0434\u0440\u0435\u0434\u0431\u0430\u0442\u0430 \u043d\u0430 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u0442\u0430 \u0437\u0430 \u043a\u043e\u0434. diff --git a/core/src/main/resources/jenkins/security/Messages_bg.properties b/core/src/main/resources/jenkins/security/Messages_bg.properties index 01bff534b4..d81b33152d 100644 --- a/core/src/main/resources/jenkins/security/Messages_bg.properties +++ b/core/src/main/resources/jenkins/security/Messages_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -31,3 +31,6 @@ ApiTokenProperty.ChangeToken.SuccessHidden=\ \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f RekeySecretAdminMonitor.DisplayName=\ \u0421\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u043d\u043e\u0432 \u043a\u043b\u044e\u0447 +# Update Site Warnings +UpdateSiteWarningsMonitor.DisplayName=\ + \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u044f \u043e\u0442 \u0441\u0430\u0439\u0442\u043e\u0432\u0435\u0442\u0435 \u0437\u0430 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f diff --git a/core/src/main/resources/jenkins/security/s2m/AdminCallableMonitor/message_bg.properties b/core/src/main/resources/jenkins/security/s2m/AdminCallableMonitor/message_bg.properties new file mode 100644 index 0000000000..190c24f328 --- /dev/null +++ b/core/src/main/resources/jenkins/security/s2m/AdminCallableMonitor/message_bg.properties @@ -0,0 +1,32 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Dismiss=\ + \u041e\u0442\u043a\u0430\u0437 +# Jenkins has rejected some commands from agents, because we are unsure if it is open for agents to execute, \ +# but this rejection has probably broken some builds. You should examine the situation to see if they should be whitelisted. +blurb=\ + Jenkins \u043e\u0442\u0445\u0432\u044a\u0440\u043b\u0438 \u0447\u0430\u0441\u0442 \u043e\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u0438\u0442\u0435 \u043e\u0442 \u0430\u0433\u0435\u043d\u0442\u0438\u0442\u0435, \u0437\u0430\u0449\u043e\u0442\u043e \u043d\u0435 \u0435 \u044f\u0441\u043d\u043e \u0434\u0430\u043b\u0438 \u043c\u043e\u0436\u0435 \u0434\u0430\ + \u0433\u0438 \u043f\u0440\u0438\u0435\u043c\u0430. \u0412\u044a\u0437\u043c\u043e\u0436\u043d\u043e \u0435 \u0442\u043e\u0432\u0430 \u0434\u0430 \u0435 \u0441\u0447\u0443\u043f\u0438\u043b\u043e \u0447\u0430\u0441\u0442 \u043e\u0442 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0438\u044f\u0442\u0430. \u041f\u0440\u0435\u0433\u043b\u0435\u0434\u0430\u0439\u0442\u0435 \u0433\u0438,\ + \u0437\u0430 \u0434\u0430 \u0440\u0435\u0448\u0438\u0442\u0435 \u0434\u0430\u043b\u0438 \u0438\u0437\u0440\u0438\u0447\u043d\u043e \u0434\u0430 \u043d\u0435 \u0433\u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442\u0435. +Examine=\ + \u041f\u0440\u0435\u0433\u043b\u0435\u0434 diff --git a/core/src/main/resources/jenkins/security/s2m/AdminWhitelistRule/index_bg.properties b/core/src/main/resources/jenkins/security/s2m/AdminWhitelistRule/index_bg.properties new file mode 100644 index 0000000000..79e58cf1d1 --- /dev/null +++ b/core/src/main/resources/jenkins/security/s2m/AdminWhitelistRule/index_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Whitelist=\ + \u041e\u0434\u043e\u0431\u0440\u0435\u043d \u0441\u043f\u0438\u0441\u044a\u043a +Update=\ + \u041e\u0431\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435 +Agent\ &\#8594;\ Master\ Access\ Control=\ + \u0410\u0433\u0435\u043d\u0442 \u2192 \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u0430 diff --git a/core/src/main/resources/jenkins/security/s2m/MasterKillSwitchWarning/message_bg.properties b/core/src/main/resources/jenkins/security/s2m/MasterKillSwitchWarning/message_bg.properties new file mode 100644 index 0000000000..906a8329f9 --- /dev/null +++ b/core/src/main/resources/jenkins/security/s2m/MasterKillSwitchWarning/message_bg.properties @@ -0,0 +1,32 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +Dismiss=\ + \u041e\u0442\u043a\u0430\u0437 +Examine=\ + \u041f\u0440\u0435\u0433\u043b\u0435\u0434 +# Agent to master security subsystem is currently off. \ +# Please read the documentation and consider turning it on. +blurb=\ + \u0410\u0433\u0435\u043d\u0442\u044a\u0442 \u0437\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u0442\u0430 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0437\u0430 \u0441\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442\u0442\u0430 \u0435 \u0438\u0437\u043a\u043b\u044e\u0447\u0435\u043d \u0432 \u043c\u043e\u043c\u0435\u043d\u0442\u0430.\ + \u041f\u0440\u0435\u0433\u043b\u0435\u0434\u0430\u0439\u0442\u0435\ + \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u0442\u0430 \u0438 \u0433\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u0442\u0435. diff --git a/core/src/main/resources/jenkins/security/s2m/Messages_bg.properties b/core/src/main/resources/jenkins/security/s2m/Messages_bg.properties new file mode 100644 index 0000000000..a4f7b0455e --- /dev/null +++ b/core/src/main/resources/jenkins/security/s2m/Messages_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +# Rejected Agent \u2192 Master Access Attempt +AdminCallableMonitor.DisplayName=\ + \u041e\u0442\u0445\u0432\u044a\u0440\u043b\u0435\u043d \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d \u043a\u043e\u043c\u043f\u044e\u0442\u044a\u0440 \u2014 \u043e\u043f\u0438\u0442 \u0437\u0430 \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u043a\u043e\u043c\u043f\u044e\u0442\u044a\u0440 +# Disabled Agent \u2192 Master Access Control +MasterKillSwitchWarning.DisplayName=\ + \u0418\u0437\u043a\u043b\u044e\u0447\u0435\u043d \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d \u043a\u043e\u043c\u043f\u044e\u0442\u044a\u0440 \u2014 \u043a\u043e\u043d\u0442\u0440\u043e\u043b \u043d\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u0430 \u0434\u043e \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u043a\u043e\u043c\u043f\u044e\u0442\u044a\u0440 diff --git a/core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message_bg.properties b/core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message_bg.properties new file mode 100644 index 0000000000..9674b5a02d --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message_bg.properties @@ -0,0 +1,36 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +# This Jenkins instance uses deprecated protocols: {0}. \ +# It may impact stability of the instance. \ +# If newer protocol versions are supported by all system components (agents, CLI and other clients), \ +# it is highly recommended to disable the deprecated protocols. +blurb=\ + \u0422\u0430\u0437\u0438 \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f \u043d\u0430 Jenkins \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u043e\u0441\u0442\u0430\u0440\u0435\u043b\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0438: {0}. \u0422\u043e\u0432\u0430 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435\ + \u043e\u0442\u0440\u0430\u0437\u0438 \u043d\u0430 \u0441\u0442\u0430\u0431\u0438\u043b\u043d\u043e\u0441\u0442\u0442\u0430 \u045d. \u0410\u043a\u043e \u0432\u0441\u0438\u0447\u043a\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0438, \u043a\u0430\u0442\u043e \u0430\u0433\u0435\u043d\u0442\u0438\u0442\u0435,\ + \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u0440\u0435\u0434 \u0438 \u0434\u0440\u0443\u0433\u0438\u0442\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u0438 \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430\u0442 \u043d\u043e\u0432\u0438\u0442\u0435 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0438, \u0441\u0438\u043b\u043d\u043e \u043f\u0440\u0435\u043f\u043e\u0440\u044a\u0447\u0432\u0430\u043c\u0435\ + \u0434\u0430 \u0438\u0437\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u043e\u0441\u0442\u0430\u0440\u0435\u043b\u0438\u0442\u0435. +# It may impact stability of the instance. \ +# If newer protocol versions are supported by all system components (agents, CLI and other clients), \ +# it is highly recommended to disable the deprecated protocols. +Protocol\ Configuration=\ + \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u0432\u0430\u043d\u0435 \u043d\u0430 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0438\u0442\u0435 diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause_bg.properties b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause_bg.properties new file mode 100644 index 0000000000..2f66522f0e --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +# This protocol is an obsolete protocol, which has been replaced by JNLP2-connect. \ +# It is also not encrypted. +message=\ + \u0422\u043e\u0437\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u0435 \u043e\u0441\u0442\u0430\u0440\u044f\u043b \u0438 \u0435 \u0431\u0435\u0437 \u0448\u0438\u0444\u0440\u0438\u0440\u0430\u043d\u0435. \u0417\u0430\u043c\u0435\u043d\u0435\u043d \u0435 \u043e\u0442 JNLP2-connect. diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/description_bg.properties b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/description_bg.properties new file mode 100644 index 0000000000..c19dc4a111 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/description_bg.properties @@ -0,0 +1,30 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +Accepts\ connections\ from\ remote\ clients\ so\ that\ they\ can\ be\ used\ as\ additional\ build\ agents=\ + \u041f\u0440\u0438\u0435\u043c\u0430\u043d\u0435 \u043d\u0430 \u0432\u0440\u044a\u0437\u043a\u0438 \u043e\u0442 \u043e\u0442\u0434\u0430\u043b\u0435\u0447\u0435\u043d\u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0438, \u0442\u0430\u043a\u0430 \u0447\u0435 \u0442\u0435 \u0434\u0430 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u043a\u0430\u0442\u043e\ + \u0434\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u0438 \u043c\u0430\u0448\u0438\u043d\u0438 \u0437\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435. +# Accepts connections from remote clients so that they can be used as additional build agents. \ +# This protocol is unencrypted. +summary=\ + \u041f\u0440\u0438\u0435\u043c\u0430\u043d\u0435 \u043d\u0430 \u0432\u0440\u044a\u0437\u043a\u0438 \u043e\u0442 \u043e\u0442\u0434\u0430\u043b\u0435\u0447\u0435\u043d\u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0438, \u0442\u0430\u043a\u0430 \u0447\u0435 \u0442\u0435 \u0434\u0430 \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 \u043a\u0430\u0442\u043e\ + \u0434\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u0438 \u043c\u0430\u0448\u0438\u043d\u0438 \u0437\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435. \u041f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u044a\u0442 \u043d\u0435 \u0435 \u0437\u0430\u0449\u0438\u0442\u0435\u043d \u0441 \u0448\u0438\u0444\u0440\u0438\u0440\u0430\u043d\u0435. diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause_bg.properties b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause_bg.properties new file mode 100644 index 0000000000..35fdea705a --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause_bg.properties @@ -0,0 +1,30 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +JNLP2\ Protocol\ Errata=\ + \u0413\u0440\u0435\u0448\u043a\u0438 \u0432 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 JNLP2 +# This protocol has known stability issues, and it is replaced by JNLP4. \ +# It is also not encrypted. \ +# See more information in the protocol Errata. +message=\ + \u0422\u043e\u0437\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u043d\u0435 \u0435 \u0441\u0442\u0430\u0431\u0438\u043b\u0435\u043d \u0438 \u0435 \u0437\u0430\u043c\u0435\u043d\u0435\u043d \u043e\u0442 JNLP4. \u0412 JNLP2 \u043b\u0438\u043f\u0441\u0432\u0430 \u0448\u0438\u0444\u0440\u0438\u0440\u0430\u043d\u0435.\ + \u0417\u0430 \u043f\u043e\u0432\u0435\u0447\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0432\u0438\u0436\u0442\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u0442\u0430 \u0437\u0430 \u0433\u0440\u0435\u0448\u043a\u0438\u0442\u0435 \u0432 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430. diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/description_bg.properties b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/description_bg.properties new file mode 100644 index 0000000000..e49efb0715 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/description_bg.properties @@ -0,0 +1,33 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +Extends\ the\ version\ 1\ protocol\ by\ adding\ a\ per-client\ cookie,\ so\ that\ we\ can\ detect\ a\ reconnection\ from\ the\ agent\ and\ take\ appropriate\ action=\ + \u0420\u0430\u0437\u0448\u0438\u0440\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f 1 \u043d\u0430 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430, \u043a\u0430\u0442\u043e \u0441\u0435 \u0434\u043e\u0431\u0430\u0432\u044f \u0431\u0438\u0441\u043a\u0432\u0438\u0442\u043a\u0430 \u0437\u0430 \u0432\u0441\u0435\u043a\u0438\ + \u043a\u043b\u0438\u0435\u043d\u0442. \u0422\u043e\u0432\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043e\u0442\u043a\u0440\u0438\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0432\u044a\u0437\u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0432\u0440\u044a\u0437\u043a\u0438\u0442\u0435 \u043e\u0442\ + \u0430\u0433\u0435\u043d\u0442\u0438\u0442\u0435 \u0438 \u043f\u0440\u0435\u0434\u043f\u0440\u0438\u0435\u043c\u0430\u043d\u0435 \u043d\u0430 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u043e\u0442\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435. +# Extends the version 1 protocol by adding a per-client cookie, \ +# so that we can detect a reconnection from the agent and take appropriate action. \ +# This protocol is unencrypted. +summary=\ + \u0420\u0430\u0437\u0448\u0438\u0440\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f 1 \u043d\u0430 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430, \u043a\u0430\u0442\u043e \u0441\u0435 \u0434\u043e\u0431\u0430\u0432\u044f \u0431\u0438\u0441\u043a\u0432\u0438\u0442\u043a\u0430 \u0437\u0430 \u0432\u0441\u0435\u043a\u0438\ + \u043a\u043b\u0438\u0435\u043d\u0442. \u0422\u043e\u0432\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043e\u0442\u043a\u0440\u0438\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0432\u044a\u0437\u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u0432\u0440\u044a\u0437\u043a\u0438\u0442\u0435 \u043e\u0442\ + \u0430\u0433\u0435\u043d\u0442\u0438\u0442\u0435 \u0438 \u043f\u0440\u0435\u0434\u043f\u0440\u0438\u0435\u043c\u0430\u043d\u0435 \u043d\u0430 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u043e\u0442\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435. \u0422\u043e\u0437\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u0435 \u043d\u0435\u0437\u0430\u0449\u0438\u0442\u0435\u043d. diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause_bg.properties b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause_bg.properties new file mode 100644 index 0000000000..c0ffc66602 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +JNLP3\ Protocol\ Errata=\ + \u0413\u0440\u0435\u0448\u043a\u0438 \u0432 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 JNLP3 +This\ protocol\ is\ unstable.\ See\ the\ protocol\ documentation\ for\ more\ info.=\ + \u0422\u043e\u0437\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u0435 \u043d\u0435\u0441\u0442\u0430\u0431\u0438\u043b\u0435\u043d. \u0417\u0430 \u043f\u043e\u0432\u0435\u0447\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0432\u0438\u0436\u0442\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u0442\u0430 \u043c\u0443. diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description_bg.properties b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description_bg.properties new file mode 100644 index 0000000000..2a41070810 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description_bg.properties @@ -0,0 +1,35 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017 Alexander Shopov +# +# 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. + +Extends\ the\ version\ 2\ protocol\ by\ adding\ basic\ encryption\ but\ requires\ a\ thread\ per\ client=\ + \u0420\u0430\u0437\u0448\u0438\u0440\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f 2 \u043d\u0430 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u043a\u0430\u0442\u043e \u0441\u0435 \u0434\u043e\u0431\u0430\u0432\u044f \u0448\u0438\u0444\u0440\u0438\u0440\u0430\u043d\u0435, \u043d\u043e \u0442\u043e\u0432\u0430\ + \u0438\u0437\u0438\u0441\u043a\u0432\u0430 \u043f\u043e \u0435\u0434\u043d\u0430 \u043d\u0438\u0448\u043a\u0430 \u0437\u0430 \u0432\u0441\u0435\u043a\u0438 \u043a\u043b\u0438\u0435\u043d\u0442 +# Extends the version 2 protocol by adding basic encryption but requires a thread per client. \ +# This protocol falls back to Java Web Start Agent Protocol/2 (unencrypted) when it can't create a secure connection. \ +# This protocol is not recommended. \ +# Use Java Web Start Agent Protocol/4 instead. +summary=\ + \u0420\u0430\u0437\u0448\u0438\u0440\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f 2 \u043d\u0430 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u043a\u0430\u0442\u043e \u0441\u0435 \u0434\u043e\u0431\u0430\u0432\u044f \u0448\u0438\u0444\u0440\u0438\u0440\u0430\u043d\u0435, \u043d\u043e \u0442\u043e\u0432\u0430\ + \u0438\u0437\u0438\u0441\u043a\u0432\u0430 \u043f\u043e \u0435\u0434\u043d\u0430 \u043d\u0438\u0448\u043a\u0430 \u0437\u0430 \u0432\u0441\u0435\u043a\u0438 \u043a\u043b\u0438\u0435\u043d\u0442. \u041a\u043e\u0433\u0430\u0442\u043e \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0441\u044a\u0437\u0434\u0430\u0434\u0435 \u0437\u0430\u0449\u0438\u0442\u0435\u043d\u0430\ + \u0432\u0440\u044a\u0437\u043a\u0430, \u0442\u043e\u0437\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u043f\u0440\u0438\u0431\u044f\u0433\u0432\u0430 \u0434\u043e Java Web Start Agent Protocol/2, \u043a\u043e\u0439\u0442\u043e \u043d\u0435 \u0435\ + \u0448\u0438\u0444\u0440\u0438\u0440\u0430\u043d. \u0422\u043e\u0432\u0430 \u043d\u0435 \u0435 \u043f\u0440\u0435\u043f\u043e\u0440\u044a\u0447\u0438\u0442\u0435\u043b\u043d\u043e \u2014 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0439\u0442e Java Web Start Agent\ + Protocol/4 \u0432\u043c\u0435\u0441\u0442\u043e \u0442\u043e\u0432\u0430. diff --git a/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol4/description_bg.properties b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol4/description_bg.properties new file mode 100644 index 0000000000..350451e3d3 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol4/description_bg.properties @@ -0,0 +1,26 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +# A TLS secured connection between the master and the agent performed by TLS upgrade of the socket. +summary=\ + \u0417\u0430\u0449\u0438\u0442\u0435\u043d\u0430 \u0432\u0440\u044a\u0437\u043a\u0430 \u043c\u0435\u0436\u0434\u0443 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0432\u0430\u0449\u0438\u044f \u0438 \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u043f\u044e\u0442\u044a\u0440 \u0447\u0440\u0435\u0437 \u043f\u0440\u0435\u043c\u0438\u043d\u0430\u0432\u0430\u043d\u0435 \u043a\u044a\u043c\ + TLS \u043f\u043e \u0433\u043d\u0435\u0437\u0434\u043e\u0442\u043e. diff --git a/core/src/main/resources/jenkins/slaves/Messages_bg.properties b/core/src/main/resources/jenkins/slaves/Messages_bg.properties new file mode 100644 index 0000000000..be906db5a6 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/Messages_bg.properties @@ -0,0 +1,37 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, 2017, Alexander Shopov +# +# 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. + +# Java Web Start Agent Protocol/3 +JnlpSlaveAgentProtocol3.displayName=\ + \u041f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u0437\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442\u0430 \u0437\u0430 Java \u043f\u0440\u0435\u0437 \u0443e\u0431, \u0432\u0435\u0440\u0441\u0438\u044f 3 +# Java Web Start Agent Protocol/1 +JnlpSlaveAgentProtocol.displayName=\ + \u041f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u0437\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442\u0430 \u0437\u0430 Java \u043f\u0440\u0435\u0437 \u0443e\u0431, \u0432\u0435\u0440\u0441\u0438\u044f 1 +# Java Web Start Agent Protocol/2 +JnlpSlaveAgentProtocol2.displayName=\ + \u041f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u0437\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442\u0430 \u0437\u0430 Java \u043f\u0440\u0435\u0437 \u0443e\u0431, \u0432\u0435\u0440\u0441\u0438\u044f 2 +# Java Web Start Agent Protocol/4 (TLS encryption) +JnlpSlaveAgentProtocol4.displayName=\ + \u041f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u0437\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442\u0430 \u0437\u0430 Java \u043f\u0440\u0435\u0437 \u0443e\u0431, \u0432\u0435\u0440\u0441\u0438\u044f 4 (\u0448\u0438\u0444\u0440\u0438\u0440\u0430\u043d\u0435 \u0441 TLS) +# Deprecated Agent Protocol Monitor +DeprecatedAgentProtocolMonitor.displayName=\ + \u0414\u0430\u0442\u0447\u0438\u043a \u0437\u0430 \u043e\u0441\u0442\u0430\u0440\u0435\u043b\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0438 \u0437\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0430\u0433\u0435\u043d\u0442\u0430 \u0437\u0430 Java \u043f\u0440\u0435\u0437 \u0443e\u0431 diff --git a/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/config_bg.properties b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/config_bg.properties new file mode 100644 index 0000000000..ea519d6f69 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/config_bg.properties @@ -0,0 +1,30 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2017, Alexander Shopov +# +# 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. + +Disable\ WorkDir=\ + \u0418\u0437\u043a\u043b\u044e\u0447\u0432\u0430\u043d\u0435 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u043d\u0430\u0442\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f +Fail\ if\ workspace\ is\ missing=\ + \u0421\u0438\u0433\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u043e\u0442\u0441\u044a\u0441\u0442\u0432\u0438\u0435\u0442\u043e \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u043d\u0430\u0442\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u0441 \u0433\u0440\u0435\u0448\u043a\u0430 +Internal\ data\ directory=\ + \u0412\u044a\u0442\u0440\u0435\u0448\u043d\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u0437\u0430 \u0434\u0430\u043d\u043d\u0438 +Custom\ WorkDir\ path=\ + \u0421\u043f\u0435\u0446\u0438\u0430\u043b\u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u043d\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f diff --git a/core/src/main/resources/jenkins/triggers/ReverseBuildTrigger/config_bg.properties b/core/src/main/resources/jenkins/triggers/ReverseBuildTrigger/config_bg.properties new file mode 100644 index 0000000000..434c506bfe --- /dev/null +++ b/core/src/main/resources/jenkins/triggers/ReverseBuildTrigger/config_bg.properties @@ -0,0 +1,30 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +Trigger\ even\ if\ the\ build\ is\ unstable=\ + \u0421\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u0434\u043e\u0440\u0438 \u0438 \u043f\u0440\u0438 \u043d\u0435\u0441\u0442\u0430\u0431\u0438\u043b\u0435\u043d \u043f\u0440\u043e\u0435\u043a\u0442 +Projects\ to\ watch=\ + \u041f\u0440\u043e\u0435\u043a\u0442\u0438 \u0437\u0430 \u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u0435 +Trigger\ only\ if\ build\ is\ stable=\ + \u0421\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u0441\u0430\u043c\u043e \u043f\u0440\u0438 \u0441\u0442\u0430\u0431\u0438\u043b\u0435\u043d \u043f\u0440\u043e\u0435\u043a\u0442 +Trigger\ even\ if\ the\ build\ fails=\ + \u0421\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u0438 \u043f\u0440\u0438 \u043d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0438\u0437\u0433\u0440\u0430\u0434\u0435\u043d \u043f\u0440\u043e\u0435\u043a\u0442 diff --git a/core/src/main/resources/jenkins/widgets/HistoryPageFilter/queue-items_bg.properties b/core/src/main/resources/jenkins/widgets/HistoryPageFilter/queue-items_bg.properties new file mode 100644 index 0000000000..962329a96b --- /dev/null +++ b/core/src/main/resources/jenkins/widgets/HistoryPageFilter/queue-items_bg.properties @@ -0,0 +1,28 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +pending=\ + \u043f\u0440\u0435\u0434\u0441\u0442\u043e\u0438 +cancel\ this\ build=\ + \u043e\u0442\u043c\u044f\u043d\u0430 \u043d\u0430 \u0442\u043e\u0432\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 +Expected\ build\ number=\ + \u041e\u0447\u0430\u043a\u0432\u0430\u043d \u043d\u043e\u043c\u0435\u0440 \u043d\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 diff --git a/core/src/main/resources/lib/hudson/buildCaption_bg.properties b/core/src/main/resources/lib/hudson/buildCaption_bg.properties index b0581b5f9b..47274fcd4a 100644 --- a/core/src/main/resources/lib/hudson/buildCaption_bg.properties +++ b/core/src/main/resources/lib/hudson/buildCaption_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -24,3 +24,6 @@ Progress=\ \u041d\u0430\u043f\u0440\u0435\u0434\u044a\u043a cancel=\ \u041e\u0442\u043c\u044f\u043d\u0430 +# Are you sure you want to abort {0}? +confirm=\ + \u0421\u0438\u0433\u0443\u0440\u043d\u0438 \u043b\u0438 \u0441\u0442\u0435, \u0447\u0435 \u0438\u0441\u043a\u0430\u0442\u0435 \u0434\u0430 \u043f\u0440\u0435\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 {0}? diff --git a/core/src/main/resources/lib/hudson/executors_bg.properties b/core/src/main/resources/lib/hudson/executors_bg.properties index d55c9f8e4c..07ed67592b 100644 --- a/core/src/main/resources/lib/hudson/executors_bg.properties +++ b/core/src/main/resources/lib/hudson/executors_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -41,3 +41,6 @@ Offline=\ # master{0,choice,0#|1# + {0,number} computer ({1} of {2} executors)|1< + {0,number} computers ({1} of {2} executors)} Computers=\ \u043e\u0441\u043d\u043e\u0432\u0435\u043d{0,choice,0#|1# + {0,number} \u043a\u043e\u043c\u043f\u044e\u0442\u044a\u0440 ({1} \u043e\u0442 {2} \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u0438)|1< + {0,number} \u043a\u043e\u043c\u043f\u044e\u0442\u0440\u0438 ({1} \u043e\u0442 {2} \u043f\u043e\u0434\u0447\u0438\u043d\u0435\u043d\u0438)} +# Are you sure you want to abort {0}? +confirm=\ + \u0421\u0438\u0433\u0443\u0440\u043d\u0438 \u043b\u0438 \u0441\u0442\u0435, \u0447\u0435 \u0438\u0441\u043a\u0430\u0442\u0435 \u0434\u0430 \u043f\u0440\u0435\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 {0}? diff --git a/core/src/main/resources/lib/hudson/project/upstream-downstream_bg.properties b/core/src/main/resources/lib/hudson/project/upstream-downstream_bg.properties index fb46cd90ef..2151947350 100644 --- a/core/src/main/resources/lib/hudson/project/upstream-downstream_bg.properties +++ b/core/src/main/resources/lib/hudson/project/upstream-downstream_bg.properties @@ -20,5 +20,7 @@ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN # THE SOFTWARE. -Downstream\ Projects=\u041f\u043e\u0441\u043b\u0435\u0434\u0432\u0430\u0449\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438 -Upstream\ Projects=\u041f\u0440\u0435\u0434\u0448\u0435\u0441\u0442\u0432\u0430\u0449\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438 +Downstream\ Projects=\ + \u041f\u043e\u0441\u043b\u0435\u0434\u0432\u0430\u0449\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438 +Upstream\ Projects=\ + \u041f\u0440\u0435\u0434\u0448\u0435\u0441\u0442\u0432\u0430\u0449\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438 diff --git a/core/src/main/resources/lib/hudson/queue_bg.properties b/core/src/main/resources/lib/hudson/queue_bg.properties index 7aab265248..4bb629b69f 100644 --- a/core/src/main/resources/lib/hudson/queue_bg.properties +++ b/core/src/main/resources/lib/hudson/queue_bg.properties @@ -1,6 +1,6 @@ # The MIT License # -# Bulgarian translation: Copyright (c) 2015, 2016, Alexander Shopov +# Bulgarian translation: Copyright (c) 2015, 2016, 2017, Alexander Shopov # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal @@ -34,3 +34,6 @@ WaitingFor=\ \u0418\u0437\u0447\u0430\u043a\u0432\u0430\u043d\u0435 \u043d\u0430 {0} Filtered\ Build\ Queue=\ \u0424\u0438\u043b\u0442\u0440\u0438\u0440\u0430\u043d\u0430 \u043e\u043f\u0430\u0448\u043a\u0430 \u0437\u0430 \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0438\u044f {0,choice,0#|0< ({0,number})} +# Are you sure you want to cancel the queued run of {0}? +confirm=\ + \u0421\u0438\u0433\u0443\u0440\u043d\u0438 \u043b\u0438 \u0441\u0442\u0435, \u0447\u0435 \u0438\u0441\u043a\u0430\u0442\u0435 \u0434\u0430 \u043e\u0442\u043c\u0435\u043d\u0438\u0442\u0435 \u0437\u0430\u043f\u043b\u0430\u043d\u0443\u0432\u0430\u043d\u043e\u0442\u043e \u0438\u0437\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 \u043d\u0430 {0}? From 252564aa69eb53ab0541ff9b58ef5ddc63587506 Mon Sep 17 00:00:00 2001 From: Alexander Shopov Date: Tue, 23 Aug 2016 15:24:08 +0300 Subject: [PATCH 083/109] Bulgarian translation of HTML files --- .../ProxyConfiguration/help-name_bg.html | 13 ++ .../help-noProxyHost_bg.html | 4 + .../ProxyConfiguration/help-port_bg.html | 3 + .../ProxyConfiguration/help-userName_bg.html | 9 + .../AbstractItem/help-slaveAffinity_bg.html | 2 +- .../help-concurrentBuild_bg.html | 27 +-- .../model/AbstractProject/help-label_bg.html | 6 +- .../model/Node/help-labelString_bg.html | 22 +++ .../hudson/model/Node/help-name_bg.html | 10 ++ .../model/Node/help-numExecutors_bg.html | 18 ++ .../ParametersDefinitionProperty/help_bg.html | 36 ++++ .../hudson/model/Slave/help-remoteFS_bg.html | 34 ++++ .../help-usageStatisticsCollected_bg.html | 22 +++ .../help-freeSpaceThreshold_bg.html | 7 + .../ArchitectureMonitor/help_bg.html | 4 + .../node_monitors/ClockMonitor/help_bg.html | 9 + .../DiskSpaceMonitor/help_bg.html | 9 + .../ResponseTimeMonitor/help_bg.html | 10 ++ .../TemporarySpaceMonitor/help_bg.html | 16 ++ .../Unsecured/help_bg.html | 9 + .../help-allowAnonymousRead_bg.html | 4 + .../help_bg.html | 11 ++ .../help-agentProtocol_bg.html | 4 + .../help-disableRememberMe_bg.html | 4 + .../help-slaveAgentPort_bg.html | 8 + .../help-useSecurity_bg.html | 14 ++ .../LegacyAuthorizationStrategy/help_bg.html | 5 + .../help-excludeClientIPFromCrumb_bg.html | 7 + .../help-csrf_bg.html | 24 +++ .../help-instanceCapStr_bg.html | 13 ++ .../CommandLauncher/help-command_bg.html | 36 ++++ .../slaves/JNLPLauncher/help-vmargs_bg.html | 6 + .../help-allowEmptyArchive_bg.html | 6 + .../ArtifactArchiver/help-artifacts_bg.html | 8 + .../help-caseSensitive_bg.html | 8 + .../ArtifactArchiver/help-excludes_bg.html | 6 + .../tasks/ArtifactArchiver/help_bg.html | 15 ++ .../BatchFile/help-unstableReturn_bg.html | 10 ++ .../tasks/Fingerprinter/help-targets_bg.html | 7 + .../hudson/tasks/Fingerprinter/help_bg.html | 34 ++++ .../Maven/help-injectBuildVariables_bg.html | 6 + .../tasks/Maven/help-properties_bg.html | 9 + .../hudson/tasks/Maven/help-settings_bg.html | 20 +++ .../hudson/tasks/Shell/help-shell_bg.html | 5 + .../tasks/Shell/help-unstableReturn_bg.html | 8 + .../resources/hudson/tasks/Shell/help_bg.html | 19 ++ .../help-command_bg.html | 5 + .../help-toolHome_bg.html | 3 + .../AbstractCommandInstaller/help_bg.html | 23 +++ .../tools/InstallSourceProperty/help_bg.html | 13 ++ .../help-subdir_bg.html | 4 + .../ZipExtractionInstaller/help-url_bg.html | 7 + .../tools/ZipExtractionInstaller/help_bg.html | 6 + .../help-ignorePostCommitHooks_bg.html | 13 ++ .../help-pollingThreadCount_bg.html | 10 ++ .../hudson/triggers/SCMTrigger/help_bg.html | 10 ++ .../triggers/TimerTrigger/help-spec_bg.html | 86 +++++++++ .../hudson/triggers/TimerTrigger/help_bg.html | 22 +++ .../jenkins/CLI/help-enabled_bg.html | 8 + .../model/BuildDiscarderProperty/help_bg.html | 53 ++++++ .../DownloadSettings/help-useBrowser_bg.html | 12 ++ .../help-quietPeriod_bg.html | 22 +++ .../Jenkins/help-markupFormatter_bg.html | 4 +- .../model/Jenkins/help-rawBuildsDir_bg.html | 4 +- .../Jenkins/help-rawWorkspaceDir_bg.html | 2 +- .../help-adminAddress_bg.html | 5 + .../help-url_bg.html | 10 ++ .../help-description_bg.html | 4 + .../help_bg.html | 4 + .../mvn/DefaultSettingsProvider/help_bg.html | 4 + .../config_bg.properties | 24 +++ .../help-path_bg.html | 4 + .../help_bg.html | 5 + .../config_bg.properties | 24 +++ .../help-path_bg.html | 4 + .../mvn/FilePathSettingsProvider/help_bg.html | 5 + .../ApiTokenProperty/help-apiToken_bg.html | 6 + .../help_bg.html | 15 ++ .../help-masterToSlaveAccessControl_bg.html | 4 + .../help-disabled_bg.html | 4 + .../help-failIfWorkDirIsMissing_bg.html | 4 + .../help-internalDir_bg.html | 4 + .../help-workDirPath_bg.html | 4 + .../triggers/ReverseBuildTrigger/help_bg.html | 12 ++ .../webapp/help/LogRecorder/logger_bg.html | 15 ++ .../main/webapp/help/LogRecorder/name_bg.html | 5 + .../help/parameter/boolean-default_bg.html | 3 + .../webapp/help/parameter/boolean_bg.html | 5 + .../help/parameter/choice-choices_bg.html | 4 + .../main/webapp/help/parameter/choice_bg.html | 5 + .../webapp/help/parameter/description_bg.html | 3 + .../webapp/help/parameter/file-name_bg.html | 4 + .../main/webapp/help/parameter/file_bg.html | 28 +++ .../main/webapp/help/parameter/name_bg.html | 6 + .../webapp/help/parameter/run-filter_bg.html | 9 + .../webapp/help/parameter/run-project_bg.html | 12 ++ .../main/webapp/help/parameter/run_bg.html | 7 + .../help/parameter/string-default_bg.html | 4 + .../main/webapp/help/parameter/string_bg.html | 5 + .../webapp/help/project-config/batch_bg.html | 13 ++ .../block-downstream-building_bg.html | 5 + .../block-upstream-building_bg.html | 4 + .../project-config/custom-workspace_bg.html | 26 +++ .../help/project-config/defaultView_bg.html | 6 + .../help/project-config/description_bg.html | 4 + .../help/project-config/disable_bg.html | 12 ++ .../help/project-config/downstream_bg.html | 23 +++ .../scmCheckoutRetryCount_bg.html | 20 +++ .../project-config/triggerRemotely_bg.html | 11 ++ .../help/run-config/description_bg.html | 4 + .../help/run-config/displayName_bg.html | 4 + .../webapp/help/scm-browsers/list_bg.html | 6 + .../defaultJobNamingStrategy_bg.html | 4 + .../globalEnvironmentVariables_bg.html | 5 + .../help/system-config/homeDirectory_bg.html | 32 ++++ .../master-slave/availability_bg.html | 54 ++++++ .../system-config/master-slave/clock_bg.html | 5 + .../master-slave/demand/idleDelay_bg.html | 3 + .../master-slave/demand/inDemandDelay_bg.html | 4 + .../demand/keepUpWhenActive_bg.html | 4 + .../master-slave/description_bg.html | 6 + .../master-slave/jnlp-tunnel_bg.html | 24 +++ .../master-slave/jnlpSecurity_bg.html | 54 ++++++ .../master-slave/numExecutors_bg.html | 16 ++ .../system-config/master-slave/usage_bg.html | 37 ++++ .../nodeEnvironmentVariables_bg.html | 29 +++ .../patternJobNamingStrategy_bg.html | 11 ++ .../help/system-config/quietPeriod_bg.html | 6 + .../help/system-config/systemMessage_bg.html | 7 + .../fingerprint/keepDependencies_bg.html | 18 ++ .../main/webapp/help/tools/help-label_bg.html | 6 + .../tools/tool-location-node-property_bg.html | 5 + .../main/webapp/help/user/description_bg.html | 5 + .../main/webapp/help/user/fullName_bg.html | 4 + .../help/view-config/description_bg.html | 7 + .../help/view-config/filter-executors_bg.html | 4 + .../help/view-config/filter-queue_bg.html | 4 + .../help/view-config/includeregex_bg.html | 8 + .../help/view-config/statusFilter_bg.html | 3 + .../config/freestyle-config-scrollspy_bg.html | 169 ++++++++++++++++++ .../config/freestyle-config-tabbed_bg.html | 163 +++++++++++++++++ 141 files changed, 1948 insertions(+), 22 deletions(-) create mode 100644 core/src/main/resources/hudson/ProxyConfiguration/help-name_bg.html create mode 100644 core/src/main/resources/hudson/ProxyConfiguration/help-noProxyHost_bg.html create mode 100644 core/src/main/resources/hudson/ProxyConfiguration/help-port_bg.html create mode 100644 core/src/main/resources/hudson/ProxyConfiguration/help-userName_bg.html create mode 100644 core/src/main/resources/hudson/model/Node/help-labelString_bg.html create mode 100644 core/src/main/resources/hudson/model/Node/help-name_bg.html create mode 100644 core/src/main/resources/hudson/model/Node/help-numExecutors_bg.html create mode 100644 core/src/main/resources/hudson/model/ParametersDefinitionProperty/help_bg.html create mode 100644 core/src/main/resources/hudson/model/Slave/help-remoteFS_bg.html create mode 100644 core/src/main/resources/hudson/model/UsageStatistics/help-usageStatisticsCollected_bg.html create mode 100644 core/src/main/resources/hudson/node_monitors/AbstractDiskSpaceMonitor/help-freeSpaceThreshold_bg.html create mode 100644 core/src/main/resources/hudson/node_monitors/ArchitectureMonitor/help_bg.html create mode 100644 core/src/main/resources/hudson/node_monitors/ClockMonitor/help_bg.html create mode 100644 core/src/main/resources/hudson/node_monitors/DiskSpaceMonitor/help_bg.html create mode 100644 core/src/main/resources/hudson/node_monitors/ResponseTimeMonitor/help_bg.html create mode 100644 core/src/main/resources/hudson/node_monitors/TemporarySpaceMonitor/help_bg.html create mode 100644 core/src/main/resources/hudson/security/AuthorizationStrategy/Unsecured/help_bg.html create mode 100644 core/src/main/resources/hudson/security/FullControlOnceLoggedInAuthorizationStrategy/help-allowAnonymousRead_bg.html create mode 100644 core/src/main/resources/hudson/security/FullControlOnceLoggedInAuthorizationStrategy/help_bg.html create mode 100644 core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-agentProtocol_bg.html create mode 100644 core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-disableRememberMe_bg.html create mode 100644 core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-slaveAgentPort_bg.html create mode 100644 core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-useSecurity_bg.html create mode 100644 core/src/main/resources/hudson/security/LegacyAuthorizationStrategy/help_bg.html create mode 100644 core/src/main/resources/hudson/security/csrf/DefaultCrumbIssuer/help-excludeClientIPFromCrumb_bg.html create mode 100644 core/src/main/resources/hudson/security/csrf/GlobalCrumbIssuerConfiguration/help-csrf_bg.html create mode 100644 core/src/main/resources/hudson/slaves/AbstractCloudImpl/help-instanceCapStr_bg.html create mode 100644 core/src/main/resources/hudson/slaves/CommandLauncher/help-command_bg.html create mode 100644 core/src/main/resources/hudson/slaves/JNLPLauncher/help-vmargs_bg.html create mode 100644 core/src/main/resources/hudson/tasks/ArtifactArchiver/help-allowEmptyArchive_bg.html create mode 100644 core/src/main/resources/hudson/tasks/ArtifactArchiver/help-artifacts_bg.html create mode 100644 core/src/main/resources/hudson/tasks/ArtifactArchiver/help-caseSensitive_bg.html create mode 100644 core/src/main/resources/hudson/tasks/ArtifactArchiver/help-excludes_bg.html create mode 100644 core/src/main/resources/hudson/tasks/ArtifactArchiver/help_bg.html create mode 100644 core/src/main/resources/hudson/tasks/BatchFile/help-unstableReturn_bg.html create mode 100644 core/src/main/resources/hudson/tasks/Fingerprinter/help-targets_bg.html create mode 100644 core/src/main/resources/hudson/tasks/Fingerprinter/help_bg.html create mode 100644 core/src/main/resources/hudson/tasks/Maven/help-injectBuildVariables_bg.html create mode 100644 core/src/main/resources/hudson/tasks/Maven/help-properties_bg.html create mode 100644 core/src/main/resources/hudson/tasks/Maven/help-settings_bg.html create mode 100644 core/src/main/resources/hudson/tasks/Shell/help-shell_bg.html create mode 100644 core/src/main/resources/hudson/tasks/Shell/help-unstableReturn_bg.html create mode 100644 core/src/main/resources/hudson/tasks/Shell/help_bg.html create mode 100644 core/src/main/resources/hudson/tools/AbstractCommandInstaller/help-command_bg.html create mode 100644 core/src/main/resources/hudson/tools/AbstractCommandInstaller/help-toolHome_bg.html create mode 100644 core/src/main/resources/hudson/tools/AbstractCommandInstaller/help_bg.html create mode 100644 core/src/main/resources/hudson/tools/InstallSourceProperty/help_bg.html create mode 100644 core/src/main/resources/hudson/tools/ZipExtractionInstaller/help-subdir_bg.html create mode 100644 core/src/main/resources/hudson/tools/ZipExtractionInstaller/help-url_bg.html create mode 100644 core/src/main/resources/hudson/tools/ZipExtractionInstaller/help_bg.html create mode 100644 core/src/main/resources/hudson/triggers/SCMTrigger/help-ignorePostCommitHooks_bg.html create mode 100644 core/src/main/resources/hudson/triggers/SCMTrigger/help-pollingThreadCount_bg.html create mode 100644 core/src/main/resources/hudson/triggers/SCMTrigger/help_bg.html create mode 100644 core/src/main/resources/hudson/triggers/TimerTrigger/help-spec_bg.html create mode 100644 core/src/main/resources/hudson/triggers/TimerTrigger/help_bg.html create mode 100644 core/src/main/resources/jenkins/CLI/help-enabled_bg.html create mode 100644 core/src/main/resources/jenkins/model/BuildDiscarderProperty/help_bg.html create mode 100644 core/src/main/resources/jenkins/model/DownloadSettings/help-useBrowser_bg.html create mode 100644 core/src/main/resources/jenkins/model/GlobalQuietPeriodConfiguration/help-quietPeriod_bg.html create mode 100644 core/src/main/resources/jenkins/model/JenkinsLocationConfiguration/help-adminAddress_bg.html create mode 100644 core/src/main/resources/jenkins/model/JenkinsLocationConfiguration/help-url_bg.html create mode 100644 core/src/main/resources/jenkins/model/ProjectNamingStrategy/PatternProjectNamingStrategy/help-description_bg.html create mode 100644 core/src/main/resources/jenkins/mvn/DefaultGlobalSettingsProvider/help_bg.html create mode 100644 core/src/main/resources/jenkins/mvn/DefaultSettingsProvider/help_bg.html create mode 100644 core/src/main/resources/jenkins/mvn/FilePathGlobalSettingsProvider/config_bg.properties create mode 100644 core/src/main/resources/jenkins/mvn/FilePathGlobalSettingsProvider/help-path_bg.html create mode 100644 core/src/main/resources/jenkins/mvn/FilePathGlobalSettingsProvider/help_bg.html create mode 100644 core/src/main/resources/jenkins/mvn/FilePathSettingsProvider/config_bg.properties create mode 100644 core/src/main/resources/jenkins/mvn/FilePathSettingsProvider/help-path_bg.html create mode 100644 core/src/main/resources/jenkins/mvn/FilePathSettingsProvider/help_bg.html create mode 100644 core/src/main/resources/jenkins/security/ApiTokenProperty/help-apiToken_bg.html create mode 100644 core/src/main/resources/jenkins/security/UpdateSiteWarningsConfiguration/help_bg.html create mode 100644 core/src/main/resources/jenkins/security/s2m/MasterKillSwitchConfiguration/help-masterToSlaveAccessControl_bg.html create mode 100644 core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-disabled_bg.html create mode 100644 core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-failIfWorkDirIsMissing_bg.html create mode 100644 core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-internalDir_bg.html create mode 100644 core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-workDirPath_bg.html create mode 100644 core/src/main/resources/jenkins/triggers/ReverseBuildTrigger/help_bg.html create mode 100644 war/src/main/webapp/help/LogRecorder/logger_bg.html create mode 100644 war/src/main/webapp/help/LogRecorder/name_bg.html create mode 100644 war/src/main/webapp/help/parameter/boolean-default_bg.html create mode 100644 war/src/main/webapp/help/parameter/boolean_bg.html create mode 100644 war/src/main/webapp/help/parameter/choice-choices_bg.html create mode 100644 war/src/main/webapp/help/parameter/choice_bg.html create mode 100644 war/src/main/webapp/help/parameter/description_bg.html create mode 100644 war/src/main/webapp/help/parameter/file-name_bg.html create mode 100644 war/src/main/webapp/help/parameter/file_bg.html create mode 100644 war/src/main/webapp/help/parameter/name_bg.html create mode 100644 war/src/main/webapp/help/parameter/run-filter_bg.html create mode 100644 war/src/main/webapp/help/parameter/run-project_bg.html create mode 100644 war/src/main/webapp/help/parameter/run_bg.html create mode 100644 war/src/main/webapp/help/parameter/string-default_bg.html create mode 100644 war/src/main/webapp/help/parameter/string_bg.html create mode 100644 war/src/main/webapp/help/project-config/batch_bg.html create mode 100644 war/src/main/webapp/help/project-config/block-downstream-building_bg.html create mode 100644 war/src/main/webapp/help/project-config/block-upstream-building_bg.html create mode 100644 war/src/main/webapp/help/project-config/custom-workspace_bg.html create mode 100644 war/src/main/webapp/help/project-config/defaultView_bg.html create mode 100644 war/src/main/webapp/help/project-config/description_bg.html create mode 100644 war/src/main/webapp/help/project-config/disable_bg.html create mode 100644 war/src/main/webapp/help/project-config/downstream_bg.html create mode 100644 war/src/main/webapp/help/project-config/scmCheckoutRetryCount_bg.html create mode 100644 war/src/main/webapp/help/project-config/triggerRemotely_bg.html create mode 100644 war/src/main/webapp/help/run-config/description_bg.html create mode 100644 war/src/main/webapp/help/run-config/displayName_bg.html create mode 100644 war/src/main/webapp/help/scm-browsers/list_bg.html create mode 100644 war/src/main/webapp/help/system-config/defaultJobNamingStrategy_bg.html create mode 100644 war/src/main/webapp/help/system-config/globalEnvironmentVariables_bg.html create mode 100644 war/src/main/webapp/help/system-config/homeDirectory_bg.html create mode 100644 war/src/main/webapp/help/system-config/master-slave/availability_bg.html create mode 100644 war/src/main/webapp/help/system-config/master-slave/clock_bg.html create mode 100644 war/src/main/webapp/help/system-config/master-slave/demand/idleDelay_bg.html create mode 100644 war/src/main/webapp/help/system-config/master-slave/demand/inDemandDelay_bg.html create mode 100644 war/src/main/webapp/help/system-config/master-slave/demand/keepUpWhenActive_bg.html create mode 100644 war/src/main/webapp/help/system-config/master-slave/description_bg.html create mode 100644 war/src/main/webapp/help/system-config/master-slave/jnlp-tunnel_bg.html create mode 100644 war/src/main/webapp/help/system-config/master-slave/jnlpSecurity_bg.html create mode 100644 war/src/main/webapp/help/system-config/master-slave/numExecutors_bg.html create mode 100644 war/src/main/webapp/help/system-config/master-slave/usage_bg.html create mode 100644 war/src/main/webapp/help/system-config/nodeEnvironmentVariables_bg.html create mode 100644 war/src/main/webapp/help/system-config/patternJobNamingStrategy_bg.html create mode 100644 war/src/main/webapp/help/system-config/quietPeriod_bg.html create mode 100644 war/src/main/webapp/help/system-config/systemMessage_bg.html create mode 100644 war/src/main/webapp/help/tasks/fingerprint/keepDependencies_bg.html create mode 100644 war/src/main/webapp/help/tools/help-label_bg.html create mode 100644 war/src/main/webapp/help/tools/tool-location-node-property_bg.html create mode 100644 war/src/main/webapp/help/user/description_bg.html create mode 100644 war/src/main/webapp/help/user/fullName_bg.html create mode 100644 war/src/main/webapp/help/view-config/description_bg.html create mode 100644 war/src/main/webapp/help/view-config/filter-executors_bg.html create mode 100644 war/src/main/webapp/help/view-config/filter-queue_bg.html create mode 100644 war/src/main/webapp/help/view-config/includeregex_bg.html create mode 100644 war/src/main/webapp/help/view-config/statusFilter_bg.html create mode 100644 war/src/test/js/widgets/config/freestyle-config-scrollspy_bg.html create mode 100644 war/src/test/js/widgets/config/freestyle-config-tabbed_bg.html diff --git a/core/src/main/resources/hudson/ProxyConfiguration/help-name_bg.html b/core/src/main/resources/hudson/ProxyConfiguration/help-name_bg.html new file mode 100644 index 0000000000..8cc660d9cb --- /dev/null +++ b/core/src/main/resources/hudson/ProxyConfiguration/help-name_bg.html @@ -0,0 +1,13 @@ +
+ Ако вашият Jenkins е зад защитна стена и няма пряка връзка към Интернет, а JVM на сървъра не е + настроена правилно, за да се позволи връзка с Интернет, може да укажете име на сървър-посредник + за HTTP, за да позволите на Jenkins самостоятелно да инсталира приставки. (за повече детайли: + Networking Properties) + Jenkins използва HTTPS, за да се свърже със сървъра за обновяване и изтегли приставките. + +

+ Ако полето е празно, Jenkins ще се свързва директно с Интернет. + +

+ Ако не сте сигурни, вижте какви са настройките на браузъра ви. +

diff --git a/core/src/main/resources/hudson/ProxyConfiguration/help-noProxyHost_bg.html b/core/src/main/resources/hudson/ProxyConfiguration/help-noProxyHost_bg.html new file mode 100644 index 0000000000..03eeaa12cb --- /dev/null +++ b/core/src/main/resources/hudson/ProxyConfiguration/help-noProxyHost_bg.html @@ -0,0 +1,4 @@ +
+ Шаблони за имената на сървърите, към които да се свързва директно, а не през сървъра-посредник. + По един шаблон на ред. „*“ напасва всички имена (напр. „*.cloudbees.com“ или „w*.jenkins.io“) +
diff --git a/core/src/main/resources/hudson/ProxyConfiguration/help-port_bg.html b/core/src/main/resources/hudson/ProxyConfiguration/help-port_bg.html new file mode 100644 index 0000000000..d24f470bda --- /dev/null +++ b/core/src/main/resources/hudson/ProxyConfiguration/help-port_bg.html @@ -0,0 +1,3 @@ +
+ Това поле определя порта за сървъра-посредник по HTTP. +
diff --git a/core/src/main/resources/hudson/ProxyConfiguration/help-userName_bg.html b/core/src/main/resources/hudson/ProxyConfiguration/help-userName_bg.html new file mode 100644 index 0000000000..d253066618 --- /dev/null +++ b/core/src/main/resources/hudson/ProxyConfiguration/help-userName_bg.html @@ -0,0 +1,9 @@ +
+ Това поле определя името за идентификация пред сървъра-посредник . + +

+ Ако този сървър-посредник ползва схемата да идентификация на + Microsoft: NTLM, + то името за домейна се добавя пред потребителското име с + разделител „\“. Например: „ACME\John Doo“". +

diff --git a/core/src/main/resources/hudson/model/AbstractItem/help-slaveAffinity_bg.html b/core/src/main/resources/hudson/model/AbstractItem/help-slaveAffinity_bg.html index 277eda8099..1faffbac16 100644 --- a/core/src/main/resources/hudson/model/AbstractItem/help-slaveAffinity_bg.html +++ b/core/src/main/resources/hudson/model/AbstractItem/help-slaveAffinity_bg.html @@ -7,7 +7,7 @@

Например, ако проектът трябва да се изгражда само на определени операционни системи или на компютри, на които са инсталирани специфични - интструменти, можете да укажете на проекта да се изгражда само на машини, + инструменти, можете да укажете на проекта да се изгражда само на машини, коитоy отговарят на интересуващите ви критерии.

Помощният текст за полето Израз с етикети, което се показва, когато diff --git a/core/src/main/resources/hudson/model/AbstractProject/help-concurrentBuild_bg.html b/core/src/main/resources/hudson/model/AbstractProject/help-concurrentBuild_bg.html index 1960aa25cb..e524cb4550 100644 --- a/core/src/main/resources/hudson/model/AbstractProject/help-concurrentBuild_bg.html +++ b/core/src/main/resources/hudson/model/AbstractProject/help-concurrentBuild_bg.html @@ -16,7 +16,7 @@ определен момент няма достатъчно свободни машини, то заявките за изграждане ще изчакват в опашка както обикновено.

- Включването на паралелните изграждание е полезно при проекти с дълги тестове, + Включването на паралелните изграждане е полезно при проекти с дълги тестове, защото това позволява отделното изграждане да съдържа сравнително малък на брой промени, без това да увеличава прекомерно много времето за работа, защото всяко ново изграждане няма нужда да изчаква завършването на всички предишни @@ -25,18 +25,19 @@ може да са напълно независими едно от друго — при определени стойности на параметрите.

- Всяко Each concurrently executed build occurs in its own build workspace, isolated - from any other builds. By default, Jenkins appends "@<num>" to - the workspace directory name, e.g. "@2".
- The separator "@" can be changed by setting the - hudson.slaves.WorkspaceList Java system property when starting - Jenkins. For example, "hudson.slaves.WorkspaceList=-" would change - the separator to a hyphen.
- For more information on setting system properties, see the @<номер>“ към името на + работната директория, например „@2“.
+ Разделителят „@“ може да се смени с промяната на системното свойство + на Java — „hudson.slaves.WorkspaceList“ при стартирането на Jenkins. + Например чрез „hudson.slaves.WorkspaceList=-“ ще смените разделителя + с тирето от ASCII.
+ За повече информация погледнете
wiki page. + target="_blank">документацията в уикито.

- However, if you enable the Use custom workspace option, all builds will - be executed in the same workspace. Therefore caution is required, as multiple - builds may end up altering the same directory at the same time. + Ако настройката Специално работно пространство е включена, всички + изграждания на проекта ще се правят в едно и също работно пространство, + поради което трябва да внимавате, защото множество изпълнения може едновременно + да променят работната директория. diff --git a/core/src/main/resources/hudson/model/AbstractProject/help-label_bg.html b/core/src/main/resources/hudson/model/AbstractProject/help-label_bg.html index a47aa93409..194bd86cb9 100644 --- a/core/src/main/resources/hudson/model/AbstractProject/help-label_bg.html +++ b/core/src/main/resources/hudson/model/AbstractProject/help-label_bg.html @@ -2,7 +2,7 @@ Логически израз, който определя кои агенти могат да изграждат този проект. Изразът ще се изчисли с всеки етикет и име на всеки наличен агент и резултатът ще е или истина, или лъжа. Само когато изразът се изчисли като - истина, агенът ще може да изгражда този проект. + истина, агентът ще може да изгражда този проект.

Ако проектът трябва задължително да се изгражда на определен подчинен компютър или на основния, въведете съответно името на компютъра или @@ -86,7 +86,7 @@ изразите.

  • - Напасване на етикетите или имената на компютрите с шаблони или регуларни + Напасване на етикетите или имената на компютрите с шаблони или регулярни изрази не се поддържа.
  • @@ -118,7 +118,7 @@
    postgres && !vm && (linux || freebsd)
    Изгражданията на този проект може да са на всеки агент под Linux или - FreeBSD, стига да не са във във виртуала машина, и да е инсталирана + FreeBSD, стига да не са във виртуална машина, и да е инсталирана базата PostgreSQL (като приемаме, че на всяка машина са поставени съответните етикети, напр. всяка виртуална машина е с етикет vm, иначе примерът няма да сработи). diff --git a/core/src/main/resources/hudson/model/Node/help-labelString_bg.html b/core/src/main/resources/hudson/model/Node/help-labelString_bg.html new file mode 100644 index 0000000000..92be73dc9f --- /dev/null +++ b/core/src/main/resources/hudson/model/Node/help-labelString_bg.html @@ -0,0 +1,22 @@ +
    + Етикетите се използват за групирането на множество машини в една логическа + група. +

    + Например, ако имате множество компютри с Windows и задача за изграждане, която + може да се изпълни само под Windows, можете да маркирате машините с етикет + windows и да обвържете задачата с този етикет. +
    + Така конкретното изграждане ще се изпълни само на машина с такъв етикет. +

    + Не е задължително етикетите да отговарят на операционната система. Те могат + да съответстват на произволен атрибут като архитектурата на процесора, + наличието на определена програма на машината и др. +

    + Множество етикети се въвеждат разделени с интервал. Например: + windows docker означава, че машината има два етикета — windows + и docker. +

    + Етикетите могат да съдържат произволни знаци, но трябва да избягвате специални + знаци като: !&|<>(), защото Jenkins позволява дефинирането на + изрази с етикети, в които тези знаци може да се използват. +

    diff --git a/core/src/main/resources/hudson/model/Node/help-name_bg.html b/core/src/main/resources/hudson/model/Node/help-name_bg.html new file mode 100644 index 0000000000..edf4a8f841 --- /dev/null +++ b/core/src/main/resources/hudson/model/Node/help-name_bg.html @@ -0,0 +1,10 @@ +
    + Името трябва да е уникално в рамките на тази инсталация на Jenkins. +

    + Няма нужда да е същото като името на хоста, но често е удобно да са + еднакви. +

    + Името не трябва да съдържа никой от следните знаци: + ?*/\%!@#$^&|<>[]:; + +

    diff --git a/core/src/main/resources/hudson/model/Node/help-numExecutors_bg.html b/core/src/main/resources/hudson/model/Node/help-numExecutors_bg.html new file mode 100644 index 0000000000..072890e7e7 --- /dev/null +++ b/core/src/main/resources/hudson/model/Node/help-numExecutors_bg.html @@ -0,0 +1,18 @@ +
    + Максималният брой едновременни задачи, които Jenkins може да изгражда на + тази машина. +

    + Добра първоначална стойност е броят процесори на всяка машина. Задаването + на по-висока стойност ще забави всяко от изгражданията, но може да увеличи + общия брой изграждания. Във всеки отделен момент е възможно едно изграждане + да се нуждае от процесорно време, докато друго може да изчаква за + входно/изходни операции. Така двете изграждания може да се изпълняват + едновременно. +

    + Агентите трябва да могат да изпълняват минимум едно изграждане. Ако искате + временно да спрете всички изграждания на машината, използвайте бутона + Временно извън линия от страницата на агента. +

    + Това не се отнася до управляващия компютър на Jenkins. Ако зададете броя + изграждания да е 0, на него няма да се изграждат никакви задания. +

    diff --git a/core/src/main/resources/hudson/model/ParametersDefinitionProperty/help_bg.html b/core/src/main/resources/hudson/model/ParametersDefinitionProperty/help_bg.html new file mode 100644 index 0000000000..1d8d29194d --- /dev/null +++ b/core/src/main/resources/hudson/model/ParametersDefinitionProperty/help_bg.html @@ -0,0 +1,36 @@ +
    + Параметрите позволяват на потребителите да въведат данни, които да се + използват по време на изграждането. Например, проект за тестове за + производителност при заявка, който позволява на потребителите да + качват изпълними файлове, които да се тестват. Това може да се случи + с добавянето на Параметър: файл. +
    + Друга възможност е проект, който изготвя крайния вариант на програма + и искате да позволите на потребителите до прикачат към нея бележки по + версията. Може да постигнете това като добавите Параметър: многоредов + низ. +

    + Всеки параметър има име и стойност, която зависи от вида на + параметъра. Тези двойки име-стойност се изнасят като променливи на средата + при стартиране на изграждането, което позволява на последващите стъпки от + него да достъпват стойностите чрез синтаксиса ${ИМЕ_НА_ПАРАМЕТЪР} + (под Windows e %ИМЕ_НА_ПАРАМЕТЪР%). +
    + Това е и причината името на всеки параметър да е уникално. +

    + При параметризирането на проект, стандартната връзка Изграждане + се замества с връзка Изграждане с параметри. Чрез нея потребителите + могат да указват стойности за всеки от дефинираните параметри. Ако не въведат + нищо, се използва отделна стандартна стойност за всеки от параметрите. +

    + Ако изграждането е стартирано автоматично, например от промяна в системата за + контрол на версиите, за всеки от параметрите ще се ползва стандартната му + стойност. +

    + Когато има поне едно параметризирано изграждане в опашката, опит за стартирането + на друго ще е успешно, ако поне един от параметрите е различен, освен ако не е + зададена опцията Едновременно изграждане при необходимост. +

    + За повече информация вижте страницата за параметризираните изграждания в уикито. +

    diff --git a/core/src/main/resources/hudson/model/Slave/help-remoteFS_bg.html b/core/src/main/resources/hudson/model/Slave/help-remoteFS_bg.html new file mode 100644 index 0000000000..e5cf4dfb31 --- /dev/null +++ b/core/src/main/resources/hudson/model/Slave/help-remoteFS_bg.html @@ -0,0 +1,34 @@ +
    +

    + Компютърът за изграждания трябва да има директория, която да се ползва + само от Jenkins. Укажете пътя до директорията. Най-добре ползвайте + абсолютен път като /var/jenkins или c:\jenkins. + Това е локален път — както се вижда на машината за изграждания. Няма + нужда пътят да се вижда от командната машина. +

    + Изграждащите машини не съдържат важни данни — всички настройки по задачите, + журналите от изгражданията както и артефактите се държат на компания компютър, + затова е напълно допустимо да се ползва временна директория като основна на + подчинените машини. +
    + Има полза директорията да не е временна, защото след рестартиране на машината + тя остава и може да държи кеширани инсталациите на инструменти, или местата + за изграждания. Това минимизира повтарящите се изтегляния на инструменти + или ресурси от системите за контрол на версии при стартирането на ново + изграждане след рестартиране. +

    + Ако използвате относителен път като ./jenkins-agent, пътят се определя + спрямо работната директория указана в Начина за стартиране. +

      +
    • При стартиранията, при които Jenkins управлява пускането на агента, + като например SSH, текущата директория най-често е една и съща, примерно + домашната директория на потребителя.
    • +
    • При стартиранията, при които Jenkins не ги управлява, като JNLP през + командния ред или връзка за уеб браузъра, текущата директория може да се + променя при всяко стартиране. В този случай ползването на относителен път + може да доведе до проблеми. +
      + Най-често това са остарели работни места, инсталации на инструменти, което + води до свършване на свободното дисково пространство.
    • +
    +
    diff --git a/core/src/main/resources/hudson/model/UsageStatistics/help-usageStatisticsCollected_bg.html b/core/src/main/resources/hudson/model/UsageStatistics/help-usageStatisticsCollected_bg.html new file mode 100644 index 0000000000..20aacefce3 --- /dev/null +++ b/core/src/main/resources/hudson/model/UsageStatistics/help-usageStatisticsCollected_bg.html @@ -0,0 +1,22 @@ +
    + От голяма помощ е да знаем как Jenkins се ползва. Това може да определи + посоката на разработка, което иначе е трудно, защото няма как да се проследяват + потребителите на проект с отворен код. Като изберете тази опция Jenkins + периодично ще изпраща анонимни данни за използването. + +

    + Това е пълното описание на включената информация: + +

      +
    • версията на jenkins; +
    • операционната система и броя изпълнявани изграждания от основния и подчинените компютри; +
    • списък с инсталираните приставки и версиите им; +
    • броят задачи за всеки вид задача в инсталацията на Jenkins +
    + +

    + Информацията не съдържа нищо, които да ви идентифицира или да позволява да се свържем + с вас (с изключение на информацията указана поради естеството на HTTP, като IP адреси). + Тези данни ще бъдат споделени с общността в табличен вид. + +

    diff --git a/core/src/main/resources/hudson/node_monitors/AbstractDiskSpaceMonitor/help-freeSpaceThreshold_bg.html b/core/src/main/resources/hudson/node_monitors/AbstractDiskSpaceMonitor/help-freeSpaceThreshold_bg.html new file mode 100644 index 0000000000..990f142db1 --- /dev/null +++ b/core/src/main/resources/hudson/node_monitors/AbstractDiskSpaceMonitor/help-freeSpaceThreshold_bg.html @@ -0,0 +1,7 @@ +
    + Тази опция указва минималното необходимо свободно пространство на диска, за + да се осигури правилна работа на Jenkins на машината. Примерни стойности са: + „1.5GB“, „100KB“ и т.н. + Ако свободното място на машината падне под тази стойност, тя ще бъде + маркирана извън линия. +
    diff --git a/core/src/main/resources/hudson/node_monitors/ArchitectureMonitor/help_bg.html b/core/src/main/resources/hudson/node_monitors/ArchitectureMonitor/help_bg.html new file mode 100644 index 0000000000..a48bff0cc4 --- /dev/null +++ b/core/src/main/resources/hudson/node_monitors/ArchitectureMonitor/help_bg.html @@ -0,0 +1,4 @@ +
    + Този датчик просто извежда архитектурата на агента. Той никога не указва + агентът да е извън линия. +
    \ No newline at end of file diff --git a/core/src/main/resources/hudson/node_monitors/ClockMonitor/help_bg.html b/core/src/main/resources/hudson/node_monitors/ClockMonitor/help_bg.html new file mode 100644 index 0000000000..8e9f95e880 --- /dev/null +++ b/core/src/main/resources/hudson/node_monitors/ClockMonitor/help_bg.html @@ -0,0 +1,9 @@ +
    + Този датчик указва разликата в часовниците между водача и следващите машини. + Въпреки че Jenkins не е чувствителен към разликите в часовниците, системите + за контрол на версиите, както и отдалечените файлови системи (като NFS и + споделянето на файлове в Windows) често имат проблеми в такива ситуации. + +

    + За да синхронизирате часовниците, ползвайте примерно NTP. +

    diff --git a/core/src/main/resources/hudson/node_monitors/DiskSpaceMonitor/help_bg.html b/core/src/main/resources/hudson/node_monitors/DiskSpaceMonitor/help_bg.html new file mode 100644 index 0000000000..77788a4b36 --- /dev/null +++ b/core/src/main/resources/hudson/node_monitors/DiskSpaceMonitor/help_bg.html @@ -0,0 +1,9 @@ +
    + Този датчик указва свободното дисково пространство на файловата система, в + която е разположена директорията $JENKINS_HOME. Ако то падне под + определена стойност, машината ще бъде указана като извън линия. + +

    + В тази директория се извършват всички изграждания. Когато се напълни, + изгражданията са неуспешни. +

    diff --git a/core/src/main/resources/hudson/node_monitors/ResponseTimeMonitor/help_bg.html b/core/src/main/resources/hudson/node_monitors/ResponseTimeMonitor/help_bg.html new file mode 100644 index 0000000000..7d4deeb108 --- /dev/null +++ b/core/src/main/resources/hudson/node_monitors/ResponseTimeMonitor/help_bg.html @@ -0,0 +1,10 @@ +
    + Този датчик наблюдава времето за отговор на заявка по мрежата от + водещата машина към следваща. Ако мине определен праг, агентът се извежда + като извън линия. + +

    + Това е полезно, за да се откриват агенти, които не отговарят на заявки или + мрежови проблеми, като задръстване на информационния канал. Лидерът праща + празна заявка към машините и замерва времето за отговор. +

    \ No newline at end of file diff --git a/core/src/main/resources/hudson/node_monitors/TemporarySpaceMonitor/help_bg.html b/core/src/main/resources/hudson/node_monitors/TemporarySpaceMonitor/help_bg.html new file mode 100644 index 0000000000..861a5d3e98 --- /dev/null +++ b/core/src/main/resources/hudson/node_monitors/TemporarySpaceMonitor/help_bg.html @@ -0,0 +1,16 @@ +
    + Този датчик указва свободното дисково пространство в директорията за + временни файлове. Когато то падне под определен праг, машината се указва + като извън линия. + +

    + Инструментите на Java както и тестовете и изгражданията често създават + временни файлове в нея и може да не работят правилно, когато няма свободно + пространство. + +

    + По-специално, проверката се извършва на файловата система, която съдържа + директорията указвана от системното свойство „java.io.tmpdir“. + За да проверите къде тя се намира на определена машина, прегледайте файла + „${rootURL}/computer/SLAVENAME/systemInfo“. +

    diff --git a/core/src/main/resources/hudson/security/AuthorizationStrategy/Unsecured/help_bg.html b/core/src/main/resources/hudson/security/AuthorizationStrategy/Unsecured/help_bg.html new file mode 100644 index 0000000000..6c99ea3e59 --- /dev/null +++ b/core/src/main/resources/hudson/security/AuthorizationStrategy/Unsecured/help_bg.html @@ -0,0 +1,9 @@ +
    + Всички придобиват пълни права надJenkins, включително анонимните потребители. + +

    + Този режим е удобен в доверени среди, напр. интранета на компания, и се + нуждаете от идентификация само за персонализирането на Jenkins. В такъв + случай, ако някой трябва да направи някаква промяна, няма да има нужда да се + идентифицира и влезе в Jenkins. +

    \ No newline at end of file diff --git a/core/src/main/resources/hudson/security/FullControlOnceLoggedInAuthorizationStrategy/help-allowAnonymousRead_bg.html b/core/src/main/resources/hudson/security/FullControlOnceLoggedInAuthorizationStrategy/help-allowAnonymousRead_bg.html new file mode 100644 index 0000000000..28672f3fd6 --- /dev/null +++ b/core/src/main/resources/hudson/security/FullControlOnceLoggedInAuthorizationStrategy/help-allowAnonymousRead_bg.html @@ -0,0 +1,4 @@ +
    + Когато това е избрано, потребителите, които не се идентифицирали, ще могат да + достъпват Jenkins в режим само за четене. +
    diff --git a/core/src/main/resources/hudson/security/FullControlOnceLoggedInAuthorizationStrategy/help_bg.html b/core/src/main/resources/hudson/security/FullControlOnceLoggedInAuthorizationStrategy/help_bg.html new file mode 100644 index 0000000000..b077010e86 --- /dev/null +++ b/core/src/main/resources/hudson/security/FullControlOnceLoggedInAuthorizationStrategy/help_bg.html @@ -0,0 +1,11 @@ +
    + В този режим всеки потребител на Jenkins получава пълен контрол след влизане в + системата. Анонимните потребители имат достъп само за четене и не могат да + управляват Jenkins. + +

    + Този режим кара потребителите да влязат в системата, преди да могат да + извършат промяна. Така може да се следи кой какви промени прави. Режимът е + удобен и при публично достъпни инсталации на Jenkins, при които само на + определени потребители може да се има доверие и да имат регистрации. +

    diff --git a/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-agentProtocol_bg.html b/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-agentProtocol_bg.html new file mode 100644 index 0000000000..d4b9034831 --- /dev/null +++ b/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-agentProtocol_bg.html @@ -0,0 +1,4 @@ +
    + Jenkins използва порт па TCP, за да комуникира с подчинените компютри. + Тази опция задава кои протоколи за връзка са включени. +
    diff --git a/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-disableRememberMe_bg.html b/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-disableRememberMe_bg.html new file mode 100644 index 0000000000..6e25c42168 --- /dev/null +++ b/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-disableRememberMe_bg.html @@ -0,0 +1,4 @@ +
    + Изберете тази опция, за да премахнете полето „Запомняне на този компютър“ от + екрана за вход. +
    \ No newline at end of file diff --git a/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-slaveAgentPort_bg.html b/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-slaveAgentPort_bg.html new file mode 100644 index 0000000000..82a37de400 --- /dev/null +++ b/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-slaveAgentPort_bg.html @@ -0,0 +1,8 @@ +
    + Jenkins използва порт на TCP, за да се свърже с агенти, които са стартирани + през JNLP. Обикновено този порт е случаен, за да се избягва припокриване с + други системи, но това прави поддържането на сигурността по-трудна. Ако не + ползвате агенти с JNLP, по-добре е да изключите този порт на TCP. Другият + вариант и да въведете постоянен порт, което улеснява настройването на + защитната стена. +
    \ No newline at end of file diff --git a/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-useSecurity_bg.html b/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-useSecurity_bg.html new file mode 100644 index 0000000000..c65978000f --- /dev/null +++ b/core/src/main/resources/hudson/security/GlobalSecurityConfiguration/help-useSecurity_bg.html @@ -0,0 +1,14 @@ +
    +

    + Включването на сигурността осигурява идентификацията (кои са) и упълномощаването (какви права имат) на потребителите. +

    + +

    + Има доста вградени варианти. Даването на прекомерни права на анонимни потребители или даването на прекомерни права + на всеки, който може да влезе, при условие, че може свободно да се регистрира, не е начин да се увеличи сигурността. +

    + +

    + За повече информация за сигурността и Jenkins вижте + документацията в уикито. +

    diff --git a/core/src/main/resources/hudson/security/LegacyAuthorizationStrategy/help_bg.html b/core/src/main/resources/hudson/security/LegacyAuthorizationStrategy/help_bg.html new file mode 100644 index 0000000000..7da733ecae --- /dev/null +++ b/core/src/main/resources/hudson/security/LegacyAuthorizationStrategy/help_bg.html @@ -0,0 +1,5 @@ +
    + Поведение като версиите на Jenkins преди 1.164. Ако притежавате ролята + „admin“ ще имате пълен контрол върху системата, в противен случай, + включително, ако не сте влезли, имате права само за четене. +
    diff --git a/core/src/main/resources/hudson/security/csrf/DefaultCrumbIssuer/help-excludeClientIPFromCrumb_bg.html b/core/src/main/resources/hudson/security/csrf/DefaultCrumbIssuer/help-excludeClientIPFromCrumb_bg.html new file mode 100644 index 0000000000..e43be4d96f --- /dev/null +++ b/core/src/main/resources/hudson/security/csrf/DefaultCrumbIssuer/help-excludeClientIPFromCrumb_bg.html @@ -0,0 +1,7 @@ +
    + Някои сървъри-посредници за HTTP филтрират информацията, която стандартно се + използва за изчисляване на еднократно използваните стойности. Ако между + браузъра и Jenkins стои сървър-посредник и получавате код за грешка 403, + когато подавате формуляр, пробвайте да зададете тази настройка. Недостатъкът + е, че така еднократните стойности се фалшифицират по-лесно. +
    diff --git a/core/src/main/resources/hudson/security/csrf/GlobalCrumbIssuerConfiguration/help-csrf_bg.html b/core/src/main/resources/hudson/security/csrf/GlobalCrumbIssuerConfiguration/help-csrf_bg.html new file mode 100644 index 0000000000..98f0e00ec5 --- /dev/null +++ b/core/src/main/resources/hudson/security/csrf/GlobalCrumbIssuerConfiguration/help-csrf_bg.html @@ -0,0 +1,24 @@ +
    + Заявките с фалшив произход (CSRF/XSRF) са начин, който позволява на трета + страна да извършва действия на сайта от ваше име, без да има право на това. В + случая на Jenkins това би позволило на неупълномощени лица да изтриват задания, + изграждания или да променят настройките на Jenkins. +

    + Когато това е включено, Jenkins ще проверява за специална еднократна стойност + при всяка заявка, която променя нещо на сървъра. Това включва подаването на + всеки формуляр и заявките към отдалеченото API. +

    + Включването на тази опция може да доведе и до някои проблеми, например: +

      +
    • някои възможности на Jenkins, като отдалеченото API стават по-трудни за + употреба
    • +
    • някои възможности в приставките, особено тези, които не са тествани + достатъчно, може съвсем да не работят;
    • +
    • ако достъпвате Jenkins през насрещен сървър-посредник, той може да + филтрира заглавните части на HTTP за CSRF, което ще направи някои + защитени действия невъзможни.
    • +
    +

    + Повече информация за заявките с фалшив произход (CSRF) има + тук. +

    diff --git a/core/src/main/resources/hudson/slaves/AbstractCloudImpl/help-instanceCapStr_bg.html b/core/src/main/resources/hudson/slaves/AbstractCloudImpl/help-instanceCapStr_bg.html new file mode 100644 index 0000000000..990f02b4d2 --- /dev/null +++ b/core/src/main/resources/hudson/slaves/AbstractCloudImpl/help-instanceCapStr_bg.html @@ -0,0 +1,13 @@ +
    + Може да зададете максималният брой агенти, които Jenkins може да стартира в + облака. Така ще избегнете неприятни изненади, когато пристигне сметката + за ползваните ресурси. + +

    + Ако въведете 3, Jenkins ще стартира нови агенти само докато общият им брой не + надхвърли това число. Дори и в най-лошия случай да забравите да ги спрете, + има граница, която няма де се надхвърли. + +

    + Ако полето е празно, няма никакви ограничения за използваните ресурси в този облак. +

    diff --git a/core/src/main/resources/hudson/slaves/CommandLauncher/help-command_bg.html b/core/src/main/resources/hudson/slaves/CommandLauncher/help-command_bg.html new file mode 100644 index 0000000000..262d5a6dee --- /dev/null +++ b/core/src/main/resources/hudson/slaves/CommandLauncher/help-command_bg.html @@ -0,0 +1,36 @@ +
    + Команда за стартирането на агента, който управлява компютъра и комуникира + с управляващия компютър. Jenkins приема, че изпълнената програма ще + стартира slave.jar на правилната машина. + +

    + Може да изтеглите slave.jar + оттук. + +

    + В най-простия случай, това може да е команда като тази: + „ssh hostname java -jar ~/bin/slave.jar“. + + Често е по-добре да напишете малък скрипт подобен на този отдолу, за да може да + настройвате местоположението на Java и/или slave.jar, както и да променяте + променливите на средата на машината, например „PATH“: + +

    +#!/bin/sh
    +exec java -jar ~/bin/slave.jar
    +
    + +

    + Може да използвате произволна команда за стартирането на процеса на управляваната + машина, стига тя да е в състояние да изпълни „java -jar ~/bin/slave.jar“ като + остане свързана със стандартните вход и изход на този процес. + +

    + При по-големи инсталации може да зареждате slave.jar от споделен монтиран + ресурс, например NFS, така че да не се налага ръчно да обновявате файла при всяко + обновяване на Jenkins. + +

    + Ако имате проблеми със свързаността, може да ги изчистите по-лесно като зададете + командата да е „ssh -v hostname“. +

    diff --git a/core/src/main/resources/hudson/slaves/JNLPLauncher/help-vmargs_bg.html b/core/src/main/resources/hudson/slaves/JNLPLauncher/help-vmargs_bg.html new file mode 100644 index 0000000000..26e7fed59c --- /dev/null +++ b/core/src/main/resources/hudson/slaves/JNLPLauncher/help-vmargs_bg.html @@ -0,0 +1,6 @@ +
    + При необходимост тук попълнете допълнителните аргументи за стартирането на + виртуалната машина на Java на подчинените компютри като „-Xmx256m“. + Погледнете документацията за + пълния списък. +
    diff --git a/core/src/main/resources/hudson/tasks/ArtifactArchiver/help-allowEmptyArchive_bg.html b/core/src/main/resources/hudson/tasks/ArtifactArchiver/help-allowEmptyArchive_bg.html new file mode 100644 index 0000000000..b909b753f7 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/ArtifactArchiver/help-allowEmptyArchive_bg.html @@ -0,0 +1,6 @@ +
    + Обичайно изграждане, при което отсъстват обектите за архивиране, се + обявява за неуспешно. Ако изберете тази опция, отсъствието на + обекти за архивиране ще доведе само до предупреждение, изграждането + ще се третира като успешно. +
    diff --git a/core/src/main/resources/hudson/tasks/ArtifactArchiver/help-artifacts_bg.html b/core/src/main/resources/hudson/tasks/ArtifactArchiver/help-artifacts_bg.html new file mode 100644 index 0000000000..c199f270db --- /dev/null +++ b/core/src/main/resources/hudson/tasks/ArtifactArchiver/help-artifacts_bg.html @@ -0,0 +1,8 @@ +
    + Можете да използвате шаблонни знаци като „module/dist/**/*.zip“. + За точния формат погледнете + документацията + на атрибута „includes“ за наборите от файлове на Ant. Базовата + директория е работното пространство. Можете да + архивирате само файлове, които се съдържат в него. +
    diff --git a/core/src/main/resources/hudson/tasks/ArtifactArchiver/help-caseSensitive_bg.html b/core/src/main/resources/hudson/tasks/ArtifactArchiver/help-caseSensitive_bg.html new file mode 100644 index 0000000000..0df67079cc --- /dev/null +++ b/core/src/main/resources/hudson/tasks/ArtifactArchiver/help-caseSensitive_bg.html @@ -0,0 +1,8 @@ +
    + Архивирането на артефакти използва org.apache.tools.ant.DirectoryScanner + на Ant. Стандартно този инструмент различава главни и малки букви — ако задачата + създава файлове с разширение „.hpi“, шаблонът „**/*.HPI“ ще ги прескочи.

    + Различаването на регистъра на буквите може да се изключи с тази опция. Когато тя + не е избрана, шаблонът „**/*.HPI“ ще напасва и файлове с разширение „*.hpi“, а + шаблонът „**/cAsEsEnSiTiVe.jar“ ще напасне и с файла „caseSensitive.jar“. +
    diff --git a/core/src/main/resources/hudson/tasks/ArtifactArchiver/help-excludes_bg.html b/core/src/main/resources/hudson/tasks/ArtifactArchiver/help-excludes_bg.html new file mode 100644 index 0000000000..e7a44b3902 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/ArtifactArchiver/help-excludes_bg.html @@ -0,0 +1,6 @@ +
    + Допълнително може да укажете + изключващ шаблон „excludes“, + като „foo/bar/**/*“. Файл, който отговаря на такъв шаблон, няма да бъде архивиран, дори + и да напасва шаблона указан във файловете за архивиране. +
    diff --git a/core/src/main/resources/hudson/tasks/ArtifactArchiver/help_bg.html b/core/src/main/resources/hudson/tasks/ArtifactArchiver/help_bg.html new file mode 100644 index 0000000000..ffdf118007 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/ArtifactArchiver/help_bg.html @@ -0,0 +1,15 @@ +
    + Архивиране на изградените артефакти (напр. разпространяваните или публикувани + файлове), така че да могат да бъдат изтеглени по-късно. Те ще са достъпни от + страницата на Jenkins. +
    + Обичайно Jenkins пази изградените обекти докато се пазят журналните записи за + самото изграждане. Ако старите артефакти не ви трябват и предпочитате да имате + повече дисково пространство, може да укажете това. +
    +
    +
    +Забележете, че при задача с Maven, създадените артефакти се архивират автоматично. +Обектите, които настроите тук, се добавят към горните. Автоматичното архивиране +на Maven може да се изключи от допълнителните настройки на Maven. +
    diff --git a/core/src/main/resources/hudson/tasks/BatchFile/help-unstableReturn_bg.html b/core/src/main/resources/hudson/tasks/BatchFile/help-unstableReturn_bg.html new file mode 100644 index 0000000000..61e39ef72b --- /dev/null +++ b/core/src/main/resources/hudson/tasks/BatchFile/help-unstableReturn_bg.html @@ -0,0 +1,10 @@ +
    + Когато е зададена стойност, тя ще се интерпретира като изходния код, който указва нестабилно + изграждане. Ако изходният код за грешка съвпада с тази стойност, изграждането се приема за + нестабилно, но се продължава със следващите стъпки. Поддържа се най-широкия диапазон от + стойности за фамилията Windows. При Windows NT4 и следващи ERRORLEVEL е четирибайтово цяло + число със знак и интервалът е от -2147483648 до 2147483647. По-старите версии на Windows + поддържат двубайтови цели числа — от 0 до 65535. При DOS това е еднобайтова целочислена стойност + от 0 до 255. Стойност 0 се прескача и не води до обявяването на изграждането на нестабилно, + защото това е конвенцията. +
    diff --git a/core/src/main/resources/hudson/tasks/Fingerprinter/help-targets_bg.html b/core/src/main/resources/hudson/tasks/Fingerprinter/help-targets_bg.html new file mode 100644 index 0000000000..5db7e7bed1 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/Fingerprinter/help-targets_bg.html @@ -0,0 +1,7 @@ +
    + Можете да използвате шаблонни знаци като module/dist/**/*.zip + (за точния формат погледнете секцията за + @includes от + ръководството на Ant). + Основната директория е работното пространството. +
    diff --git a/core/src/main/resources/hudson/tasks/Fingerprinter/help_bg.html b/core/src/main/resources/hudson/tasks/Fingerprinter/help_bg.html new file mode 100644 index 0000000000..c4a834bad6 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/Fingerprinter/help_bg.html @@ -0,0 +1,34 @@ +
    + Jenkins може да записва отпечатъка на файловете (най-често това са файлове jar) за + проследяване кога и къде тези файлове са създадени и използване. Това ви помага + да получите отговори на въпроси като следните, когато имате множество проекти, + зависими един от друг: + +
      +
    • + На диска ми има файл foo.jar, но от кое точно изграждане идва? +
    • +
    • + Ако проектът BAR зависи от файла foo.jar, който е от проекта FOO: +
    • +
      • +
      • + От кое изграждане идва версията на foo.jar, която се ползва в + изграждане на №51 на BAR? +
      • +
      • + Кое изграждане на BAR ще ползва поправката на грешката, която е включена + в изграждане №32 на foo.jar? +
      • +
    • +
    + +

    + За да се възползвате от това, трябва всички участващи проекти да използват отпечатъци + на файлове — не само проектите, от които файловете произхождат, но и тези, в които се + ползват. + +

    + За повече информация вижте + документацията. +

    diff --git a/core/src/main/resources/hudson/tasks/Maven/help-injectBuildVariables_bg.html b/core/src/main/resources/hudson/tasks/Maven/help-injectBuildVariables_bg.html new file mode 100644 index 0000000000..6852f46ae4 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/Maven/help-injectBuildVariables_bg.html @@ -0,0 +1,6 @@ +
    + Подаване на всички променливи от изграждането към процеса на maven като свойства на Java. + Рядко има нужда от това, защото променливите така или иначе са изнесени към средата. + Предпочитаният начин за достъп до тях е изрично подаване на отделните променливи от + изграждането като свойства на Java в раздела Свойства (MY_VAR=${MY_VAR}). +
    diff --git a/core/src/main/resources/hudson/tasks/Maven/help-properties_bg.html b/core/src/main/resources/hudson/tasks/Maven/help-properties_bg.html new file mode 100644 index 0000000000..9087244e82 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/Maven/help-properties_bg.html @@ -0,0 +1,9 @@ +
    + Тук се задават свойствата, които се използват от изграждането на Maven, + в стандартен формат „.properties“: +
    # коментар
    +име1=стойност1
    +име2=стойност2
    +
    + Те се подават към Maven като „-Dиме1=стойност1 -Dиме2=стойност2“ +
    diff --git a/core/src/main/resources/hudson/tasks/Maven/help-settings_bg.html b/core/src/main/resources/hudson/tasks/Maven/help-settings_bg.html new file mode 100644 index 0000000000..d7068029ea --- /dev/null +++ b/core/src/main/resources/hudson/tasks/Maven/help-settings_bg.html @@ -0,0 +1,20 @@ +
    + Елементът за настройки във файла settings.xml съдържа стойности, които + влияят на изпълнението на Maven по различни начини, подобно на файла pom.xml, + но не принадлежат на никой проект поотделно и не следва да се разпространяват с тях. + Това включва местоположението на локалното хранилище, допълнителни отдалечени хранилища за + код и обекти и информация за идентификация. +
    + Стандартно файлътsettings.xml се чете от следните места: + +
      +
    • системната инсталация на Maven — стандартно е $M2_HOME/conf/settings.xml
    • +
    • потребителската инсталация на Maven — стандартно е ${user.home}/.m2/settings.xml
    • +
    + + Първото е мястото на глобалните настройки, а второто са настройките за отделен потребител. Ако и двата + файла съществуват, те се четат и сливат, като потребителските настройки са с приоритет. +

    + За повече информация вижте settings.xml + документацията. +

    diff --git a/core/src/main/resources/hudson/tasks/Shell/help-shell_bg.html b/core/src/main/resources/hudson/tasks/Shell/help-shell_bg.html new file mode 100644 index 0000000000..db9993009d --- /dev/null +++ b/core/src/main/resources/hudson/tasks/Shell/help-shell_bg.html @@ -0,0 +1,5 @@ +
    + Обикновено това поле трябва да е празно, а Jenkins сам ще подбере правилния интерпретатор. + Ако обаче sh (под Windows) или /bin/sh е извън пътя сочен от PATH, + тук ще трябва да зададете пътя към изпълнимия файл на интерпретатора. +
    diff --git a/core/src/main/resources/hudson/tasks/Shell/help-unstableReturn_bg.html b/core/src/main/resources/hudson/tasks/Shell/help-unstableReturn_bg.html new file mode 100644 index 0000000000..15d9c0fd79 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/Shell/help-unstableReturn_bg.html @@ -0,0 +1,8 @@ +
    + Когато е зададена стойност, тя ще се интерпретира като изходния код, който указва нестабилно + изграждане. Ако изходният код за грешка съвпада с тази стойност, изграждането се приема за + нестабилно, но се продължава със следващите стъпки. Поддържа се най-широкия диапазон от + стойности за фамилията Windows. При Unix това е еднобайтова целочислена стойност + от 0 до 255. Стойност 0 се прескача и не води до обявяването на изграждането на нестабилно, + защото това е конвенцията. +
    diff --git a/core/src/main/resources/hudson/tasks/Shell/help_bg.html b/core/src/main/resources/hudson/tasks/Shell/help_bg.html new file mode 100644 index 0000000000..11ef4eb735 --- /dev/null +++ b/core/src/main/resources/hudson/tasks/Shell/help_bg.html @@ -0,0 +1,19 @@ +
    + Изпълнение на скрипт чрез интерпретатор за изграждането на проект (стандартно е sh, + но може да се настрои). Текущата директория за изпълнението на скрипта е директорията на + работното пространство. Попълнете тук съдържанието на скрипта. Ако в началото му + липсва заглавен ред от вида: #!/bin/sh, ще се използва системният интерпретатор. + Ако в началото на скрипта има ред от вида: #!/bin/perl, ще можете да използвате + произволен интерпретатор и ще можете изрично да задавате с какви опции ще се стартира. + +

    + Стандартно интерпретаторът се извиква с опцията -ex. Така всички команди се + отпечатват преди изпълнение, а изграждането се счита за неуспешно, ако някоя от + командите завърши с код, различен от 0. Може да промените това поведение, + като зададете начален ред за указване на интерпретатора като #!/bin/…. + +

    + Добра практика е да не задавате голям скрипт тук. По-добре е да го сложите в системата + за контрол на версиите, а тук просто да го извикате чрез bash -ex myscript.sh + или нещо подобно. Така ще може да следите промените в скрипта. +

    diff --git a/core/src/main/resources/hudson/tools/AbstractCommandInstaller/help-command_bg.html b/core/src/main/resources/hudson/tools/AbstractCommandInstaller/help-command_bg.html new file mode 100644 index 0000000000..7550b70ec1 --- /dev/null +++ b/core/src/main/resources/hudson/tools/AbstractCommandInstaller/help-command_bg.html @@ -0,0 +1,5 @@ +
    + Команда, която да се стартира всеки път на машината за инсталиране на този + инструмент. Затова, когато инструментът е вече инсталиран, тя трябва да се + изпълнява доста бързо и да не прави нищо. +
    diff --git a/core/src/main/resources/hudson/tools/AbstractCommandInstaller/help-toolHome_bg.html b/core/src/main/resources/hudson/tools/AbstractCommandInstaller/help-toolHome_bg.html new file mode 100644 index 0000000000..6ce1b7d20f --- /dev/null +++ b/core/src/main/resources/hudson/tools/AbstractCommandInstaller/help-toolHome_bg.html @@ -0,0 +1,3 @@ +
    + Домашната директория на програмата. (Пътят може да е относителен.) +
    diff --git a/core/src/main/resources/hudson/tools/AbstractCommandInstaller/help_bg.html b/core/src/main/resources/hudson/tools/AbstractCommandInstaller/help_bg.html new file mode 100644 index 0000000000..b9a0d59f2b --- /dev/null +++ b/core/src/main/resources/hudson/tools/AbstractCommandInstaller/help_bg.html @@ -0,0 +1,23 @@ +

    + Изпълнение на произволна последователност от команди на обвивката, които + позволяват да инсталирате програмата. Пример с Ubuntu — + предполагаме, че потребителят за Jenkins има права в /etc/sudoers: +

    +
    sudo apt-get --yes install openjdk-6-jdk
    +

    + (В този случай задайте примерно /usr/lib/jvm/java-6-openjdk-i386 като + домашна директория.) +

    +

    + Друг пример с инсталиране на стара версия на Sun JDK 6 за x86 Linux, + от вече несъществуващия сайт DLJ: +

    +
    bin=jdk-6u13-dlj-linux-i586.bin
    +if [ \! -f $bin ]
    +then
    +    wget --no-verbose http://download.java.net/dlj/binaries/$bin
    +    sh $bin --unpack --accept-license
    +fi
    +

    + (За домашна директория укажете jdk1.6.0_13 в този случай.) +

    diff --git a/core/src/main/resources/hudson/tools/InstallSourceProperty/help_bg.html b/core/src/main/resources/hudson/tools/InstallSourceProperty/help_bg.html new file mode 100644 index 0000000000..645ddc9255 --- /dev/null +++ b/core/src/main/resources/hudson/tools/InstallSourceProperty/help_bg.html @@ -0,0 +1,13 @@ +
    + Избирането на тази опция позволява на Jenkins да инсталира инструмента при + нужда. + +

    + След като я изберете ще бъдете подканени да настроите серия от „инсталатори“, + които позволяват на Jenkins да инсталира инструмента. + +

    + Ако инструментът е платформено независим, като Ant, няма голяма полза. В + обратния случай това ви позволява да инсталирате платформено зависим + инструмент по различен начин — с различни скриптове, на различните среди. +

    diff --git a/core/src/main/resources/hudson/tools/ZipExtractionInstaller/help-subdir_bg.html b/core/src/main/resources/hudson/tools/ZipExtractionInstaller/help-subdir_bg.html new file mode 100644 index 0000000000..e95ffbedb8 --- /dev/null +++ b/core/src/main/resources/hudson/tools/ZipExtractionInstaller/help-subdir_bg.html @@ -0,0 +1,4 @@ +
    + Незадължителна поддиректория от изтегления и разпакетиран архив, която да се ползва + като основна директория за програмата. +
    diff --git a/core/src/main/resources/hudson/tools/ZipExtractionInstaller/help-url_bg.html b/core/src/main/resources/hudson/tools/ZipExtractionInstaller/help-url_bg.html new file mode 100644 index 0000000000..5bf99bd535 --- /dev/null +++ b/core/src/main/resources/hudson/tools/ZipExtractionInstaller/help-url_bg.html @@ -0,0 +1,7 @@ +
    + Адрес, от който да се изтегли програмата в компилиран вид. Трябва да е + архив във формат zip или tar.gz. Ако вече е изтеглена предишна версия, + се сравняват времената им, за да може по-лесно да се публикуват обновления. + Адресът трябва да е достижим от командния компютър на Jenkins, няма нужда да + се вижда от подчинените машини. +
    diff --git a/core/src/main/resources/hudson/tools/ZipExtractionInstaller/help_bg.html b/core/src/main/resources/hudson/tools/ZipExtractionInstaller/help_bg.html new file mode 100644 index 0000000000..7e10b81bca --- /dev/null +++ b/core/src/main/resources/hudson/tools/ZipExtractionInstaller/help_bg.html @@ -0,0 +1,6 @@ +-
    + Изтегляне на архив с програма и инсталирането ѝ в работната директория на Jenkins. + Примерно: http://apache.promopeddler.com/ant/binaries/apache-ant-1.7.1-bin.zip + (или друг сървър-огледало, който е по-близо или бърз) и укажете поддиректория на + apache-ant-1.7.1. +
    diff --git a/core/src/main/resources/hudson/triggers/SCMTrigger/help-ignorePostCommitHooks_bg.html b/core/src/main/resources/hudson/triggers/SCMTrigger/help-ignorePostCommitHooks_bg.html new file mode 100644 index 0000000000..7d88134b2d --- /dev/null +++ b/core/src/main/resources/hudson/triggers/SCMTrigger/help-ignorePostCommitHooks_bg.html @@ -0,0 +1,13 @@ +
    + Игнориране на известията за промяна от страна на системата за контрол на + версиите. +

    + Това е полезно да предотвратите постоянното стартиране на продължителни + задачи, като извлечения, обработка на данни и др. при всяка отделна + промяна в системата за контрол на версиите, но все пак искате да ги стартирате + от време на време, ако промени има. +

    + За да сработи тази опция, тя трябва да се поддържа и от приставката за системата + за контрол на версиите. В случая на Subversion, приставката трябва да е поне + версия 1.44. +

    diff --git a/core/src/main/resources/hudson/triggers/SCMTrigger/help-pollingThreadCount_bg.html b/core/src/main/resources/hudson/triggers/SCMTrigger/help-pollingThreadCount_bg.html new file mode 100644 index 0000000000..d3a0eb9407 --- /dev/null +++ b/core/src/main/resources/hudson/triggers/SCMTrigger/help-pollingThreadCount_bg.html @@ -0,0 +1,10 @@ +
    + Ако много проекти се изграждат след слушане за промени в системата за контрол + на версиите, може да искате да ограничите общия брой едновременни заявки към + сървъра за версиите, за да не бъде претоварен. + +

    + Попълването на положително цяло число ограничава броя на едновременните заявки + за проверка. Ако оставите полето празно, няма да има никакви ограничения в + броя на едновременните заявки. +

    diff --git a/core/src/main/resources/hudson/triggers/SCMTrigger/help_bg.html b/core/src/main/resources/hudson/triggers/SCMTrigger/help_bg.html new file mode 100644 index 0000000000..785ad9f9f9 --- /dev/null +++ b/core/src/main/resources/hudson/triggers/SCMTrigger/help_bg.html @@ -0,0 +1,10 @@ +
    + Настройване на Jenkins за пита системата за контрол на версиите за промени. + +

    + При ползване на CVS това е ужасно скъпа операция, защото кара Jenkins да + обходи цялото работно пространство и да го синхронизира със сървъра. + По-добре е с помощта на автоматично действие от страна на CVS да известявате + Jenkins за промени. За повече информация погледнете + документацията. +

    diff --git a/core/src/main/resources/hudson/triggers/TimerTrigger/help-spec_bg.html b/core/src/main/resources/hudson/triggers/TimerTrigger/help-spec_bg.html new file mode 100644 index 0000000000..7cea08ce5a --- /dev/null +++ b/core/src/main/resources/hudson/triggers/TimerTrigger/help-spec_bg.html @@ -0,0 +1,86 @@ +
    + Полето следва синтаксиса на cron (с малки различия). + Всеки ред се състои от 5 полета с разделител интервал или табулация: +
    МИНУТА ЧАС ДЕН_ОТ_МЕСЕЦА МЕСЕЦ ДЕН_ОТ_СЕДМИЦАТА
    + + + + + + + + + + + + + + + + + + + + + +
    МИНУТАМинута в часа (0–59)
    ЧАСЧас от деня (0–23)
    ДЕН_ОТ_МЕСЕЦАДен от месеца (1–31)
    МЕСЕЦМесец от годината (1–12)
    ДЕН_ОТ_СЕДМИЦАТАДен от седмицата (0–7). И 0, и 7 са неделя.
    +

    + Чрез следните оператори може да указвате множество стойности за едно поле. + Изброени от най-висок към най-нисък приоритет, това са: +

    +
      +
    • * всички възможни стойности
    • +
    • M-N интервал от стойности
    • +
    • M-N/X или */X стъпки от интервали от X единици в указания интервал или от всички възможни стойности
    • +
    • A,B,...,Z изброяване на множество от точни стойности
    • +
    +

    + Със знака H включвате системата за равномерно натоварване, + използвайте го възможно най-често („H“ идва от „hash“). + Например: 0 0 * * * за много ежедневни задачи ще доведе до голямо + натоварване в полунощ. + Противоположно на това H H * * * също ще изпълнява задачите ежедневно, + но няма да стартира всички по едно и също време, което води до намаляване на + необходимите ресурси. +

    + Знакът H може да се използва с интервал. + Например H H(0-7) * * * означава някой момент между 00:00 AM и 7:59. + С H може да ползвате е постъпкови изрази с или без интервали. +

    + Може да мислите за H като случайна стойност от съответния интервал. + Истината е, че не е случайна стойност, а е базирана на хеша от името на задачата. + Така тази стойност е стабилна за всеки проект. +

    +

    + Кратки интервали като */3 или H/3 работят по-особено + в края на месеците поради различната дължина на месеците. + Например: */3 ще се стартира на 1-ви, 4-ти,… 31-ни и веднага отново на 1-ви следващия месец. + Хешовете за ден от месеца се избират от интервала 1-28. Възможно и H/3 да породи дупка + от 3 до 6 дни в края на месеца. + (Подобен ефект има и при по-дълги интервали, но там е относително по-малко забележим.) +

    +

    + Празните редове, както и тези, които започват с # се считат за коментари. +

    + Допълнително може да ползвате следните синоними: @yearly (ежегодно), @annually + (ежегодно), @monthly (ежемесечно), @weekly (ежеседмично), @daily + (ежедневно), @midnight (всяка нощ) и @hourly (всеки час). + Те използват системата за балансиране на натоварването. + Например, @hourly е същото като H * * * * и означава някой момент в часа. + @midnight означава някой момент между 00:00 AM и 2:59. +

    + Примери: +

    +
    +# на всеки 15 минути (примерно: и 7, и 22, и 37,  и 52)
    +H/15 * * * *
    +# на всеки 10 минути в първата половина на всеки час (3 пъти, примерно: и 4, и 14, и 24)
    +H(0-29)/10 * * * *
    +# на всеки два часа, при 45-тата минута на часа, почвайки от 9:45 до 15:45 всеки почивен ден от седмицата
    +45 9-16/2 * * 1-5
    +# на всеки два часа в интервала от 9 до 17 ч, всеки работен ден от седмицата (примерно: 10:38, 12:38, 14:38, 16:38 PM)
    +H H(9-16)/2 * * 1-5
    +# веднъж на ден - на всяко 1-во и 15-то число от всеки месец без декември
    +H H 1,15 1-11 *
    +
    +
    diff --git a/core/src/main/resources/hudson/triggers/TimerTrigger/help_bg.html b/core/src/main/resources/hudson/triggers/TimerTrigger/help_bg.html new file mode 100644 index 0000000000..810cb0d90f --- /dev/null +++ b/core/src/main/resources/hudson/triggers/TimerTrigger/help_bg.html @@ -0,0 +1,22 @@ +
    + Възможност за периодично изпълнение на този проект на база време, + подобно но програмата cron. + +

    + Това дава възможност да ползвате Jenkins като заместител на cron. + Това рядко е правилен начин за непрекъснато изграждане на проекти. + + Често хората, когато започват да внедряват непрекъснато изграждане, си + мислят, че проектите просто трябва да се изграждат на определен период — + примерно всеки ден или всяка седмица, което обяснява най-честата + употреба на тази възможност. Идеята обаче е друга — при непрекъснатото + изграждане трябва да се реагира с появата на всяка промяна, за да се + получи възможно най-скоро обратна връзка. Това се постига с + автоматични + известия от системата за контрол на версиите към Jenkins. + +

    + Преди да започнете да ползвате тази възможност (cron) се спрете и + хубаво си помислете дали искате точно това. + +

    diff --git a/core/src/main/resources/jenkins/CLI/help-enabled_bg.html b/core/src/main/resources/jenkins/CLI/help-enabled_bg.html new file mode 100644 index 0000000000..c677e33a40 --- /dev/null +++ b/core/src/main/resources/jenkins/CLI/help-enabled_bg.html @@ -0,0 +1,8 @@ +
    + Дали да се включи остарелият режим за команден ред с отдалечено управление. + Това отговаря на опцията -remoting в клиента. + Това може и да дава възможност да ползвате определени команди или техните опции, + но се счита за несигурно. Вариантът с опцията -http е винаги + наличен, а режимът с опцията -ssh — когато е включена услугата + за SSH. +
    diff --git a/core/src/main/resources/jenkins/model/BuildDiscarderProperty/help_bg.html b/core/src/main/resources/jenkins/model/BuildDiscarderProperty/help_bg.html new file mode 100644 index 0000000000..5c689a85b9 --- /dev/null +++ b/core/src/main/resources/jenkins/model/BuildDiscarderProperty/help_bg.html @@ -0,0 +1,53 @@ +
    + Това определя, кога, ако изобщо някога, данните да изгражданията на този проект + ще се изтриват. Това включва изхода на конзолата, архивираните артефакти, както + и всички останали метаданни за съответното изграждане. +

    + Съхраняването на по-малък брой изграждания означава, че ще се използва по-малко + дисково пространство в Build Record Root Directory, която се указва в + екрана за Системни настройки screen. +

    + + Jenkins предлага две възможности за определяне кога да се изтриват старите + изграждания: +

      +
    1. + Възраст: изтриване на изгражданията след като стигнат определена възраст: + примерно седем дни. +
    2. + Брой: изтриване на всички изграждания без последните няколко. +
    + Тези две възможности може да се зададат едновременно — например да се държат + изгражданията от последните 14 дни, но не повече от общо 50. Ако някое от + двете ограничения се надхвърли, се изтриват всички изграждания над тях. +

    + Можете да запазвате определени важни изграждания завинаги, независимо от + ограниченията дадени тук — натиснете бутона Запазване на изграденото + завинаги на страницата за изграждания. +
    + Последното стабилно и последното успешно изграждане също се запазват, независимо + от тези ограничения. + +


    + + В раздела Допълнителни могат да се указват същите тези ограничения, но + специално за артефактите от изгражданията. Ако те бъдат включени, + артефактите, надхвърлящи ограниченията, ще бъдат изтривани. Самите изграждания + и данните се пазят, само артефактите се трият. +

    + Например, ако проект изгражда голям инсталатор за определена програма, който + бива архивиран, а искате да запазите изхода на конзолата както и информацията + за подаването от системата за контрол на версиите, на което се базира самото + изграждане, като едновременно с това триете старите артефакти, за да не използвате + прекалено много дисково пространство. +
    + Това е особено подходящо за проекти, в които лесно можете наново да изградите + артефактите наново. + +


    + + Забележка: Jenkins не оценя и не прилага тези правила мигновено, нито при + промяната на тези настройки, нито при надхвърлянето на ограниченията. Това + става при завършването на изграждане на проекта. +
    diff --git a/core/src/main/resources/jenkins/model/DownloadSettings/help-useBrowser_bg.html b/core/src/main/resources/jenkins/model/DownloadSettings/help-useBrowser_bg.html new file mode 100644 index 0000000000..189121a8e7 --- /dev/null +++ b/core/src/main/resources/jenkins/model/DownloadSettings/help-useBrowser_bg.html @@ -0,0 +1,12 @@ +

    + Настройване браузърът, а не Jenkins, да изтегля метаданните (списъци с наличните + приставки, инструменти и т.н.). Самото изтегляне на приставките и инструментите + ще се извърши от Jenkins, но така ще получите достъп поне да разгледате + обновените метаданни, когато Jenkins няма достъп до Internet, но вашия браузър + има (примерно защото ползва определен сървър-посредник, който е недостъпен за + Jenkins). +

    +

    + Използването на този режим не се препоръчва. Той не е надежден и е ограничен + единствено до администраторите, защото само те могат да се възползват от него. +

    diff --git a/core/src/main/resources/jenkins/model/GlobalQuietPeriodConfiguration/help-quietPeriod_bg.html b/core/src/main/resources/jenkins/model/GlobalQuietPeriodConfiguration/help-quietPeriod_bg.html new file mode 100644 index 0000000000..c39432db11 --- /dev/null +++ b/core/src/main/resources/jenkins/model/GlobalQuietPeriodConfiguration/help-quietPeriod_bg.html @@ -0,0 +1,22 @@ +
    + Когато това е избрано, изгражданията, които са стартирани автоматично, ще + се добавят в опашката за изпълнение, но Jenkins ще изчаква определено време, + преди действително да стартира изграждането. +

    + Например, ако изгражданията отнемат много време, може да искате да + предотвратите стартирането на няколко изграждания от множество подавания в + системата за контрол на версиите, който са направени по едно и също време. + Задаването на период за изчакване ще предотврати стартирането на изграждане, + когато усети първото подаване. Това дава възможност да се съберат повече + подавания за включване в изграждането. Това намалява дължината на опашката + за изграждане, намалява натоварването върху Jenkins и като резултат + разработчиците получават по бързо обратна връзка за серията от подавания. +

    + Ако се получи заявка за ново изграждане, докато има изчакващо в опашката, + периодът му за чакане няма да се промени, а заявката няма да доведе до + ново изграждане, освен, ако изграждането е параметризирано и стойностите + на параметрите са различни от тези на изграждането в опашката. +

    + Ако това не е избрано, се използва стандартната стойност, която е зададена + в Настройки на системата. +

    diff --git a/core/src/main/resources/jenkins/model/Jenkins/help-markupFormatter_bg.html b/core/src/main/resources/jenkins/model/Jenkins/help-markupFormatter_bg.html index 0c54a47690..ed0ba000e1 100644 --- a/core/src/main/resources/jenkins/model/Jenkins/help-markupFormatter_bg.html +++ b/core/src/main/resources/jenkins/model/Jenkins/help-markupFormatter_bg.html @@ -7,8 +7,8 @@ съвместимост с предишни версии).

    - Това е доста уобно и хората го ползват, за да зареждат <iframe>, - <script> и т.н., това позволяна на недробонамерените потребители да + Това е доста удобно и хората го ползват, за да зареждат <iframe>, + <script> и т.н., това позволява на недобронамерените потребители да извършат атаки чрез XSS. Ако рискът е прекомерно голям, инсталирайте допълнителна приставка за diff --git a/core/src/main/resources/jenkins/model/Jenkins/help-rawBuildsDir_bg.html b/core/src/main/resources/jenkins/model/Jenkins/help-rawBuildsDir_bg.html index e30240fe00..ff240d9d76 100644 --- a/core/src/main/resources/jenkins/model/Jenkins/help-rawBuildsDir_bg.html +++ b/core/src/main/resources/jenkins/model/Jenkins/help-rawBuildsDir_bg.html @@ -1,6 +1,6 @@

    Указва мястото във файловата система, където Jenkins ще запазва - записите за изгражданията. Това включва изхода от конзолата, както и дугите + записите за изгражданията. Това включва изхода от конзолата, както и другите метаданни, които се генерират при изграждане.

    Стойността може да включва следните променливи: @@ -8,7 +8,7 @@

  • ${JENKINS_HOME} — абсолютният път до домашната директория на Jenkins;
  • ${ITEM_ROOTDIR} — абсолютният път до директорията, в която - Jenkins запазвъ настройките и свързаните метаданни за определено + Jenkins запазва настройките и свързаните метаданни за определено задание;
  • ${ITEM_FULL_NAME} — пълното име на заданието, което може да съдържа наклонени черти, напр. foo/bar за заданието diff --git a/core/src/main/resources/jenkins/model/Jenkins/help-rawWorkspaceDir_bg.html b/core/src/main/resources/jenkins/model/Jenkins/help-rawWorkspaceDir_bg.html index 63c090bb30..75967f9c18 100644 --- a/core/src/main/resources/jenkins/model/Jenkins/help-rawWorkspaceDir_bg.html +++ b/core/src/main/resources/jenkins/model/Jenkins/help-rawWorkspaceDir_bg.html @@ -8,7 +8,7 @@
  • ${JENKINS_HOME} — абсолютният път до домашната директория на Jenkins;
  • ${ITEM_ROOTDIR} — абсолютният път до директорията, в която - Jenkins запазвъ настройките и свързаните метаданни за определено + Jenkins запазва настройките и свързаните метаданни за определено задание;
  • ${ITEM_FULL_NAME} — пълното име на заданието, което може да съдържа наклонени черти, напр. foo/bar за заданието diff --git a/core/src/main/resources/jenkins/model/JenkinsLocationConfiguration/help-adminAddress_bg.html b/core/src/main/resources/jenkins/model/JenkinsLocationConfiguration/help-adminAddress_bg.html new file mode 100644 index 0000000000..0d1a14d59a --- /dev/null +++ b/core/src/main/resources/jenkins/model/JenkinsLocationConfiguration/help-adminAddress_bg.html @@ -0,0 +1,5 @@ +
    + Известията по е-поща от Jenkins към собствениците на проекти ще се + изпращат с този адрес на подател. Може да е само адрес като: + „jenkins@acme.org“ или „Сървър Jenkins <jenkins@acme.org>“. +
    diff --git a/core/src/main/resources/jenkins/model/JenkinsLocationConfiguration/help-url_bg.html b/core/src/main/resources/jenkins/model/JenkinsLocationConfiguration/help-url_bg.html new file mode 100644 index 0000000000..f752096674 --- /dev/null +++ b/core/src/main/resources/jenkins/model/JenkinsLocationConfiguration/help-url_bg.html @@ -0,0 +1,10 @@ +
    + Възможност да зададете адреса по HTTP на инсталацията на Jenkins като: + http://yourhost.yourdomain/jenkins/. Стойността се ползва, + за да може Jenkins да сочи себе си, примерно при показването на + изображения или при генерирането на връзки в електронните писма. + +

    + Това се налага, защото няма надежден начин Jenkins сам да открие този + адрес. +

    diff --git a/core/src/main/resources/jenkins/model/ProjectNamingStrategy/PatternProjectNamingStrategy/help-description_bg.html b/core/src/main/resources/jenkins/model/ProjectNamingStrategy/PatternProjectNamingStrategy/help-description_bg.html new file mode 100644 index 0000000000..6a49633bb4 --- /dev/null +++ b/core/src/main/resources/jenkins/model/ProjectNamingStrategy/PatternProjectNamingStrategy/help-description_bg.html @@ -0,0 +1,4 @@ +

    + Потребителско описание на шаблона за имена на задачите за изграждане. + Извежда се като съобщение за грешка при опит да се наруши конвенцията. +

    diff --git a/core/src/main/resources/jenkins/mvn/DefaultGlobalSettingsProvider/help_bg.html b/core/src/main/resources/jenkins/mvn/DefaultGlobalSettingsProvider/help_bg.html new file mode 100644 index 0000000000..0adec3ce99 --- /dev/null +++ b/core/src/main/resources/jenkins/mvn/DefaultGlobalSettingsProvider/help_bg.html @@ -0,0 +1,4 @@ +
    + Използване на стандартните настройки на maven, зададени на компютъра + ($HOME/.m2/settings.xml). +
    \ No newline at end of file diff --git a/core/src/main/resources/jenkins/mvn/DefaultSettingsProvider/help_bg.html b/core/src/main/resources/jenkins/mvn/DefaultSettingsProvider/help_bg.html new file mode 100644 index 0000000000..0adec3ce99 --- /dev/null +++ b/core/src/main/resources/jenkins/mvn/DefaultSettingsProvider/help_bg.html @@ -0,0 +1,4 @@ +
    + Използване на стандартните настройки на maven, зададени на компютъра + ($HOME/.m2/settings.xml). +
    \ No newline at end of file diff --git a/core/src/main/resources/jenkins/mvn/FilePathGlobalSettingsProvider/config_bg.properties b/core/src/main/resources/jenkins/mvn/FilePathGlobalSettingsProvider/config_bg.properties new file mode 100644 index 0000000000..d9b80a4d58 --- /dev/null +++ b/core/src/main/resources/jenkins/mvn/FilePathGlobalSettingsProvider/config_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +File\ path=\ + \u041f\u044a\u0442 \u043a\u044a\u043c \u0444\u0430\u0439\u043b\u0430 diff --git a/core/src/main/resources/jenkins/mvn/FilePathGlobalSettingsProvider/help-path_bg.html b/core/src/main/resources/jenkins/mvn/FilePathGlobalSettingsProvider/help-path_bg.html new file mode 100644 index 0000000000..f4be79b07e --- /dev/null +++ b/core/src/main/resources/jenkins/mvn/FilePathGlobalSettingsProvider/help-path_bg.html @@ -0,0 +1,4 @@ +
    + Път към файла „settings.xml“ — или абсолютен, или относителен спрямо + работното пространство на проекта (поддържат се променливи). +
    \ No newline at end of file diff --git a/core/src/main/resources/jenkins/mvn/FilePathGlobalSettingsProvider/help_bg.html b/core/src/main/resources/jenkins/mvn/FilePathGlobalSettingsProvider/help_bg.html new file mode 100644 index 0000000000..858aa3b662 --- /dev/null +++ b/core/src/main/resources/jenkins/mvn/FilePathGlobalSettingsProvider/help_bg.html @@ -0,0 +1,5 @@ +
    + Използване на специфичен глобален файл settings.xml от работното + пространство на проекта. Той трябва да бъде изтеглен от системата за контрол + на версиите като част от изграждането или да се намира на достъпно място. +
    \ No newline at end of file diff --git a/core/src/main/resources/jenkins/mvn/FilePathSettingsProvider/config_bg.properties b/core/src/main/resources/jenkins/mvn/FilePathSettingsProvider/config_bg.properties new file mode 100644 index 0000000000..d9b80a4d58 --- /dev/null +++ b/core/src/main/resources/jenkins/mvn/FilePathSettingsProvider/config_bg.properties @@ -0,0 +1,24 @@ +# The MIT License +# +# Bulgarian translation: Copyright (c) 2016, Alexander Shopov +# +# 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. + +File\ path=\ + \u041f\u044a\u0442 \u043a\u044a\u043c \u0444\u0430\u0439\u043b\u0430 diff --git a/core/src/main/resources/jenkins/mvn/FilePathSettingsProvider/help-path_bg.html b/core/src/main/resources/jenkins/mvn/FilePathSettingsProvider/help-path_bg.html new file mode 100644 index 0000000000..f4be79b07e --- /dev/null +++ b/core/src/main/resources/jenkins/mvn/FilePathSettingsProvider/help-path_bg.html @@ -0,0 +1,4 @@ +
    + Път към файла „settings.xml“ — или абсолютен, или относителен спрямо + работното пространство на проекта (поддържат се променливи). +
    \ No newline at end of file diff --git a/core/src/main/resources/jenkins/mvn/FilePathSettingsProvider/help_bg.html b/core/src/main/resources/jenkins/mvn/FilePathSettingsProvider/help_bg.html new file mode 100644 index 0000000000..b5933521e4 --- /dev/null +++ b/core/src/main/resources/jenkins/mvn/FilePathSettingsProvider/help_bg.html @@ -0,0 +1,5 @@ +
    + Използване на специфичен файл settings.xml. Той трябва да бъде + изтеглен от системата за контрол на версиите като част от изграждането или + да се намира на достъпно място. +
    \ No newline at end of file diff --git a/core/src/main/resources/jenkins/security/ApiTokenProperty/help-apiToken_bg.html b/core/src/main/resources/jenkins/security/ApiTokenProperty/help-apiToken_bg.html new file mode 100644 index 0000000000..44a7e1d485 --- /dev/null +++ b/core/src/main/resources/jenkins/security/ApiTokenProperty/help-apiToken_bg.html @@ -0,0 +1,6 @@ +
    + Този жетон за API дава възможност за идентификация в извикването по REST. За повече подробности погледнете + документацията в уикито. + Жетонът от това API трябва да се пази подобно на парола, защото позволява на други хора да достъпват + Jenkins от ваше име и с вашите права. +
    diff --git a/core/src/main/resources/jenkins/security/UpdateSiteWarningsConfiguration/help_bg.html b/core/src/main/resources/jenkins/security/UpdateSiteWarningsConfiguration/help_bg.html new file mode 100644 index 0000000000..722ab9cbe2 --- /dev/null +++ b/core/src/main/resources/jenkins/security/UpdateSiteWarningsConfiguration/help_bg.html @@ -0,0 +1,15 @@ +

    + Този списък съдържа всички предупреждиния, които се отнасят до текущо инсталираните компоненти, които + са публикувани от текущо настроените сайтове за обновления. Стандартно новините са свързани с проблими + със сигурноста. Не се показват публикуваните предупреждения, които не се за текущо инсталираните + компоненти и версии. +

    +

    + Стандартно отделине предупреждения са избрани/активни, т.е. те се показват на администраторите. + Като махнете отметката ги криете. + Това е полезно, ако сте разгледали определено предупреждение и сте сигурни, че не се отнася за вашата инсталация и + настройки, т.е. да продължите да ползвате съответната версия на определен компонент не е пробив в сигурността. +

    + Предупрежденията могат да се изключват едно по едно, не може да заглушите всички предупреждения за определен компонент. + Ако искате въобще да изключите показването на всички предупреждения, може да направите това от Настройките на системата. +

    diff --git a/core/src/main/resources/jenkins/security/s2m/MasterKillSwitchConfiguration/help-masterToSlaveAccessControl_bg.html b/core/src/main/resources/jenkins/security/s2m/MasterKillSwitchConfiguration/help-masterToSlaveAccessControl_bg.html new file mode 100644 index 0000000000..84dc7a3dbc --- /dev/null +++ b/core/src/main/resources/jenkins/security/s2m/MasterKillSwitchConfiguration/help-masterToSlaveAccessControl_bg.html @@ -0,0 +1,4 @@ +
    + За повече информация вижте сайта на Jenkins. + Силно препоръчваме да включите тази настройка. +
    diff --git a/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-disabled_bg.html b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-disabled_bg.html new file mode 100644 index 0000000000..0d1feca264 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-disabled_bg.html @@ -0,0 +1,4 @@ +
    + Позволява изключването на отдалечената работна + директория за агента. В тези случаи подчиненият компютър ще работи в остарелия режим без журнални файлове. +
    diff --git a/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-failIfWorkDirIsMissing_bg.html b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-failIfWorkDirIsMissing_bg.html new file mode 100644 index 0000000000..787565bf38 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-failIfWorkDirIsMissing_bg.html @@ -0,0 +1,4 @@ +
    + Когато тук е зададена директория, Jenkins няма да стартира на този подчинен компютър, ако тя липсва. + Така може да засичате проблеми с инфраструктурата като неуспешно монтиране. +
    diff --git a/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-internalDir_bg.html b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-internalDir_bg.html new file mode 100644 index 0000000000..73d6e60d75 --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-internalDir_bg.html @@ -0,0 +1,4 @@ +
    + Указване на директория за съхранение на вътрешните данни. + Тя се създава като поддиректория на работната директория на подчинения компютър. +
    diff --git a/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-workDirPath_bg.html b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-workDirPath_bg.html new file mode 100644 index 0000000000..7f5c24c5af --- /dev/null +++ b/core/src/main/resources/jenkins/slaves/RemotingWorkDirSettings/help-workDirPath_bg.html @@ -0,0 +1,4 @@ +
    + Ако е зададена, ще се ползва тази работна директория, а не тази на подчинения компютър. + Тази опция не поддържа променливи, препоръчва се да използвате само абсолютни пътища. +
    diff --git a/core/src/main/resources/jenkins/triggers/ReverseBuildTrigger/help_bg.html b/core/src/main/resources/jenkins/triggers/ReverseBuildTrigger/help_bg.html new file mode 100644 index 0000000000..6681a2c018 --- /dev/null +++ b/core/src/main/resources/jenkins/triggers/ReverseBuildTrigger/help_bg.html @@ -0,0 +1,12 @@ +
    +

    + Задаване на автоматично насрочване на изграждане на този проект след + завършването на изграждането на друг. Така е удобно да насрочите + продължителна последователност от тестове след изграждане, когато то + е завършило, без да го забавяте. +

    + Тази настройка допълва раздела „Изграждане на други проекти“ в „Действия + след изграждане“ на проект, от който този зависи, но тази е за предпочитане, + ако искате настройката да е при зависещите проекти. +

    +
    diff --git a/war/src/main/webapp/help/LogRecorder/logger_bg.html b/war/src/main/webapp/help/LogRecorder/logger_bg.html new file mode 100644 index 0000000000..a6de16fa8b --- /dev/null +++ b/war/src/main/webapp/help/LogRecorder/logger_bg.html @@ -0,0 +1,15 @@ +
    + Укажете имената на журналите заедно с нивата им, които това обединение + ще обхваща. Например, ако укажете hudson.model.Hudson + и info, всички журнални записи за hudson.model.Hudson + или наследниците му с ниво поне „info“ ще се записват в тази група, освен + ако по-специфично указване или по-висока подробност напасва с тях. + +

    + Ако имате множество журнални групи, всеки запис отива в най-специфичното + обединение, на което отговаря. + +

    + За повече информация за журналите в Java и Jenkins погледнете + документацията. +

    diff --git a/war/src/main/webapp/help/LogRecorder/name_bg.html b/war/src/main/webapp/help/LogRecorder/name_bg.html new file mode 100644 index 0000000000..70249bab89 --- /dev/null +++ b/war/src/main/webapp/help/LogRecorder/name_bg.html @@ -0,0 +1,5 @@ +
    + Укажете име, което да идентифицира тази обединена група журнали. + Когато обединявате журнали, те се записват в един файл, което + улеснява прегледа. Можете де създавате множество такива групирания. +
    diff --git a/war/src/main/webapp/help/parameter/boolean-default_bg.html b/war/src/main/webapp/help/parameter/boolean-default_bg.html new file mode 100644 index 0000000000..bc7e127059 --- /dev/null +++ b/war/src/main/webapp/help/parameter/boolean-default_bg.html @@ -0,0 +1,3 @@ +
    + Указва стандартната стойност на полето. +
    diff --git a/war/src/main/webapp/help/parameter/boolean_bg.html b/war/src/main/webapp/help/parameter/boolean_bg.html new file mode 100644 index 0000000000..e87191acb4 --- /dev/null +++ b/war/src/main/webapp/help/parameter/boolean_bg.html @@ -0,0 +1,5 @@ +
    + Указва булев параметър, който да се използва по време на изграждането + като променлива на средата или за заместване в някоя настройка. + Стойността като низ ще е или „true“ (истина), или „false“ (лъжа). +
    diff --git a/war/src/main/webapp/help/parameter/choice-choices_bg.html b/war/src/main/webapp/help/parameter/choice-choices_bg.html new file mode 100644 index 0000000000..134d37f517 --- /dev/null +++ b/war/src/main/webapp/help/parameter/choice-choices_bg.html @@ -0,0 +1,4 @@ +
    + Възможните стойности, по една на ред. По подразбиране ще се ползва + стойността на първия ред. +
    diff --git a/war/src/main/webapp/help/parameter/choice_bg.html b/war/src/main/webapp/help/parameter/choice_bg.html new file mode 100644 index 0000000000..690b6557f6 --- /dev/null +++ b/war/src/main/webapp/help/parameter/choice_bg.html @@ -0,0 +1,5 @@ +
    + Указва параметър-низ, чиято стойност се избира от списък от стойности. + Тя може да се използва по време на изграждането като променлива на средата + или за заместване в някоя настройка. +
    diff --git a/war/src/main/webapp/help/parameter/description_bg.html b/war/src/main/webapp/help/parameter/description_bg.html new file mode 100644 index 0000000000..74ec29b364 --- /dev/null +++ b/war/src/main/webapp/help/parameter/description_bg.html @@ -0,0 +1,3 @@ +
    + Описание, което ще се покаже по-късно на потребителя. +
    diff --git a/war/src/main/webapp/help/parameter/file-name_bg.html b/war/src/main/webapp/help/parameter/file-name_bg.html new file mode 100644 index 0000000000..d24d9842ef --- /dev/null +++ b/war/src/main/webapp/help/parameter/file-name_bg.html @@ -0,0 +1,4 @@ +
    + Указва относителното спрямо работното пространство местоположение, + където качваният файл ще се запише (напр. „jaxb-ri/data.zip“). +
    diff --git a/war/src/main/webapp/help/parameter/file_bg.html b/war/src/main/webapp/help/parameter/file_bg.html new file mode 100644 index 0000000000..93272eb965 --- /dev/null +++ b/war/src/main/webapp/help/parameter/file_bg.html @@ -0,0 +1,28 @@ +
    + Приема файл, качен през браузъра, като параметър за изграждането. Каченият + файл ще бъде поместен на указаното място в работното пространство, откъдето + задачата за изграждане ще има достъп до него. +

    Това е полезно в много случаи, например:

      +
    1. Даване на възможност на потребителите да тестват обект изграден от тях.
    2. +
    3. Автоматизиране на процеса на качване/тестване/публикуване на файл като + потребителите имат място, където да го поместят.
    4. +
    5. Изпълнение на обработка на данни след качването на набор от данни.
    6. +
    +

    + Името на подадения файл е налично в променливата на средата със същото + име както местоположението на файла. Ако зададете местоположението като + abc.zip, то ${abc.zip} дава първоначалното име на файла + подадено от браузъра (напр. my.zip). Името не включва директорите. +

    +

    + Качването на файл не е задължително. Ако потребителят не избере файл, + Jenkins ще прескочи този параметър (няма да постави нов файл, но няма и + да изтрие вече съществуващ файл). +

    +

    + Опцията -p към командата build в режим на команден + ред приема или име на локален файл (при използването и на -remoting), + или празна стойност и се чете от стандартния вход (в този случай се приема само + един параметър-файл). +

    +
    diff --git a/war/src/main/webapp/help/parameter/name_bg.html b/war/src/main/webapp/help/parameter/name_bg.html new file mode 100644 index 0000000000..f960c30e1d --- /dev/null +++ b/war/src/main/webapp/help/parameter/name_bg.html @@ -0,0 +1,6 @@ +
    + Име на параметъра. + +

    + Параметрите са достъпни като променливи на средата. +

    diff --git a/war/src/main/webapp/help/parameter/run-filter_bg.html b/war/src/main/webapp/help/parameter/run-filter_bg.html new file mode 100644 index 0000000000..8f75790e58 --- /dev/null +++ b/war/src/main/webapp/help/parameter/run-filter_bg.html @@ -0,0 +1,9 @@ +
    + Филтриране на списъка с изграждания, които са включени в падащия списък. +
    +„Всички“ — извеждане на всички изграждания (и завършили, и изпълнявани).
    +„Завършени“ — извеждане на завършилите изграждания (и успешни, и неуспешни)
    +„Успешни“ — извеждане на успешните изграждания (и стабилни, и нестабилни).
    +„Стабилни“ — извеждане само на стабилните изграждания.
    +
    +
    diff --git a/war/src/main/webapp/help/parameter/run-project_bg.html b/war/src/main/webapp/help/parameter/run-project_bg.html new file mode 100644 index 0000000000..5e66c6a4e9 --- /dev/null +++ b/war/src/main/webapp/help/parameter/run-project_bg.html @@ -0,0 +1,12 @@ +
    + Задава името на задачата, от чиито изпълнения потребителят може да избере. + Стандартно се ползва последното изпълнение. Следните параметри са + налични като променливи на средата: +
    +PARAMETER_NAME=<адрес_на_jenkins>/job/<име_на_задачата>/<поредно_изпълнение>/
    +PARAMETER_NAME_JOBNAME=<име_на_задачата>
    +PARAMETER_NAME_NUMBER=<поредно_изпълнение>
    +PARAMETER_NAME_NAME=<име_за_показване>
    +PARAMETER_NAME_RESULT=<резултат_от_изпълнението>
    +
    +
    diff --git a/war/src/main/webapp/help/parameter/run_bg.html b/war/src/main/webapp/help/parameter/run_bg.html new file mode 100644 index 0000000000..0f02e85ca1 --- /dev/null +++ b/war/src/main/webapp/help/parameter/run_bg.html @@ -0,0 +1,7 @@ +
    + Указва параметър за изпълнение, който потребителите могат да зададат + за определено изпълнение на проект. Абсолютният адрес на това конкретно + изграждане ще е достъпен като променлива на средата или като стойност + за замяна в настройките. Самото изграждане може да използва променливата, + за да запита Jenkins за допълнителна информация. +
    diff --git a/war/src/main/webapp/help/parameter/string-default_bg.html b/war/src/main/webapp/help/parameter/string-default_bg.html new file mode 100644 index 0000000000..165bd3bd6d --- /dev/null +++ b/war/src/main/webapp/help/parameter/string-default_bg.html @@ -0,0 +1,4 @@ +
    + Указва стандартната стойност на, което може да спести + въвеждане на стойност всеки път. +
    diff --git a/war/src/main/webapp/help/parameter/string_bg.html b/war/src/main/webapp/help/parameter/string_bg.html new file mode 100644 index 0000000000..aca3cca057 --- /dev/null +++ b/war/src/main/webapp/help/parameter/string_bg.html @@ -0,0 +1,5 @@ +
    + Указва параметър-низ, в който потребителите могат да въведат + стойност, която да се използва по време на изграждането като + променлива на средата или за заместване в някоя настройка. +
    diff --git a/war/src/main/webapp/help/project-config/batch_bg.html b/war/src/main/webapp/help/project-config/batch_bg.html new file mode 100644 index 0000000000..4c5415b543 --- /dev/null +++ b/war/src/main/webapp/help/project-config/batch_bg.html @@ -0,0 +1,13 @@ +
    + Изпълнение на скриптов файл на Windows за изграждане на проекта. + Скриптът ще бъде изпълнен в работната директория — тя ще е текуща да него. + + Текстът, който въведете, ще се изпълни като пакетен файл. Изграждането ще се + счете за неуспешно, ако стойността на променливата на средата „%ERRORLEVEL%“ + не е 0. + +

    + Ако изграждащият пакетен файл вече е в системата за контрол на версиите, + може просто да въведете относителния път към него спрямо работното + пространство и така той ще бъде изпълнен. +

    diff --git a/war/src/main/webapp/help/project-config/block-downstream-building_bg.html b/war/src/main/webapp/help/project-config/block-downstream-building_bg.html new file mode 100644 index 0000000000..4dc8acd3b7 --- /dev/null +++ b/war/src/main/webapp/help/project-config/block-downstream-building_bg.html @@ -0,0 +1,5 @@ +
    + Когато опцията е избрана, Jenkins ще предотвратява изгражданията на проект, ако + дъщерен проект се изгражда или е в опашката за изгражданията. В дъщерните проекти + се включват всички транзитивно, т.е. и дъщерните на дъщерните проекти и т.н. +
    diff --git a/war/src/main/webapp/help/project-config/block-upstream-building_bg.html b/war/src/main/webapp/help/project-config/block-upstream-building_bg.html new file mode 100644 index 0000000000..639e558557 --- /dev/null +++ b/war/src/main/webapp/help/project-config/block-upstream-building_bg.html @@ -0,0 +1,4 @@ +
    + Когато опцията е избрана, Jenkins не позволява изграждането на текущия проект, ако някой от проектите, + от който той зависи, е в опашката за изграждане. Зависимостите са рекурсивни. +
    diff --git a/war/src/main/webapp/help/project-config/custom-workspace_bg.html b/war/src/main/webapp/help/project-config/custom-workspace_bg.html new file mode 100644 index 0000000000..496c6a63da --- /dev/null +++ b/war/src/main/webapp/help/project-config/custom-workspace_bg.html @@ -0,0 +1,26 @@ +
    + Jenkins заделя уникална работна директория за всяка задача за изграждане. В нея се изтегля + изходния код и се компилират обектите. В общия случай Jenkins заделя и зачиства тези + директории, но понякога трябва да зададете ръчно тези директории. + +

    + Такъв е случаят, когато някои пътища са зададени в кода и целият проект може да се изгради + само на конкретно място. Ясно е, че подобно изграждане е далеч от идеалното, но възможността + да зададете пътя ще ви помогне в началото. + +

    + Друга подобна ситуация, когато това е полезно, е когато проектът не е за изграждане, а за изпълнение + на определени действия — все едно заместител на „cron“. Като зададете определена директория за + работна, ще помогнете на хората, които разглеждат файловете през уеб интерфейса на Jenkins web UI. + Това облекчава и вас при стартирането на отделните команди. + +

    + В разпределена среда за изграждане, Jenkins може да мести изграждането между различни компютри. + Понякога това е добре, понякога не. Може и да настроите няколко проекта да споделят работна + директория. Отговорността да се уверите, че в такива случаи едновременните изпълнения на + изгражданията не си пречат, е изцяло ваша. + +

    + Ако пътят е относителен, той се определя спрямо отдалечената основна директория на подчинените машини + или спрямо $JENKINS_HOME на основната машина. +

    diff --git a/war/src/main/webapp/help/project-config/defaultView_bg.html b/war/src/main/webapp/help/project-config/defaultView_bg.html new file mode 100644 index 0000000000..d55991aa21 --- /dev/null +++ b/war/src/main/webapp/help/project-config/defaultView_bg.html @@ -0,0 +1,6 @@ +
    + Ако са дефинирани множество изгледи, може да изберете някой от тях за основният за Jenkins. + Това е полезно при големи инсталации на Jenkins, при които изгледът „Всички“ е прекалено голям за + разглеждане. След като изберете друг изглед за основен, ще може да изтриете изгледа „Всички“, + ако искате. +
    diff --git a/war/src/main/webapp/help/project-config/description_bg.html b/war/src/main/webapp/help/project-config/description_bg.html new file mode 100644 index 0000000000..7d6c60b8df --- /dev/null +++ b/war/src/main/webapp/help/project-config/description_bg.html @@ -0,0 +1,4 @@ +
    + Това описание стои в горната част на страницата, за да могат потребителите да узнаят + за какво е този проект. Може да ползвате HTML или друг настроен език с маркиране. +
    diff --git a/war/src/main/webapp/help/project-config/disable_bg.html b/war/src/main/webapp/help/project-config/disable_bg.html new file mode 100644 index 0000000000..39adfb09fa --- /dev/null +++ b/war/src/main/webapp/help/project-config/disable_bg.html @@ -0,0 +1,12 @@ +
    + Когато опцията е избрана, няма да се изпълняват нови изграждания на проекта. +

    + Това е полезно, ако искате временно да предотвратите изгражданията на определен + проект. Например, ако проектът зависи от инфраструктура, която няма да е налична + в определен период, като тестов сървър или системата за контрол на версии, които + временно са в профилактика, можете да изключите проекта, за да не получавате + известия за неуспешните изграждания. +

    + Можете да извършите това и чрез бутоните Изключване на проект (или + Включване на проект) от основната страница на проекта. +

    diff --git a/war/src/main/webapp/help/project-config/downstream_bg.html b/war/src/main/webapp/help/project-config/downstream_bg.html new file mode 100644 index 0000000000..e00658c9d6 --- /dev/null +++ b/war/src/main/webapp/help/project-config/downstream_bg.html @@ -0,0 +1,23 @@ +
    + Автоматично стартиране на други проекти след завършването на този. + Може да зададете множество проекти като ги разделите със запетая ето така: + „едно, две, три“. + +

    + Освен очевидния случай, когато става дума за проекти, които зависят от този, може + да използвате тази възможност да разделите дълъг процес на изграждане на няколко + етапа (като изграждане и последващо тестване). +

    + +

    + Подпроектите трябва да се указват с пътища. Това може да е абсолютен път, започващ от + основната директория на Jenkins, като „/основна/подпроект“, където „основна“ е директорията + на Jenkins. Може и да е относителен път спрямо директорията на текущия проект, например: + „директория/подпроект“, където „директория“ е на същото ниво както текущия проект. + Примери за такива приставки са: + Приставката за папки на CloudBees + и + Приставката за проекти с множество клони. + Има и други такива приставки. +

    +
    diff --git a/war/src/main/webapp/help/project-config/scmCheckoutRetryCount_bg.html b/war/src/main/webapp/help/project-config/scmCheckoutRetryCount_bg.html new file mode 100644 index 0000000000..77d0a2deb5 --- /dev/null +++ b/war/src/main/webapp/help/project-config/scmCheckoutRetryCount_bg.html @@ -0,0 +1,20 @@ +
    + Когато опцията е избрана, а проектът е настроен да използва система за + контрол на версиите, Jenkins ще се опита множество пъти да изтегли изходния + код докато успее. +

    + Стандартното поведение, което съответства на стойност 0 е + изграждането да се обяви за неуспешно, дори когато първото изтегляне е + неуспешно. +

    + Ако зададете по-висока стойност, Jenkins ще повтаря опитите за изтегляне на + кода толкова пъти със изчакване от 10 сек. между отделните опити. Ако и + последният опит е неуспешен, изграждането се обявява за неуспешно и + изпълнението приключва. +

    + Приставките могат да имат различни реализации на работа с контрол на версиите, + затова всяка приставка поотделно решава кое изтегляне е неуспешно. +

    + Ако опцията не е избрана, ще се ползва стандартната стойност от Настройките + на системата. +

    diff --git a/war/src/main/webapp/help/project-config/triggerRemotely_bg.html b/war/src/main/webapp/help/project-config/triggerRemotely_bg.html new file mode 100644 index 0000000000..24e8dfe20b --- /dev/null +++ b/war/src/main/webapp/help/project-config/triggerRemotely_bg.html @@ -0,0 +1,11 @@ +
    + Включете тази опция, ако искате да стартирате нови изграждания + чрез отварянето на специални адреси (удобно е за скриптове). +

    Типичен пример за това е стартирането на ново изграждане от + куките за автоматично изпълнение в системите за контрол на + версиите при подаване към хранилището или скрипт, който + обработва е-писмата с известия от хранилището.

    +

    Ще трябва да подавате низа за идентификация, така че само + тези, които го знаят, да могат да стартират отдалечено това + изграждане.

    +
    diff --git a/war/src/main/webapp/help/run-config/description_bg.html b/war/src/main/webapp/help/run-config/description_bg.html new file mode 100644 index 0000000000..cf52b6ccfa --- /dev/null +++ b/war/src/main/webapp/help/run-config/description_bg.html @@ -0,0 +1,4 @@ +
    + Това описание се поставя на страницата на изграждането, така че да е лесно да се ориентираш + за какво става дума. Може да ползвате HTML или друг настроен език с маркиране. +
    diff --git a/war/src/main/webapp/help/run-config/displayName_bg.html b/war/src/main/webapp/help/run-config/displayName_bg.html new file mode 100644 index 0000000000..a82f982511 --- /dev/null +++ b/war/src/main/webapp/help/run-config/displayName_bg.html @@ -0,0 +1,4 @@ +
    + Когото е полето е зададено, стойността му се ползва вместо стандартния шаблон „#NNN“ като + указател към изграждането. Оставете полето празно, за да ползвате стандартната стойност. +
    diff --git a/war/src/main/webapp/help/scm-browsers/list_bg.html b/war/src/main/webapp/help/scm-browsers/list_bg.html new file mode 100644 index 0000000000..bc49b8e2f9 --- /dev/null +++ b/war/src/main/webapp/help/scm-browsers/list_bg.html @@ -0,0 +1,6 @@ +
    + Добавяне на връзки към изгледите с промени на външна система за разглеждане на промените. + Автоматичният избор пробва да налучка това на базата на настройките на другите задачи за + изграждане, ако това се поддържа от системата за контрол на версиите и се открие задача + с подобни настройки за контрола на версиите. +
    diff --git a/war/src/main/webapp/help/system-config/defaultJobNamingStrategy_bg.html b/war/src/main/webapp/help/system-config/defaultJobNamingStrategy_bg.html new file mode 100644 index 0000000000..c56f79694d --- /dev/null +++ b/war/src/main/webapp/help/system-config/defaultJobNamingStrategy_bg.html @@ -0,0 +1,4 @@ +
    + Това е стандартната настройка, която позволява на потребителя да избере + произволно име на задачата за изграждането. +
    diff --git a/war/src/main/webapp/help/system-config/globalEnvironmentVariables_bg.html b/war/src/main/webapp/help/system-config/globalEnvironmentVariables_bg.html new file mode 100644 index 0000000000..e8fb40f68c --- /dev/null +++ b/war/src/main/webapp/help/system-config/globalEnvironmentVariables_bg.html @@ -0,0 +1,5 @@ +
    + Тези двойки ключ-стойност се прилагат на всеки компютър при всяко изграждане. Те може да се използват + в настройките на Jenkins, чрез $КЛЮЧ или ${КЛЮЧ}, и ще бъдат добавени към средата на процесите на + изграждането. +
    diff --git a/war/src/main/webapp/help/system-config/homeDirectory_bg.html b/war/src/main/webapp/help/system-config/homeDirectory_bg.html new file mode 100644 index 0000000000..2de372e76b --- /dev/null +++ b/war/src/main/webapp/help/system-config/homeDirectory_bg.html @@ -0,0 +1,32 @@ +
    + Стандартно Jenkins съхранява всички собствени данни в тази директория на + файловата система. +
    + В раздела Допълнителни може да изберете да съхранявате работните + места и записите за изграждане другаде. +

    + Има няколко начина да промените работната директория на Jenkins: +

      +
    • + Редактирайте променливата JENKINS_HOME в системния файл с + настройки на Jenkins (Примерно това е /etc/sysconfig/jenkins + при Red Hat Linux). +
    • + Използвайте административния инструмент на уеб контейнера, който ползвате, + за да настроите променливата на средата JENKINS_HOME. +
    • + Задайте променливата на средата JENKINS_HOME, преди да + стартирате уеб контейнера си или преди директно да стартирате Jenkins от + WAR файла. +
    • + Задайте системното свойство на Java — JENKINS_HOME, преди да + стартирате уеб контейнера си или преди директно да стартирате Jenkins от + WAR файла. +
    • + Променете файла web.xml в jenkins.war (или разархивирания + му еквивалент в контейнера). Макар и възможен този вариант не се препоръчва. +
    + Стойността не може да бъде променяна докато Jenkins работи. +
    + Тя е показана тук, за да сте сигурни, че настройката влиза в сила. +
    diff --git a/war/src/main/webapp/help/system-config/master-slave/availability_bg.html b/war/src/main/webapp/help/system-config/master-slave/availability_bg.html new file mode 100644 index 0000000000..ae89c35cb2 --- /dev/null +++ b/war/src/main/webapp/help/system-config/master-slave/availability_bg.html @@ -0,0 +1,54 @@ +
    + Управление кога Jenkins включва и изключва този агент. + +
    +
    + Агентът да е максимално време онлайн +
    +
    + В този режим Jenkins държи агента възможно най-дълго време на линия. +

    + Ако агентът се изключи, примерно поради временен мрежов проблем, + Jenkins периодично ще пробва да го рестартира. +

    + +
    + Агентът да се включва и изключва по определено време +
    +
    + В този режим Jenkins включва агента в определен момент и го държи + на линия докато не мине определеното време. +

    + Ако агентът поради някаква причина не е на линия в определения период, + Jenkins периодично ще пробва да го рестартира. +

    + След като агентът е бил на линия за броя минути, указан в полето + Работно време, той ще бъде изключен. +
    + Ако настройката Keep online while builds are running е зададено, + Jenkins ще изчака завършването на текущите изграждания, преди да изключи + агента. +

    + +
    + Включване на агента при нужда и изключване при бездействане +
    +
    + В този режим Jenkins включва агента в случай на нужда — има чакащи + изграждания в опашката, които отговарят на следните изисквания: +
      +
    • Чакали са в опашката поне времето указано в настройката + Максимално време за чакане
    • +
    • Могат да се изпълнят на този агент (т.е. отговарят на израза с + етикетите)
    • +
    + + Агентът ще бъде изключен, ако: +
      +
    • Няма текущи изграждания на него
    • +
    • Агентът е бездействал поне периода, указан в настройката + Позволено бездействие
    • +
    +
    +
    +
    diff --git a/war/src/main/webapp/help/system-config/master-slave/clock_bg.html b/war/src/main/webapp/help/system-config/master-slave/clock_bg.html new file mode 100644 index 0000000000..83c46dab44 --- /dev/null +++ b/war/src/main/webapp/help/system-config/master-slave/clock_bg.html @@ -0,0 +1,5 @@ +
    + Много елементи от изграждането зависят от часовника. Поради тази причина, ако часовниците на + основната и допълнителните машини на Jenkins силно се различават, може да се сблъскате с трудни + за обяснение проблеми. Пробвайте да синхронизирате часовниците на машините чрез NTP. +
    diff --git a/war/src/main/webapp/help/system-config/master-slave/demand/idleDelay_bg.html b/war/src/main/webapp/help/system-config/master-slave/demand/idleDelay_bg.html new file mode 100644 index 0000000000..ebf58f00c2 --- /dev/null +++ b/war/src/main/webapp/help/system-config/master-slave/demand/idleDelay_bg.html @@ -0,0 +1,3 @@ +
    + Брой минути бездействие за този компютър, преди Jenkins да го изведе извън линия. +
    diff --git a/war/src/main/webapp/help/system-config/master-slave/demand/inDemandDelay_bg.html b/war/src/main/webapp/help/system-config/master-slave/demand/inDemandDelay_bg.html new file mode 100644 index 0000000000..49c55a713e --- /dev/null +++ b/war/src/main/webapp/help/system-config/master-slave/demand/inDemandDelay_bg.html @@ -0,0 +1,4 @@ +
    + Брой минути за изчакване на задачите в опашката за изграждане, преди Jenkins да + се опита отново да включи компютъра на линия. +
    diff --git a/war/src/main/webapp/help/system-config/master-slave/demand/keepUpWhenActive_bg.html b/war/src/main/webapp/help/system-config/master-slave/demand/keepUpWhenActive_bg.html new file mode 100644 index 0000000000..5c0eb29ebc --- /dev/null +++ b/war/src/main/webapp/help/system-config/master-slave/demand/keepUpWhenActive_bg.html @@ -0,0 +1,4 @@ +
    + Когато това е избрано, Jenkins ще изчаква вече стартираните изграждания на този компютър, + преди да го изведе извън линия. +
    diff --git a/war/src/main/webapp/help/system-config/master-slave/description_bg.html b/war/src/main/webapp/help/system-config/master-slave/description_bg.html new file mode 100644 index 0000000000..fde3e0e115 --- /dev/null +++ b/war/src/main/webapp/help/system-config/master-slave/description_bg.html @@ -0,0 +1,6 @@ +
    + Незадължително допълнително описание на тази машина — като за пред хора. +

    + Това може да включва примерно: броят процесори или ядра, количеството + памет, физическото местонахождение на машината и др. +

    diff --git a/war/src/main/webapp/help/system-config/master-slave/jnlp-tunnel_bg.html b/war/src/main/webapp/help/system-config/master-slave/jnlp-tunnel_bg.html new file mode 100644 index 0000000000..53c11117b0 --- /dev/null +++ b/war/src/main/webapp/help/system-config/master-slave/jnlp-tunnel_bg.html @@ -0,0 +1,24 @@ +
    + Когато подчинен компютър е стартиран чрез JNLP, агентът се опитва да се свърже + към конкретен порт по TCP към Jenkins, за да създаде комуникационен канал. + Някои мрежи с повишено ниво на сигурност могат да предотвратят това. + Това може да се случи също и когато Jenkins е зад машина, разпределяща + натоварването, + обратен сървър посредник, + в демилитаризираната зона( + и т.н. + +

    + Чрез възможността за тунел може да пренасочите тази връзка през към друг компютър или порт + и това е полезно в случаите указани по-горе. + Полето приема „ХОСТ:ПОРТ“, „:ПОРТ“ или „ХОСТ:“. При първия + формат подчиненият компютър трябва да се свърже към този порт по TCP на зададения хост. + Приема се, че сте настроили мрежата си, така че портът да бъде пренасочен към порта на + Jenkins за JNLP. + +

    + При втория и третия варианти пропуснатите стойности се наследяват от стандартните + (хостът, на който Jenkins се изпълнява, и портът по TCP, който Jenkins е отворил). + Специално форматътХОСТ: е особено полезен, когато Jenkins работи на друга + машина и е зад обратен сървър посредник по HTTP. +

    diff --git a/war/src/main/webapp/help/system-config/master-slave/jnlpSecurity_bg.html b/war/src/main/webapp/help/system-config/master-slave/jnlpSecurity_bg.html new file mode 100644 index 0000000000..c27c90afce --- /dev/null +++ b/war/src/main/webapp/help/system-config/master-slave/jnlpSecurity_bg.html @@ -0,0 +1,54 @@ +
    + Управление как Jenkins позволява стартиране чрез JNLP. + +
    +
    + Стартиране през детайлите на компютъра. Изисква се влизане в регистрацията, + ако сигурността е включена. +
    +
    + Това е стандартната и най-често правилната настройка. + В този режим Jenkins слага връзката за стартирането чрез JNLP в изгледа + по компютри. Ако сигурността е включена, връзката ще е достъпна само + за потребителите, които са се идентифицирали. +
    + +
    + Стартиране от началната страница. Изисква се влизане в регистрацията, + ако сигурността е включена. +
    +
    + В този режим Jenkins предоставя връзката за стартирането чрез JNLP в + изгледа по компютри и страничния панел за състоянието на изграждащите + машини. + Ако сигурността е включена, връзката е достъпна само от идентифицирали + се потребители. +
    + +
    + Стартиране само от изгледа по компютри. Не се изисква влизане в + регистрацията. +
    +
    + В този режим Jenkins предоставя връзка за стартиране по JNLP в изгледа + за компютри. Връзката е налична винаги, когато подчиненият компютър не + е на линия. +
    + ПРЕДУПРЕЖДЕНИЕ! В този режим сигурността е изключена. Подчинените + компютри може да се стартират от всеки с достъп до този сървър. + Подчинените компютри могат да изпълняват произволен код на основния компютър. + Не избирайте тази опция, ако не сте напълно наясно с рисковете. +
    + + + +
    +
    diff --git a/war/src/main/webapp/help/system-config/master-slave/numExecutors_bg.html b/war/src/main/webapp/help/system-config/master-slave/numExecutors_bg.html new file mode 100644 index 0000000000..2a6df4d10f --- /dev/null +++ b/war/src/main/webapp/help/system-config/master-slave/numExecutors_bg.html @@ -0,0 +1,16 @@ +
    + Това определя броя на едновременните изграждания, които Jenkins + изпълнява на тази машина. Стойността отговаря на максималното + натоварване на машината, което Jenkins може да си позволи. + Добра начална стойност е броя на ядрата на процесорите. + +

    + Увеличаването на броя над тази стойност ще забави завършването на + отделното изграждане, но ще увеличи като цяло производителността, + защото позволява на една задача да се възползва от процесор, докато + друга завършва входно/изходна операция. + +

    + Задаването на стойността да е 0 позволява да изключите машината + от Jenkins, без да загубите други настройки. +

    diff --git a/war/src/main/webapp/help/system-config/master-slave/usage_bg.html b/war/src/main/webapp/help/system-config/master-slave/usage_bg.html new file mode 100644 index 0000000000..04fe356ba8 --- /dev/null +++ b/war/src/main/webapp/help/system-config/master-slave/usage_bg.html @@ -0,0 +1,37 @@ +
    + Настройки на планираните изгражданията на тази машина от Jenkins + +
    +
    + Компютърът да се използва максимално +
    +
    + Това е стандартната стойност. +
    + В този режим Jenkins свободно решава дали да използва компютъра. Когато + се появи нужда от изграждане, което може да се извърши от тази машина, + Jenkins ще я ползва. +
    + +
    + Само задачи, чиито изрази с етикети отговарят на тази машина +
    +
    + В този режим Jenkins изгражда проект на този компютър, когато + проектът е ограничен с етикети до определени машини, а този + компютър отговаря на етикетите или ограничението по име. +

    + Това позволява заделянето на тази машина за определен вид задачи. + Например, ако някои задачи включват тестове за производителност, + може да искате те да се изпълняват на определени, точно конфигурирани + машини, като на тях не се изпълнява нищо друго. Това се постига, + като ограничите задачите чрез израз с етикети, който напасва с + тази машина. +
    + Допълнително, като зададете броя на едновременните задачи да е + 1, осигурявате, че в даден момент се изпълнява само една серия + от тестовете за производителност, така резултатите няма да се повлияят + от друга задача изпълнявана по това време. +

    +
    +
    diff --git a/war/src/main/webapp/help/system-config/nodeEnvironmentVariables_bg.html b/war/src/main/webapp/help/system-config/nodeEnvironmentVariables_bg.html new file mode 100644 index 0000000000..51ec7a8d1e --- /dev/null +++ b/war/src/main/webapp/help/system-config/nodeEnvironmentVariables_bg.html @@ -0,0 +1,29 @@ +
    + Променливите на средата дефинирани тук ще са достъпни до всички изграждания + изпълнени на този компютър и ще имат превес над променливите на средата със + същото Име, които са зададени в страницата Настройки на системата. +

    + Чрез изразите $NAME или ${NAME} + (%NAME% под Windows) стойностите на тези променливи може да се + използват в настройките на задачите за изграждане или процесите, които се + стартират от тях. +

    + Jenkins поддържа и специалния запис BASE+EXTRA, който позволява + добавянето на множество двойки ключ-стойност, които се добавят пред стойността + на съществуваща променлива на средата. +

    + Например, ако имате машина с път PATH=/usr/bin, можете да добавите + още директории, към него като дефинирате тук променлива на име + PATH+LOCAL_BIN, чието съдържание е /usr/local/bin. +
    + Като резултат PATH=/usr/local/bin:/usr/bin ще е изнесена към + изгражданията на машината. PATH+LOCAL_BIN=/usr/local/bin също + ще бъде изнесена. +
    + Ако има много променливи за добавяне към основната променлива, те се добавят + според лексикографската подредба на имената им. +

    + Ако стойността е празен низ или низ само от празни знаци, тя няма да се + добави към средата, както и няма да предефинира или изтрива променлива на + средата на машината. +

    diff --git a/war/src/main/webapp/help/system-config/patternJobNamingStrategy_bg.html b/war/src/main/webapp/help/system-config/patternJobNamingStrategy_bg.html new file mode 100644 index 0000000000..4614e19f9c --- /dev/null +++ b/war/src/main/webapp/help/system-config/patternJobNamingStrategy_bg.html @@ -0,0 +1,11 @@ +
    + Регулярен израз, който определя дали името на задача е валидно или не. +

    + Прилагането на проверката върху съществуващите задачи ви позволява да + приложите конвенция за именуването. Дори потребителят да не променя + името на задачата, то ще бъде проверявано при промяна на настройките. + Потребителите ще трябва да го променят, за да напасва на шаблона, + преди да могат да запишат промени в настройките.
    + Тази опция не променя изпълнението на задачи с ненапасващи имена. + Тя определя проверката при запазване на настройките на задачите. +

    diff --git a/war/src/main/webapp/help/system-config/quietPeriod_bg.html b/war/src/main/webapp/help/system-config/quietPeriod_bg.html new file mode 100644 index 0000000000..497168cabc --- /dev/null +++ b/war/src/main/webapp/help/system-config/quietPeriod_bg.html @@ -0,0 +1,6 @@ +
    +

    + Когато е положителна стойност, насрочените изграждания изчакват този брой секунди, + преди да бъдат изградени. Това е полезно при работата със CVS, за да слеете множество + известия по е-пощата в едно. +

    diff --git a/war/src/main/webapp/help/system-config/systemMessage_bg.html b/war/src/main/webapp/help/system-config/systemMessage_bg.html new file mode 100644 index 0000000000..72f784e748 --- /dev/null +++ b/war/src/main/webapp/help/system-config/systemMessage_bg.html @@ -0,0 +1,7 @@ +
    + Това съобщение ще се показва в горната част на + основната страница на Jenkins. +

    + Това е полезно, когато искате да известите всички потребители + за определено нещо. +

    diff --git a/war/src/main/webapp/help/tasks/fingerprint/keepDependencies_bg.html b/war/src/main/webapp/help/tasks/fingerprint/keepDependencies_bg.html new file mode 100644 index 0000000000..1b8dfec218 --- /dev/null +++ b/war/src/main/webapp/help/tasks/fingerprint/keepDependencies_bg.html @@ -0,0 +1,18 @@ +
    + Когато опцията е избрана, всички + реферирани изграждания от изграждането на този проект (чрез цифрови + отпечатъци) няма да бъдат засегнати от редовната смяна на журналните + файлове. + +

    + Когато едно изграждане зависи от други в Jenkins и от време на време трябва + да задавате етикет на състоянието на работното пространство, е много удобно + да зададете етикета и на всички зависимости в Jenkins. Проблем възниква, + когато смяната на журналните файлове се е случила между момента на изграждането + и момента на задаване на етикет. В такъв случай е невъзможно да дадете етикета + и на всички зависимости. + +

    + Тази настройка предотвратява това като „заключва“ изгражданията, от които това + зависи и задаването на етикет е винаги възможно. +

    diff --git a/war/src/main/webapp/help/tools/help-label_bg.html b/war/src/main/webapp/help/tools/help-label_bg.html new file mode 100644 index 0000000000..6cdb02e4a0 --- /dev/null +++ b/war/src/main/webapp/help/tools/help-label_bg.html @@ -0,0 +1,6 @@ +
    + Незадължителен етикет, който да ограничи използването на този метод на инсталиране. + Този етикет може да е и израз с етикети (например : „linux&&x64“ или „windows&&x86“). + Методът на инсталиране ще е позволен само за компютрите, които отговарят на етикета + или целия израз. +
    diff --git a/war/src/main/webapp/help/tools/tool-location-node-property_bg.html b/war/src/main/webapp/help/tools/tool-location-node-property_bg.html new file mode 100644 index 0000000000..b4728507b8 --- /dev/null +++ b/war/src/main/webapp/help/tools/tool-location-node-property_bg.html @@ -0,0 +1,5 @@ +
    + Тук може да укажете специфични местоположения на определени програми на този компютър, като + тези стойности са с приоритет над глобалните. (Може да предпочитате да използвате автоматични + инсталатори, което премахва нуждата всеки компютър да се настройва поотделно.) +
    diff --git a/war/src/main/webapp/help/user/description_bg.html b/war/src/main/webapp/help/user/description_bg.html new file mode 100644 index 0000000000..8809050411 --- /dev/null +++ b/war/src/main/webapp/help/user/description_bg.html @@ -0,0 +1,5 @@ +
    + Това описание стои отгоре на вашата страница като потребител, така че другите потребители + да знаят кой сте. Може да използвате HTML или друг език с маркиране, стига да е настроен. + Добре е да поставите връзки към други страници, които ви описват. +
    diff --git a/war/src/main/webapp/help/user/fullName_bg.html b/war/src/main/webapp/help/user/fullName_bg.html new file mode 100644 index 0000000000..960b93e8ac --- /dev/null +++ b/war/src/main/webapp/help/user/fullName_bg.html @@ -0,0 +1,4 @@ +
    + Указване на име вместо идентификатор, с което хората да ви разпознават + по-лесно. „Иван Петров“ е по-разбираемо от „ip2873“. +
    diff --git a/war/src/main/webapp/help/view-config/description_bg.html b/war/src/main/webapp/help/view-config/description_bg.html new file mode 100644 index 0000000000..0460fb2c82 --- /dev/null +++ b/war/src/main/webapp/help/view-config/description_bg.html @@ -0,0 +1,7 @@ +
    + Това съобщение ще се показва на страницата за изгледа. + Това е удобно да обясните за какво служи изгледа или да дадете подходящи + връзки към полезни ресурси. + Може да съдържа форматиране чрез етикети на HTML или произволен маркиращ + език, който се поддържа от Jenkins. +
    diff --git a/war/src/main/webapp/help/view-config/filter-executors_bg.html b/war/src/main/webapp/help/view-config/filter-executors_bg.html new file mode 100644 index 0000000000..9d46b8c6b5 --- /dev/null +++ b/war/src/main/webapp/help/view-config/filter-executors_bg.html @@ -0,0 +1,4 @@ +
    + Когато е избрано, ще се показват само компютрите, които могат да + изпълняват задачите в този изглед. +
    diff --git a/war/src/main/webapp/help/view-config/filter-queue_bg.html b/war/src/main/webapp/help/view-config/filter-queue_bg.html new file mode 100644 index 0000000000..eae7132ab4 --- /dev/null +++ b/war/src/main/webapp/help/view-config/filter-queue_bg.html @@ -0,0 +1,4 @@ +
    + Когато е избрано, ще се показват само тези задачи в опашката, + които са също и в изгледа. +
    diff --git a/war/src/main/webapp/help/view-config/includeregex_bg.html b/war/src/main/webapp/help/view-config/includeregex_bg.html new file mode 100644 index 0000000000..987e558d5b --- /dev/null +++ b/war/src/main/webapp/help/view-config/includeregex_bg.html @@ -0,0 +1,8 @@ +
    + Ако е зададен, регулярният израз ще се прилага към имената на всички + задачи. Имената, които напасват на шаблона, ще се извеждат в този + изглед. Съвет: за да прескачате определени низове, използвайте + отрицателно търсене напред. Например, за да покажете всички задачи, + които не се казват тестнещо_си, ползвайте: + (?!тест.*).* +
    diff --git a/war/src/main/webapp/help/view-config/statusFilter_bg.html b/war/src/main/webapp/help/view-config/statusFilter_bg.html new file mode 100644 index 0000000000..25e47d3fbb --- /dev/null +++ b/war/src/main/webapp/help/view-config/statusFilter_bg.html @@ -0,0 +1,3 @@ +
    + Филтриране на задачите на базата на това дали са включени или не. +
    diff --git a/war/src/test/js/widgets/config/freestyle-config-scrollspy_bg.html b/war/src/test/js/widgets/config/freestyle-config-scrollspy_bg.html new file mode 100644 index 0000000000..233e8d337c --- /dev/null +++ b/war/src/test/js/widgets/config/freestyle-config-scrollspy_bg.html @@ -0,0 +1,169 @@ +
    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Име на проект + + +
    + + +
    +
    Зареждане…
    +
    Стратегия
    +
    #oДопълнителни настройки на проекта
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    Тих период
    Секунди
    Опити за изтегляне от системата за контрол на версиите
    + + +
    + +
    + + +
    Директория
    Показвано име
    + +
    +
    +
    #Автоматично изпълнявани действия при изграждане
    +
    + + + +
    +
    #Изграждане
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    diff --git a/war/src/test/js/widgets/config/freestyle-config-tabbed_bg.html b/war/src/test/js/widgets/config/freestyle-config-tabbed_bg.html new file mode 100644 index 0000000000..9d5c3c8d79 --- /dev/null +++ b/war/src/test/js/widgets/config/freestyle-config-tabbed_bg.html @@ -0,0 +1,163 @@ +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Име на проект + + +
    + + +
    +
    Зареждане…
    +
    Стратегия
    +
    #Допълнителни настройки на проекта
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    Тих период
    Секунди
    Опити за изтегляне от системата за контрол на версиите
    + + +
    + +
    + + +
    Директория
    Показвано име
    + +
    +
    +
    #Автоматично изпълнявани действия при изграждане
    +
    + + + +
    +
    #Изграждане
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    From 5fcccf79faad6f607d277b434ef322e0495867bb Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Mon, 21 Aug 2017 07:44:04 -0700 Subject: [PATCH 084/109] [maven-release-plugin] prepare release jenkins-2.75 --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index b98eaaa433..0258e4bde5 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.75-SNAPSHOT + 2.75 cli diff --git a/core/pom.xml b/core/pom.xml index 3fcc54e1d6..187a34af55 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.75-SNAPSHOT + 2.75 jenkins-core diff --git a/pom.xml b/pom.xml index 7488ff1f29..9f0f52a776 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.75-SNAPSHOT + 2.75 pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - HEAD + jenkins-2.75 diff --git a/test/pom.xml b/test/pom.xml index 9d12833b20..d2d05df3b5 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.75-SNAPSHOT + 2.75 test diff --git a/war/pom.xml b/war/pom.xml index 4203816bd0..6ae03d4122 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.75-SNAPSHOT + 2.75 jenkins-war From 8c580ddd866a86b9143f57f96dc6be6ef9d10cb4 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Mon, 21 Aug 2017 07:44:04 -0700 Subject: [PATCH 085/109] [maven-release-plugin] prepare for next development iteration --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 0258e4bde5..a8d38aa350 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.75 + 2.76-SNAPSHOT cli diff --git a/core/pom.xml b/core/pom.xml index 187a34af55..04e5c819a4 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.75 + 2.76-SNAPSHOT jenkins-core diff --git a/pom.xml b/pom.xml index 9f0f52a776..063a3a11bb 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.75 + 2.76-SNAPSHOT pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - jenkins-2.75 + HEAD diff --git a/test/pom.xml b/test/pom.xml index d2d05df3b5..d68cad1116 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.75 + 2.76-SNAPSHOT test diff --git a/war/pom.xml b/war/pom.xml index 6ae03d4122..a9812aba46 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.75 + 2.76-SNAPSHOT jenkins-war From c60735a1242b8b06817c2fd0feeb9dc868750948 Mon Sep 17 00:00:00 2001 From: Akbashev Alexander Date: Tue, 22 Aug 2017 10:33:10 +0200 Subject: [PATCH 086/109] [JENKINS-29537] EnvironmentContributingAction compatible with Workflow (#2975) * [JENKINS-29537] EnvironmentContributingAction compatible with Workflow + Adds new method with default implementation in EnvironmentContributingAction to support Runs + Marks AbstractBuild as deprecated + Adds default implementation for deprecated method for backward compatiblity. * Tiny improvements in javadoc --- .../main/java/hudson/model/AbstractBuild.java | 2 +- .../model/EnvironmentContributingAction.java | 37 +++- .../java/hudson/model/ParametersAction.java | 5 +- core/src/main/java/hudson/model/Run.java | 3 + .../EnvironmentContributingActionTest.java | 159 ++++++++++++++++++ .../hudson/model/ParametersActionTest.java | 2 +- 6 files changed, 203 insertions(+), 5 deletions(-) create mode 100644 core/src/test/java/hudson/model/EnvironmentContributingActionTest.java diff --git a/core/src/main/java/hudson/model/AbstractBuild.java b/core/src/main/java/hudson/model/AbstractBuild.java index c8674fb028..2b7775c304 100644 --- a/core/src/main/java/hudson/model/AbstractBuild.java +++ b/core/src/main/java/hudson/model/AbstractBuild.java @@ -887,7 +887,7 @@ public abstract class AbstractBuild

    ,R extends Abs e.buildEnvVars(env); for (EnvironmentContributingAction a : getActions(EnvironmentContributingAction.class)) - a.buildEnvVars(this,env); + a.buildEnvVars(this,env,getBuiltOn()); EnvVars.resolve(env); diff --git a/core/src/main/java/hudson/model/EnvironmentContributingAction.java b/core/src/main/java/hudson/model/EnvironmentContributingAction.java index 761ed8ae97..55f5035965 100644 --- a/core/src/main/java/hudson/model/EnvironmentContributingAction.java +++ b/core/src/main/java/hudson/model/EnvironmentContributingAction.java @@ -24,9 +24,15 @@ package hudson.model; import hudson.EnvVars; +import hudson.Util; import hudson.model.Queue.Task; import hudson.tasks.Builder; import hudson.tasks.BuildWrapper; +import org.kohsuke.accmod.Restricted; +import org.kohsuke.accmod.restrictions.ProtectedExternally; + +import javax.annotation.CheckForNull; +import javax.annotation.Nonnull; /** * {@link Action} that contributes environment variables during a build. @@ -44,13 +50,42 @@ import hudson.tasks.BuildWrapper; * @see BuildWrapper */ public interface EnvironmentContributingAction extends Action { + /** + * Called by {@link Run} or {@link AbstractBuild} to allow plugins to contribute environment variables. + * + * @param run + * The calling build. Never null. + * @param node + * The node execute on. Can be {@code null} when the Run is not binded to the node, + * e.g. in Pipeline outside the {@code node() step} + * @param env + * Environment variables should be added to this map. + * @since TODO + */ + default void buildEnvVars(@Nonnull Run run, @Nonnull EnvVars env, @CheckForNull Node node) { + if (run instanceof AbstractBuild + && Util.isOverridden(EnvironmentContributingAction.class, + getClass(), "buildEnvVars", AbstractBuild.class, EnvVars.class)) { + buildEnvVars((AbstractBuild) run, env); + } + } + /** * Called by {@link AbstractBuild} to allow plugins to contribute environment variables. * + * @deprecated Use {@link #buildEnvVars(Run, EnvVars, Node)} instead + * * @param build * The calling build. Never null. * @param env * Environment variables should be added to this map. */ - void buildEnvVars(AbstractBuild build, EnvVars env); + @Deprecated + @Restricted(ProtectedExternally.class) + default void buildEnvVars(AbstractBuild build, EnvVars env) { + if (Util.isOverridden(EnvironmentContributingAction.class, + getClass(), "buildEnvVars", Run.class, EnvVars.class, Node.class)) { + buildEnvVars(build, env, build.getBuiltOn()); + } + } } diff --git a/core/src/main/java/hudson/model/ParametersAction.java b/core/src/main/java/hudson/model/ParametersAction.java index 6f7ecca9f8..86e687b17f 100644 --- a/core/src/main/java/hudson/model/ParametersAction.java +++ b/core/src/main/java/hudson/model/ParametersAction.java @@ -138,10 +138,11 @@ public class ParametersAction implements RunAction2, Iterable, Q } } - public void buildEnvVars(AbstractBuild build, EnvVars env) { + @Override + public void buildEnvVars(Run run, EnvVars env, Node node) { for (ParameterValue p : getParameters()) { if (p == null) continue; - p.buildEnvironment(build, env); + p.buildEnvironment(run, env); } } diff --git a/core/src/main/java/hudson/model/Run.java b/core/src/main/java/hudson/model/Run.java index c467439347..46970882a2 100644 --- a/core/src/main/java/hudson/model/Run.java +++ b/core/src/main/java/hudson/model/Run.java @@ -2301,6 +2301,9 @@ public abstract class Run ,RunT extends Run run, EnvVars env, @CheckForNull Node node) { + wasCalled = true; + } + + boolean wasNewMethodCalled() { + return wasCalled; + } + } + + class OverrideAbstractBuild extends InvisibleAction implements EnvironmentContributingAction { + private boolean wasCalled = false; + + @Override + @SuppressWarnings("deprecation") + public void buildEnvVars(AbstractBuild abstractBuild, EnvVars envVars) { + wasCalled = true; + } + + boolean wasDeprecatedMethodCalled() { + return wasCalled; + } + } + + class OverrideBoth extends InvisibleAction implements EnvironmentContributingAction { + private boolean wasCalledAstractBuild = false; + private boolean wasCalledRun = false; + + @SuppressWarnings("deprecation") + @Override + public void buildEnvVars(AbstractBuild abstractBuild, EnvVars envVars) { + wasCalledAstractBuild = true; + } + + @Override + public void buildEnvVars(Run run, EnvVars env, @CheckForNull Node node) { + wasCalledRun = true; + } + + boolean wasDeprecatedMethodCalled() { + return wasCalledAstractBuild; + } + + boolean wasRunCalled() { + return wasCalledRun; + } + } + + private final EnvVars envVars = mock(EnvVars.class); + + @Test + public void testOverrideRunMethodAndCallNewMethod() throws Exception { + Run run = mock(Run.class); + Node node = mock(Node.class); + + OverrideRun overrideRun = new OverrideRun(); + overrideRun.buildEnvVars(run, envVars, node); + + assertTrue(overrideRun.wasNewMethodCalled()); + } + + /** + * If only non-deprecated method was overridden it would be executed even if someone would call deprecated method. + * @throws Exception if happens. + */ + @Test + @SuppressWarnings("deprecation") + public void testOverrideRunMethodAndCallDeprecatedMethod() throws Exception { + AbstractBuild abstractBuild = mock(AbstractBuild.class); + when(abstractBuild.getBuiltOn()).thenReturn(mock(Node.class)); + + OverrideRun overrideRun = new OverrideRun(); + overrideRun.buildEnvVars(abstractBuild, envVars); + + assertTrue(overrideRun.wasNewMethodCalled()); + } + + /** + * {@link AbstractBuild} should work as before. + * @throws Exception if happens. + */ + @Test + public void testOverrideAbstractBuildAndCallNewMethodWithAbstractBuild() throws Exception { + AbstractBuild abstractBuild = mock(AbstractBuild.class); + Node node = mock(Node.class); + + OverrideAbstractBuild action = new OverrideAbstractBuild(); + action.buildEnvVars(abstractBuild, envVars, node); + + assertTrue(action.wasDeprecatedMethodCalled()); + } + + /** + * {@link Run} should not execute method that was overridden for {@link AbstractBuild}. + * @throws Exception if happens. + */ + @Test + public void testOverrideAbstractBuildAndCallNewMethodWithRun() throws Exception { + Run run = mock(Run.class); + Node node = mock(Node.class); + + OverrideAbstractBuild action = new OverrideAbstractBuild(); + action.buildEnvVars(run, envVars, node); + + assertFalse(action.wasDeprecatedMethodCalled()); + } + + /** + * If someone wants to use overridden deprecated method, it would still work. + * @throws Exception if happens. + */ + @Test + public void testOverrideAbstractBuildAndCallDeprecatedMethod() throws Exception { + AbstractBuild abstractBuild = mock(AbstractBuild.class); + + OverrideAbstractBuild overrideRun = new OverrideAbstractBuild(); + overrideRun.buildEnvVars(abstractBuild, envVars); + + assertTrue(overrideRun.wasDeprecatedMethodCalled()); + } + + @Test + public void testOverrideBothAndCallNewMethod() throws Exception { + Run run = mock(Run.class); + Node node = mock(Node.class); + + OverrideBoth overrideRun = new OverrideBoth(); + overrideRun.buildEnvVars(run, envVars, node); + + assertTrue(overrideRun.wasRunCalled()); + } + + @Test + public void testOverrideBothAndCallDeprecatedMethod() throws Exception { + AbstractBuild abstractBuild = mock(AbstractBuild.class); + + OverrideBoth overrideRun = new OverrideBoth(); + overrideRun.buildEnvVars(abstractBuild, envVars); + + assertTrue(overrideRun.wasDeprecatedMethodCalled()); + } +} \ No newline at end of file diff --git a/core/src/test/java/hudson/model/ParametersActionTest.java b/core/src/test/java/hudson/model/ParametersActionTest.java index d9b6e63e69..182ead6ec1 100644 --- a/core/src/test/java/hudson/model/ParametersActionTest.java +++ b/core/src/test/java/hudson/model/ParametersActionTest.java @@ -105,7 +105,7 @@ public class ParametersActionTest { // Interaction with build EnvVars vars = new EnvVars(); - parametersAction.buildEnvVars(build, vars); + parametersAction.buildEnvVars(build, vars, build.getBuiltOn()); assertEquals(2, vars.size()); parametersAction.createVariableResolver(build); From c01a597f4790ce6962b21bd3ce057b07df68c82f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Oliver=20Gond=C5=BEa?= Date: Wed, 23 Aug 2017 12:54:59 +0200 Subject: [PATCH 087/109] Towards 2.73.1 --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index fbd4e27dd2..842f536da2 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.73 + 2.73.1-SNAPSHOT cli diff --git a/core/pom.xml b/core/pom.xml index 2cf8a6debd..1b4c11e152 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.73 + 2.73.1-SNAPSHOT jenkins-core diff --git a/pom.xml b/pom.xml index e4631ebaa8..740a6ec5a6 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.73 + 2.73.1-SNAPSHOT pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - jenkins-2.73 + HEAD diff --git a/test/pom.xml b/test/pom.xml index 34b13bf24f..2561b1eb61 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.73 + 2.73.1-SNAPSHOT test diff --git a/war/pom.xml b/war/pom.xml index e02ef837ff..e1e4872633 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.73 + 2.73.1-SNAPSHOT jenkins-war From 9a8fdb9ac32702552f156d2898dffe2e67402c46 Mon Sep 17 00:00:00 2001 From: Josiah Haswell Date: Sat, 12 Aug 2017 16:53:41 -0600 Subject: [PATCH 088/109] [FIX JENKINS-43848] - Lack of cache-invalidation headers results in stale item list (#2973) * Saving progress for review * Adding licenses * Adding integration test for headers * Removing proposal for refactoring to method objects * Removing whitespace changeswq * Fixing test (cherry picked from commit 34bf393255bb603bb3b0fb921a41fc3916d16f42) --- core/src/main/java/hudson/model/View.java | 4 +++ test/src/test/java/hudson/model/ViewTest.java | 25 +++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/core/src/main/java/hudson/model/View.java b/core/src/main/java/hudson/model/View.java index 375087c2da..f19ab9a605 100644 --- a/core/src/main/java/hudson/model/View.java +++ b/core/src/main/java/hudson/model/View.java @@ -1053,6 +1053,10 @@ public abstract class View extends AbstractModelObject implements AccessControll */ @Restricted(DoNotUse.class) public Categories doItemCategories(StaplerRequest req, StaplerResponse rsp, @QueryParameter String iconStyle) throws IOException, ServletException { + + rsp.addHeader("Cache-Control", "no-cache, no-store, must-revalidate"); + rsp.addHeader("Pragma", "no-cache"); + rsp.addHeader("Expires", "0"); getOwner().checkPermission(Item.CREATE); Categories categories = new Categories(); int order = 0; diff --git a/test/src/test/java/hudson/model/ViewTest.java b/test/src/test/java/hudson/model/ViewTest.java index 56f99abdf0..7a70d87df2 100644 --- a/test/src/test/java/hudson/model/ViewTest.java +++ b/test/src/test/java/hudson/model/ViewTest.java @@ -25,6 +25,7 @@ package hudson.model; import com.gargoylesoftware.htmlunit.WebRequest; import com.gargoylesoftware.htmlunit.html.DomNodeUtil; +import com.gargoylesoftware.htmlunit.util.NameValuePair; import jenkins.model.Jenkins; import org.jvnet.hudson.test.Issue; import com.gargoylesoftware.htmlunit.FailingHttpStatusCodeException; @@ -53,11 +54,15 @@ import hudson.util.HudsonIsLoading; import java.io.File; import java.io.IOException; import java.util.Arrays; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.logging.Level; import java.util.logging.LogRecord; import jenkins.model.ProjectNamingStrategy; import jenkins.security.NotReallyRoleSensitiveCallable; + +import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.*; import org.junit.Ignore; import org.junit.Rule; @@ -85,6 +90,26 @@ public class ViewTest { assertNotNull(j.createWebClient().goTo("").getWebResponse().getResponseHeaderValue("X-Hudson")); } + @Issue("JENKINS-43848") + @Test public void testNoCacheHeadersAreSet() throws Exception { + List responseHeaders = j.createWebClient() + .goTo("view/all/itemCategories", "application/json") + .getWebResponse() + .getResponseHeaders(); + + + final Map values = new HashMap<>(); + + for(NameValuePair p : responseHeaders) { + values.put(p.getName(), p.getValue()); + } + + String resp = values.get("Cache-Control"); + assertThat(resp, is("no-cache, no-store, must-revalidate")); + assertThat(values.get("Expires"), is("0")); + assertThat(values.get("Pragma"), is("no-cache")); + } + /** * Creating two views with the same name. */ From 4d2100d0845fc4de5c51105660e4be23fb16e868 Mon Sep 17 00:00:00 2001 From: godfath3r Date: Sat, 12 Aug 2017 13:24:32 +0300 Subject: [PATCH 089/109] [JENKINS-42376] - Add executor name on Unexpected exception. (#2970) * Add executor name on Unexpected exception. * Add a colon after job name (cherry picked from commit 86c28ea056236ee9125af7cc85b256cb65643a2f) --- core/src/main/java/hudson/model/Executor.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/hudson/model/Executor.java b/core/src/main/java/hudson/model/Executor.java index 279a1fa762..a9b428ffba 100644 --- a/core/src/main/java/hudson/model/Executor.java +++ b/core/src/main/java/hudson/model/Executor.java @@ -444,7 +444,7 @@ public class Executor extends Thread implements ModelObject { LOGGER.log(FINE, getName()+" interrupted",e); // die peacefully } catch(Exception | Error e) { - LOGGER.log(SEVERE, "Unexpected executor death", e); + LOGGER.log(SEVERE, getName()+": Unexpected executor death", e); } finally { if (asynchronousExecution == null) { finish2(); From 12a949ea01fd4d03d7626de6c95afc828f79ac18 Mon Sep 17 00:00:00 2001 From: Oleg Nenashev Date: Fri, 25 Aug 2017 16:04:09 +0200 Subject: [PATCH 090/109] Update to Jenkins Parent POM 1.38 (#2985) * Update to Jenkins Parent POM 1.39 * Pick the released version of Jenkins POM --- pom.xml | 32 ++------------------------------ 1 file changed, 2 insertions(+), 30 deletions(-) diff --git a/pom.xml b/pom.xml index 063a3a11bb..27c6c9cc8d 100644 --- a/pom.xml +++ b/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci jenkins - 1.36 + 1.38 org.jenkins-ci.main @@ -94,7 +94,6 @@ THE SOFTWARE. ${skipTests} 3.0.4 true - 1.2 1.11 ${access-modifier.version} ${access-modifier.version} @@ -239,14 +238,12 @@ THE SOFTWARE. org.codehaus.mojo animal-sniffer-annotations - 1.9 provided true org.jenkins-ci test-annotations - ${test-annotations.version} test @@ -680,25 +677,6 @@ THE SOFTWARE. org.apache.maven.plugins maven-enforcer-plugin - - - enforce - - - - - 1.8.0 - - - 3.0 - - - 1.${java.level} - - - - - enforce-banned-dependencies @@ -719,13 +697,7 @@ THE SOFTWARE. - - - org.codehaus.mojo - extra-enforcer-rules - 1.0-beta-6 - - + From b3e2ed8a37531d65e32d45070aaaae450e8af543 Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Fri, 25 Aug 2017 14:28:24 -0400 Subject: [PATCH 091/109] [JENKINS-29537] Merged #2993: amended EnvironmentContributingAction signature. --- .../main/java/hudson/model/AbstractBuild.java | 2 +- .../model/EnvironmentContributingAction.java | 18 +++++++----------- .../java/hudson/model/ParametersAction.java | 2 +- core/src/main/java/hudson/model/Run.java | 7 +++++-- .../EnvironmentContributingActionTest.java | 16 ++++++---------- .../hudson/model/ParametersActionTest.java | 2 +- .../EnvironmentVariableNodePropertyTest.java | 2 +- 7 files changed, 22 insertions(+), 27 deletions(-) diff --git a/core/src/main/java/hudson/model/AbstractBuild.java b/core/src/main/java/hudson/model/AbstractBuild.java index 2b7775c304..c8674fb028 100644 --- a/core/src/main/java/hudson/model/AbstractBuild.java +++ b/core/src/main/java/hudson/model/AbstractBuild.java @@ -887,7 +887,7 @@ public abstract class AbstractBuild

    ,R extends Abs e.buildEnvVars(env); for (EnvironmentContributingAction a : getActions(EnvironmentContributingAction.class)) - a.buildEnvVars(this,env,getBuiltOn()); + a.buildEnvVars(this,env); EnvVars.resolve(env); diff --git a/core/src/main/java/hudson/model/EnvironmentContributingAction.java b/core/src/main/java/hudson/model/EnvironmentContributingAction.java index 55f5035965..03ad23fb35 100644 --- a/core/src/main/java/hudson/model/EnvironmentContributingAction.java +++ b/core/src/main/java/hudson/model/EnvironmentContributingAction.java @@ -31,7 +31,6 @@ import hudson.tasks.BuildWrapper; import org.kohsuke.accmod.Restricted; import org.kohsuke.accmod.restrictions.ProtectedExternally; -import javax.annotation.CheckForNull; import javax.annotation.Nonnull; /** @@ -46,23 +45,20 @@ import javax.annotation.Nonnull; * * @author Kohsuke Kawaguchi * @since 1.318 - * @see AbstractBuild#getEnvironment(TaskListener) + * @see Run#getEnvironment(TaskListener) * @see BuildWrapper */ public interface EnvironmentContributingAction extends Action { /** - * Called by {@link Run} or {@link AbstractBuild} to allow plugins to contribute environment variables. + * Called by {@link Run} to allow plugins to contribute environment variables. * * @param run * The calling build. Never null. - * @param node - * The node execute on. Can be {@code null} when the Run is not binded to the node, - * e.g. in Pipeline outside the {@code node() step} * @param env * Environment variables should be added to this map. - * @since TODO + * @since 2.76 */ - default void buildEnvVars(@Nonnull Run run, @Nonnull EnvVars env, @CheckForNull Node node) { + default void buildEnvironment(@Nonnull Run run, @Nonnull EnvVars env) { if (run instanceof AbstractBuild && Util.isOverridden(EnvironmentContributingAction.class, getClass(), "buildEnvVars", AbstractBuild.class, EnvVars.class)) { @@ -73,7 +69,7 @@ public interface EnvironmentContributingAction extends Action { /** * Called by {@link AbstractBuild} to allow plugins to contribute environment variables. * - * @deprecated Use {@link #buildEnvVars(Run, EnvVars, Node)} instead + * @deprecated Use {@link #buildEnvironment} instead * * @param build * The calling build. Never null. @@ -84,8 +80,8 @@ public interface EnvironmentContributingAction extends Action { @Restricted(ProtectedExternally.class) default void buildEnvVars(AbstractBuild build, EnvVars env) { if (Util.isOverridden(EnvironmentContributingAction.class, - getClass(), "buildEnvVars", Run.class, EnvVars.class, Node.class)) { - buildEnvVars(build, env, build.getBuiltOn()); + getClass(), "buildEnvironment", Run.class, EnvVars.class)) { + buildEnvironment(build, env); } } } diff --git a/core/src/main/java/hudson/model/ParametersAction.java b/core/src/main/java/hudson/model/ParametersAction.java index 86e687b17f..60db6822d7 100644 --- a/core/src/main/java/hudson/model/ParametersAction.java +++ b/core/src/main/java/hudson/model/ParametersAction.java @@ -139,7 +139,7 @@ public class ParametersAction implements RunAction2, Iterable, Q } @Override - public void buildEnvVars(Run run, EnvVars env, Node node) { + public void buildEnvironment(Run run, EnvVars env) { for (ParameterValue p : getParameters()) { if (p == null) continue; p.buildEnvironment(run, env); diff --git a/core/src/main/java/hudson/model/Run.java b/core/src/main/java/hudson/model/Run.java index 46970882a2..9d9b7f4cd2 100644 --- a/core/src/main/java/hudson/model/Run.java +++ b/core/src/main/java/hudson/model/Run.java @@ -2301,8 +2301,11 @@ public abstract class Run ,RunT extends Run run, EnvVars env, @CheckForNull Node node) { + public void buildEnvironment(Run run, EnvVars env) { wasCalled = true; } @@ -50,7 +49,7 @@ public class EnvironmentContributingActionTest { } @Override - public void buildEnvVars(Run run, EnvVars env, @CheckForNull Node node) { + public void buildEnvironment(Run run, EnvVars env) { wasCalledRun = true; } @@ -71,7 +70,7 @@ public class EnvironmentContributingActionTest { Node node = mock(Node.class); OverrideRun overrideRun = new OverrideRun(); - overrideRun.buildEnvVars(run, envVars, node); + overrideRun.buildEnvironment(run, envVars); assertTrue(overrideRun.wasNewMethodCalled()); } @@ -99,10 +98,9 @@ public class EnvironmentContributingActionTest { @Test public void testOverrideAbstractBuildAndCallNewMethodWithAbstractBuild() throws Exception { AbstractBuild abstractBuild = mock(AbstractBuild.class); - Node node = mock(Node.class); OverrideAbstractBuild action = new OverrideAbstractBuild(); - action.buildEnvVars(abstractBuild, envVars, node); + action.buildEnvironment(abstractBuild, envVars); assertTrue(action.wasDeprecatedMethodCalled()); } @@ -114,10 +112,9 @@ public class EnvironmentContributingActionTest { @Test public void testOverrideAbstractBuildAndCallNewMethodWithRun() throws Exception { Run run = mock(Run.class); - Node node = mock(Node.class); OverrideAbstractBuild action = new OverrideAbstractBuild(); - action.buildEnvVars(run, envVars, node); + action.buildEnvironment(run, envVars); assertFalse(action.wasDeprecatedMethodCalled()); } @@ -139,10 +136,9 @@ public class EnvironmentContributingActionTest { @Test public void testOverrideBothAndCallNewMethod() throws Exception { Run run = mock(Run.class); - Node node = mock(Node.class); OverrideBoth overrideRun = new OverrideBoth(); - overrideRun.buildEnvVars(run, envVars, node); + overrideRun.buildEnvironment(run, envVars); assertTrue(overrideRun.wasRunCalled()); } diff --git a/core/src/test/java/hudson/model/ParametersActionTest.java b/core/src/test/java/hudson/model/ParametersActionTest.java index 182ead6ec1..6f7321ed19 100644 --- a/core/src/test/java/hudson/model/ParametersActionTest.java +++ b/core/src/test/java/hudson/model/ParametersActionTest.java @@ -105,7 +105,7 @@ public class ParametersActionTest { // Interaction with build EnvVars vars = new EnvVars(); - parametersAction.buildEnvVars(build, vars, build.getBuiltOn()); + parametersAction.buildEnvironment(build, vars); assertEquals(2, vars.size()); parametersAction.createVariableResolver(build); diff --git a/test/src/test/java/hudson/slaves/EnvironmentVariableNodePropertyTest.java b/test/src/test/java/hudson/slaves/EnvironmentVariableNodePropertyTest.java index b1a989ead9..e2ab922e8d 100644 --- a/test/src/test/java/hudson/slaves/EnvironmentVariableNodePropertyTest.java +++ b/test/src/test/java/hudson/slaves/EnvironmentVariableNodePropertyTest.java @@ -155,7 +155,7 @@ public class EnvironmentVariableNodePropertyTest extends HudsonTestCase { // use a timeout so we don't wait infinitely in case of failure FreeStyleBuild build = project.scheduleBuild2(0).get(/*10, TimeUnit.SECONDS*/); - System.out.println(build.getLog()); + System.out.println(build.getLog()); // TODO switch to BuildWatcher when converted to JenkinsRule assertEquals(Result.SUCCESS, build.getResult()); return builder.getEnvVars(); From dc8000cc1e36399595883858c3aae8f135177d49 Mon Sep 17 00:00:00 2001 From: Oleg Nenashev Date: Fri, 25 Aug 2017 22:34:27 +0200 Subject: [PATCH 092/109] Upgrade Remoting to 3.11 (#2988) * Use ClassFilter.appendDefaultFilter. * FindBugs * Update Jenkins Remoting to 3.11, fix reported FindBugs issues --- .../java/hudson/slaves/SlaveComputer.java | 6 +++++ core/src/main/java/jenkins/model/Jenkins.java | 25 +++---------------- pom.xml | 2 +- 3 files changed, 11 insertions(+), 22 deletions(-) diff --git a/core/src/main/java/hudson/slaves/SlaveComputer.java b/core/src/main/java/hudson/slaves/SlaveComputer.java index a1ed233278..73fe5e17f6 100644 --- a/core/src/main/java/hudson/slaves/SlaveComputer.java +++ b/core/src/main/java/hudson/slaves/SlaveComputer.java @@ -454,6 +454,9 @@ public class SlaveComputer extends Computer { } @Override public Integer call() { Channel c = Channel.current(); + if (c == null) { + return -1; + } return resource ? c.resourceLoadingCount.get() : c.classLoadingCount.get(); } } @@ -471,6 +474,9 @@ public class SlaveComputer extends Computer { } @Override public Long call() { Channel c = Channel.current(); + if (c == null) { + return Long.valueOf(-1); + } return resource ? c.resourceLoadingTime.get() : c.classLoadingTime.get(); } } diff --git a/core/src/main/java/jenkins/model/Jenkins.java b/core/src/main/java/jenkins/model/Jenkins.java index f6a3d8386f..3719203219 100644 --- a/core/src/main/java/jenkins/model/Jenkins.java +++ b/core/src/main/java/jenkins/model/Jenkins.java @@ -251,7 +251,6 @@ import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; -import java.lang.reflect.Field; import java.net.BindException; import java.net.HttpURLConnection; import java.net.URL; @@ -903,26 +902,10 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve adjuncts = new AdjunctManager(servletContext, pluginManager.uberClassLoader,"adjuncts/"+SESSION_HASH, TimeUnit2.DAYS.toMillis(365)); - // TODO pending move to standard blacklist, or API to append filter - if (System.getProperty(ClassFilter.FILE_OVERRIDE_LOCATION_PROPERTY) == null) { // not using SystemProperties since ClassFilter does not either - try { - Field blacklistPatternsF = ClassFilter.DEFAULT.getClass().getDeclaredField("blacklistPatterns"); - blacklistPatternsF.setAccessible(true); - Object[] blacklistPatternsA = (Object[]) blacklistPatternsF.get(ClassFilter.DEFAULT); - boolean found = false; - for (int i = 0; i < blacklistPatternsA.length; i++) { - if (blacklistPatternsA[i] instanceof Pattern) { - blacklistPatternsA[i] = Pattern.compile("(" + blacklistPatternsA[i] + ")|(java[.]security[.]SignedObject)"); - found = true; - break; - } - } - if (!found) { - throw new Error("no Pattern found among " + Arrays.toString(blacklistPatternsA)); - } - } catch (NoSuchFieldException | IllegalAccessException x) { - throw new Error("Unexpected ClassFilter implementation in bundled remoting.jar: " + x, x); - } + try { + ClassFilter.appendDefaultFilter(Pattern.compile("java[.]security[.]SignedObject")); // TODO move to standard blacklist + } catch (ClassFilter.ClassFilterException ex) { + throw new IOException("Remoting library rejected the java[.]security[.]SignedObject blacklist pattern", ex); } // initialization consists of ... diff --git a/pom.xml b/pom.xml index 27c6c9cc8d..11eb771118 100644 --- a/pom.xml +++ b/pom.xml @@ -167,7 +167,7 @@ THE SOFTWARE. org.jenkins-ci.main remoting - 3.10 + 3.11 From 7b8ddc1973e6a986917c76f30d982d7e4c95b72f Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Sun, 27 Aug 2017 17:56:12 -0700 Subject: [PATCH 093/109] [maven-release-plugin] prepare release jenkins-2.76 --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index a8d38aa350..eac6dbba23 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.76-SNAPSHOT + 2.76 cli diff --git a/core/pom.xml b/core/pom.xml index 04e5c819a4..e348389f57 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.76-SNAPSHOT + 2.76 jenkins-core diff --git a/pom.xml b/pom.xml index 11eb771118..f2c7d0a16d 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.76-SNAPSHOT + 2.76 pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - HEAD + jenkins-2.76 diff --git a/test/pom.xml b/test/pom.xml index d68cad1116..e30ba4ea1d 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.76-SNAPSHOT + 2.76 test diff --git a/war/pom.xml b/war/pom.xml index a9812aba46..2182adc82e 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.76-SNAPSHOT + 2.76 jenkins-war From 8189c2cd9a2cb0a4e6d2dcf341fb818dbd9165ba Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Sun, 27 Aug 2017 17:56:12 -0700 Subject: [PATCH 094/109] [maven-release-plugin] prepare for next development iteration --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test/pom.xml | 2 +- war/pom.xml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index eac6dbba23..20c7e83213 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main pom - 2.76 + 2.77-SNAPSHOT cli diff --git a/core/pom.xml b/core/pom.xml index e348389f57..066406da3a 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.76 + 2.77-SNAPSHOT jenkins-core diff --git a/pom.xml b/pom.xml index f2c7d0a16d..a8f25c8d0e 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.76 + 2.77-SNAPSHOT pom Jenkins main module @@ -58,7 +58,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - jenkins-2.76 + HEAD diff --git a/test/pom.xml b/test/pom.xml index e30ba4ea1d..b0a641d89f 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.76 + 2.77-SNAPSHOT test diff --git a/war/pom.xml b/war/pom.xml index 2182adc82e..9396b35ed7 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main pom - 2.76 + 2.77-SNAPSHOT jenkins-war From 69828cd85ccfb6c0cb66609c80628ad64052bfcd Mon Sep 17 00:00:00 2001 From: Oleg Nenashev Date: Fri, 25 Aug 2017 22:34:27 +0200 Subject: [PATCH 095/109] Upgrade Remoting to 3.11 (#2988) * Use ClassFilter.appendDefaultFilter. * FindBugs * Update Jenkins Remoting to 3.11, fix reported FindBugs issues (cherry picked from commit dc8000cc1e36399595883858c3aae8f135177d49) --- .../java/hudson/slaves/SlaveComputer.java | 6 +++++ core/src/main/java/jenkins/model/Jenkins.java | 25 +++---------------- pom.xml | 2 +- 3 files changed, 11 insertions(+), 22 deletions(-) diff --git a/core/src/main/java/hudson/slaves/SlaveComputer.java b/core/src/main/java/hudson/slaves/SlaveComputer.java index a1ed233278..73fe5e17f6 100644 --- a/core/src/main/java/hudson/slaves/SlaveComputer.java +++ b/core/src/main/java/hudson/slaves/SlaveComputer.java @@ -454,6 +454,9 @@ public class SlaveComputer extends Computer { } @Override public Integer call() { Channel c = Channel.current(); + if (c == null) { + return -1; + } return resource ? c.resourceLoadingCount.get() : c.classLoadingCount.get(); } } @@ -471,6 +474,9 @@ public class SlaveComputer extends Computer { } @Override public Long call() { Channel c = Channel.current(); + if (c == null) { + return Long.valueOf(-1); + } return resource ? c.resourceLoadingTime.get() : c.classLoadingTime.get(); } } diff --git a/core/src/main/java/jenkins/model/Jenkins.java b/core/src/main/java/jenkins/model/Jenkins.java index f6a3d8386f..3719203219 100644 --- a/core/src/main/java/jenkins/model/Jenkins.java +++ b/core/src/main/java/jenkins/model/Jenkins.java @@ -251,7 +251,6 @@ import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; -import java.lang.reflect.Field; import java.net.BindException; import java.net.HttpURLConnection; import java.net.URL; @@ -903,26 +902,10 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve adjuncts = new AdjunctManager(servletContext, pluginManager.uberClassLoader,"adjuncts/"+SESSION_HASH, TimeUnit2.DAYS.toMillis(365)); - // TODO pending move to standard blacklist, or API to append filter - if (System.getProperty(ClassFilter.FILE_OVERRIDE_LOCATION_PROPERTY) == null) { // not using SystemProperties since ClassFilter does not either - try { - Field blacklistPatternsF = ClassFilter.DEFAULT.getClass().getDeclaredField("blacklistPatterns"); - blacklistPatternsF.setAccessible(true); - Object[] blacklistPatternsA = (Object[]) blacklistPatternsF.get(ClassFilter.DEFAULT); - boolean found = false; - for (int i = 0; i < blacklistPatternsA.length; i++) { - if (blacklistPatternsA[i] instanceof Pattern) { - blacklistPatternsA[i] = Pattern.compile("(" + blacklistPatternsA[i] + ")|(java[.]security[.]SignedObject)"); - found = true; - break; - } - } - if (!found) { - throw new Error("no Pattern found among " + Arrays.toString(blacklistPatternsA)); - } - } catch (NoSuchFieldException | IllegalAccessException x) { - throw new Error("Unexpected ClassFilter implementation in bundled remoting.jar: " + x, x); - } + try { + ClassFilter.appendDefaultFilter(Pattern.compile("java[.]security[.]SignedObject")); // TODO move to standard blacklist + } catch (ClassFilter.ClassFilterException ex) { + throw new IOException("Remoting library rejected the java[.]security[.]SignedObject blacklist pattern", ex); } // initialization consists of ... diff --git a/pom.xml b/pom.xml index 740a6ec5a6..8ab404fade 100644 --- a/pom.xml +++ b/pom.xml @@ -168,7 +168,7 @@ THE SOFTWARE. org.jenkins-ci.main remoting - 3.10 + 3.11 From c709b1932c4a207db2463c147502fffe53e99018 Mon Sep 17 00:00:00 2001 From: "R. Tyler Croy" Date: Thu, 31 Aug 2017 10:34:49 -0700 Subject: [PATCH 096/109] Default the built-in Jenkins Update Center URL to https://updates.jenkins.io Now that we're using JDK8, we can rely on our Let's Encrypt-based certificates on *.jenkins.io Live from Jenkins World! Signed-off-by: M. Allan Signed-off-by: R. Tyler Croy --- core/src/main/java/hudson/model/DownloadService.java | 12 ------------ core/src/main/java/hudson/model/UpdateCenter.java | 2 +- core/src/main/java/hudson/model/UpdateSite.java | 12 ------------ .../src/test/java/hudson/model/UpdateCenterTest.java | 4 ++-- 4 files changed, 3 insertions(+), 27 deletions(-) diff --git a/core/src/main/java/hudson/model/DownloadService.java b/core/src/main/java/hudson/model/DownloadService.java index 6c28c80d0f..bf67bbeb3c 100644 --- a/core/src/main/java/hudson/model/DownloadService.java +++ b/core/src/main/java/hudson/model/DownloadService.java @@ -132,18 +132,6 @@ public class DownloadService extends PageDecorator { } private String mapHttps(String url) { - /* - HACKISH: - - Loading scripts in HTTP from HTTPS pages cause browsers to issue a warning dialog. - The elegant way to solve the problem is to always load update center from HTTPS, - but our backend mirroring scheme isn't ready for that. So this hack serves regular - traffic in HTTP server, and only use HTTPS update center for Jenkins in HTTPS. - - We'll monitor the traffic to see if we can sustain this added traffic. - */ - if (url.startsWith("http://updates.jenkins-ci.org/") && Jenkins.getInstance().isRootUrlSecure()) - return "https"+url.substring(4); return url; } diff --git a/core/src/main/java/hudson/model/UpdateCenter.java b/core/src/main/java/hudson/model/UpdateCenter.java index cf6cb0d684..109efb9d37 100644 --- a/core/src/main/java/hudson/model/UpdateCenter.java +++ b/core/src/main/java/hudson/model/UpdateCenter.java @@ -148,7 +148,7 @@ import org.kohsuke.stapler.interceptor.RequirePOST; @ExportedBean public class UpdateCenter extends AbstractModelObject implements Saveable, OnMaster { - private static final String UPDATE_CENTER_URL = SystemProperties.getString(UpdateCenter.class.getName()+".updateCenterUrl","http://updates.jenkins-ci.org/"); + private static final String UPDATE_CENTER_URL = SystemProperties.getString(UpdateCenter.class.getName()+".updateCenterUrl","https://updates.jenkins.io/"); /** * Read timeout when downloading plugins, defaults to 1 minute diff --git a/core/src/main/java/hudson/model/UpdateSite.java b/core/src/main/java/hudson/model/UpdateSite.java index ddf399ceca..933cfe8e83 100644 --- a/core/src/main/java/hudson/model/UpdateSite.java +++ b/core/src/main/java/hudson/model/UpdateSite.java @@ -485,18 +485,6 @@ public class UpdateSite { */ @Deprecated public String getDownloadUrl() { - /* - HACKISH: - - Loading scripts in HTTP from HTTPS pages cause browsers to issue a warning dialog. - The elegant way to solve the problem is to always load update center from HTTPS, - but our backend mirroring scheme isn't ready for that. So this hack serves regular - traffic in HTTP server, and only use HTTPS update center for Jenkins in HTTPS. - - We'll monitor the traffic to see if we can sustain this added traffic. - */ - if (url.equals("http://updates.jenkins-ci.org/update-center.json") && Jenkins.getInstance().isRootUrlSecure()) - return "https"+url.substring(4); return url; } diff --git a/test/src/test/java/hudson/model/UpdateCenterTest.java b/test/src/test/java/hudson/model/UpdateCenterTest.java index c073e4206b..29e70cbb64 100644 --- a/test/src/test/java/hudson/model/UpdateCenterTest.java +++ b/test/src/test/java/hudson/model/UpdateCenterTest.java @@ -44,8 +44,8 @@ import org.junit.Test; public class UpdateCenterTest { @Test public void data() throws Exception { try { - doData("http://updates.jenkins-ci.org/update-center.json?version=build"); - doData("http://updates.jenkins-ci.org/stable/update-center.json?version=build"); + doData("https://updates.jenkins.io/update-center.json?version=build"); + doData("https://updates.jenkins.io/stable/update-center.json?version=build"); } catch (Exception x) { // TODO this should not be in core at all; should be in repo built by a separate job somewhere assumeNoException("Might be no Internet connectivity, or might start failing due to expiring certificate through no fault of code changes", x); From 0efdf8fb4f8c56f1f32fb390c472cb2e98e67f56 Mon Sep 17 00:00:00 2001 From: hplatou Date: Sat, 2 Sep 2017 21:08:11 +0200 Subject: [PATCH 097/109] [JENKINS-13153] - Use directory from env:BASE when writing jenkins.copies (#2992) [JENKINS-13153] - Use directory from env:BASE when writing jenkins.copies --- .../lifecycle/WindowsServiceLifecycle.java | 23 +++++++++++++++---- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/core/src/main/java/hudson/lifecycle/WindowsServiceLifecycle.java b/core/src/main/java/hudson/lifecycle/WindowsServiceLifecycle.java index 94066417b0..42519eb21b 100644 --- a/core/src/main/java/hudson/lifecycle/WindowsServiceLifecycle.java +++ b/core/src/main/java/hudson/lifecycle/WindowsServiceLifecycle.java @@ -60,20 +60,20 @@ public class WindowsServiceLifecycle extends Lifecycle { */ private void updateJenkinsExeIfNeeded() { try { - File rootDir = Jenkins.getInstance().getRootDir(); + File baseDir = getBaseDir(); URL exe = getClass().getResource("/windows-service/jenkins.exe"); String ourCopy = Util.getDigestOf(exe.openStream()); for (String name : new String[]{"hudson.exe","jenkins.exe"}) { try { - File currentCopy = new File(rootDir,name); + File currentCopy = new File(baseDir,name); if(!currentCopy.exists()) continue; String curCopy = new FilePath(currentCopy).digest(); if(ourCopy.equals(curCopy)) continue; // identical - File stage = new File(rootDir,name+".new"); + File stage = new File(baseDir,name+".new"); FileUtils.copyURLToFile(exe,stage); Kernel32.INSTANCE.MoveFileExA(stage.getAbsolutePath(),currentCopy.getAbsolutePath(),MOVEFILE_DELAY_UNTIL_REBOOT|MOVEFILE_REPLACE_EXISTING); LOGGER.info("Scheduled a replacement of "+name); @@ -107,8 +107,8 @@ public class WindowsServiceLifecycle extends Lifecycle { String baseName = dest.getName(); baseName = baseName.substring(0,baseName.indexOf('.')); - File rootDir = Jenkins.getInstance().getRootDir(); - File copyFiles = new File(rootDir,baseName+".copies"); + File baseDir = getBaseDir(); + File copyFiles = new File(baseDir,baseName+".copies"); try (FileWriter w = new FileWriter(copyFiles, true)) { w.write(by.getAbsolutePath() + '>' + getHudsonWar().getAbsolutePath() + '\n'); @@ -144,6 +144,19 @@ public class WindowsServiceLifecycle extends Lifecycle { if(r!=0) throw new IOException(baos.toString()); } + + private static final File getBaseDir() { + File baseDir; + + String baseEnv = System.getenv("BASE"); + if (baseEnv != null) { + baseDir = new File(baseEnv); + } else { + LOGGER.log(Level.WARNING, "Could not find environment variable 'BASE' for Jenkins base directory. Falling back to JENKINS_HOME"); + baseDir = Jenkins.getInstance().getRootDir(); + } + return baseDir; + } private static final Logger LOGGER = Logger.getLogger(WindowsServiceLifecycle.class.getName()); } From 30a927fd8c1cb6e38ded402e1ba1614c3dffbba5 Mon Sep 17 00:00:00 2001 From: Nicolas De Loof Date: Sat, 2 Sep 2017 14:14:38 -0700 Subject: [PATCH 098/109] rely on java8 default methods to avoid code duplication Signed-off-by: Nicolas De Loof --- core/src/main/java/hudson/model/AbstractItem.java | 14 -------------- core/src/main/java/hudson/model/Computer.java | 8 -------- .../main/java/hudson/model/MyViewsProperty.java | 8 -------- core/src/main/java/hudson/model/Node.java | 8 -------- core/src/main/java/hudson/model/Run.java | 10 ---------- core/src/main/java/hudson/model/User.java | 8 -------- core/src/main/java/hudson/model/View.java | 8 -------- .../java/hudson/security/AccessControlled.java | 8 ++++++-- core/src/main/java/hudson/slaves/Cloud.java | 8 -------- 9 files changed, 6 insertions(+), 74 deletions(-) diff --git a/core/src/main/java/hudson/model/AbstractItem.java b/core/src/main/java/hudson/model/AbstractItem.java index 424e934e31..5fd538151a 100644 --- a/core/src/main/java/hudson/model/AbstractItem.java +++ b/core/src/main/java/hudson/model/AbstractItem.java @@ -492,20 +492,6 @@ public abstract class AbstractItem extends Actionable implements Item, HttpDelet return Jenkins.getInstance().getAuthorizationStrategy().getACL(this); } - /** - * Short for {@code getACL().checkPermission(p)} - */ - public void checkPermission(Permission p) { - getACL().checkPermission(p); - } - - /** - * Short for {@code getACL().hasPermission(p)} - */ - public boolean hasPermission(Permission p) { - return getACL().hasPermission(p); - } - /** * Save the settings to a file. */ diff --git a/core/src/main/java/hudson/model/Computer.java b/core/src/main/java/hudson/model/Computer.java index afad020673..db4ecf3d21 100644 --- a/core/src/main/java/hudson/model/Computer.java +++ b/core/src/main/java/hudson/model/Computer.java @@ -332,14 +332,6 @@ public /*transient*/ abstract class Computer extends Actionable implements Acces return Jenkins.getInstance().getAuthorizationStrategy().getACL(this); } - public void checkPermission(Permission permission) { - getACL().checkPermission(permission); - } - - public boolean hasPermission(Permission permission) { - return getACL().hasPermission(permission); - } - /** * If the computer was offline (either temporarily or not), * this method will return the cause. diff --git a/core/src/main/java/hudson/model/MyViewsProperty.java b/core/src/main/java/hudson/model/MyViewsProperty.java index 8e823efd5a..68ff6e2513 100644 --- a/core/src/main/java/hudson/model/MyViewsProperty.java +++ b/core/src/main/java/hudson/model/MyViewsProperty.java @@ -185,14 +185,6 @@ public class MyViewsProperty extends UserProperty implements ModifiableViewGroup return user.getACL(); } - public void checkPermission(Permission permission) throws AccessDeniedException { - getACL().checkPermission(permission); - } - - public boolean hasPermission(Permission permission) { - return getACL().hasPermission(permission); - } - ///// Action methods ///// public String getDisplayName() { return Messages.MyViewsProperty_DisplayName(); diff --git a/core/src/main/java/hudson/model/Node.java b/core/src/main/java/hudson/model/Node.java index ab1ca6ca66..89a7dd0025 100644 --- a/core/src/main/java/hudson/model/Node.java +++ b/core/src/main/java/hudson/model/Node.java @@ -509,14 +509,6 @@ public abstract class Node extends AbstractModelObject implements Reconfigurable return Jenkins.getInstance().getAuthorizationStrategy().getACL(this); } - public final void checkPermission(Permission permission) { - getACL().checkPermission(permission); - } - - public final boolean hasPermission(Permission permission) { - return getACL().hasPermission(permission); - } - public Node reconfigure(final StaplerRequest req, JSONObject form) throws FormException { if (form==null) return null; diff --git a/core/src/main/java/hudson/model/Run.java b/core/src/main/java/hudson/model/Run.java index 9d9b7f4cd2..bbf0a73c77 100644 --- a/core/src/main/java/hudson/model/Run.java +++ b/core/src/main/java/hudson/model/Run.java @@ -1456,16 +1456,6 @@ public abstract class Run ,RunT extends Run Date: Sat, 2 Sep 2017 21:42:04 -0400 Subject: [PATCH 099/109] [JENKINS-45892] Enhanced diagnostics (#2997) * [JENKINS-45892] Enhanced diagnostics. * Refined fix which should avoid a needless warning when called from MultiBranchProject.onLoad. --- core/src/main/java/hudson/XmlFile.java | 9 ++++++--- test/src/test/java/hudson/model/AbstractItem2Test.java | 8 ++++++++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/hudson/XmlFile.java b/core/src/main/java/hudson/XmlFile.java index 3c0a68bee3..d5077b34db 100644 --- a/core/src/main/java/hudson/XmlFile.java +++ b/core/src/main/java/hudson/XmlFile.java @@ -120,6 +120,7 @@ public final class XmlFile { private final XStream xs; private final File file; private static final Map beingWritten = Collections.synchronizedMap(new IdentityHashMap<>()); + private static final ThreadLocal writing = new ThreadLocal<>(); public XmlFile(File file) { this(DEFAULT_XSTREAM,file); @@ -175,10 +176,12 @@ public final class XmlFile { try { w.write("\n"); beingWritten.put(o, null); + writing.set(file); try { xs.toXML(o, w); } finally { beingWritten.remove(o); + writing.set(null); } w.commit(); } catch(StreamException e) { @@ -200,11 +203,11 @@ public final class XmlFile { * @since 2.74 */ public static Object replaceIfNotAtTopLevel(Object o, Supplier replacement) { - if (beingWritten.containsKey(o)) { + File currentlyWriting = writing.get(); + if (beingWritten.containsKey(o) || currentlyWriting == null) { return o; } else { - // Unfortunately we cannot easily tell which XML file is actually being saved here, at least without implementing a custom Converter. - LOGGER.log(Level.WARNING, "JENKINS-45892: reference to {0} being saved but not at top level", o); + LOGGER.log(Level.WARNING, "JENKINS-45892: reference to " + o + " being saved from unexpected " + currentlyWriting, new IllegalStateException()); return replacement.get(); } } diff --git a/test/src/test/java/hudson/model/AbstractItem2Test.java b/test/src/test/java/hudson/model/AbstractItem2Test.java index a35044ee87..968dc5f54f 100644 --- a/test/src/test/java/hudson/model/AbstractItem2Test.java +++ b/test/src/test/java/hudson/model/AbstractItem2Test.java @@ -23,6 +23,8 @@ */ package hudson.model; +import hudson.XmlFile; +import java.util.logging.Level; import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.not; import org.junit.Test; @@ -30,6 +32,7 @@ import static org.junit.Assert.*; import org.junit.Rule; import org.junit.runners.model.Statement; import org.jvnet.hudson.test.Issue; +import org.jvnet.hudson.test.LoggerRule; import org.jvnet.hudson.test.RestartableJenkinsRule; public class AbstractItem2Test { @@ -37,6 +40,9 @@ public class AbstractItem2Test { @Rule public RestartableJenkinsRule rr = new RestartableJenkinsRule(); + @Rule + public LoggerRule logging = new LoggerRule().record(XmlFile.class, Level.WARNING).capture(100); + @Issue("JENKINS-45892") @Test public void badSerialization() { @@ -50,6 +56,8 @@ public class AbstractItem2Test { String text = p2.getConfigFile().asString(); assertThat(text, not(containsString("this is p1"))); assertThat(text, containsString("p1")); + assertThat(logging.getMessages().toString(), containsString(p1.toString())); + assertThat(logging.getMessages().toString(), containsString(p2.getConfigFile().toString())); } }); rr.addStep(new Statement() { From 3bc9c86556422414bd90e36ac930af209752afe4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bernhard=20Gr=C3=BCnewaldt?= Date: Sun, 3 Sep 2017 03:50:17 +0200 Subject: [PATCH 100/109] Rss Bar and Legend Link (Job List Footer) Added Classes and IDs to enable easy styling for external themes (#2989) * ui classes to enable easy styling * fix align right html to css * move css to style.css * Revert "move css to style.css" This reverts commit f26162a0f350886040935811d6194d585f8a1bf9. * move css to style.css (without unrelated spaces changed) * remove ids and use classes --- .../main/resources/lib/hudson/rssBar.jelly | 22 +++++++++---------- war/src/main/webapp/css/style.css | 16 ++++++++++++++ 2 files changed, 27 insertions(+), 11 deletions(-) diff --git a/core/src/main/resources/lib/hudson/rssBar.jelly b/core/src/main/resources/lib/hudson/rssBar.jelly index 942beae5d6..4db12af6c9 100644 --- a/core/src/main/resources/lib/hudson/rssBar.jelly +++ b/core/src/main/resources/lib/hudson/rssBar.jelly @@ -24,22 +24,22 @@ THE SOFTWARE. -
    - ${%Legend} - - Feed + diff --git a/war/src/main/webapp/css/style.css b/war/src/main/webapp/css/style.css index f51ad90673..0bc3d00dca 100644 --- a/war/src/main/webapp/css/style.css +++ b/war/src/main/webapp/css/style.css @@ -1913,3 +1913,19 @@ body.no-sticker #bottom-sticker { width: 48px; height: 48px; } + +/* rss-bar */ + +#rss-bar { + margin:1em; + text-align:right; +} + +#rss-bar .icon-rss { + border: 0; +} + +#rss-bar .rss-bar-item { + padding-left: 1em; +} + From 33799df36cbf2f5e0c5d0ac8372ff761e82c3784 Mon Sep 17 00:00:00 2001 From: Josiah Haswell Date: Sat, 2 Sep 2017 19:58:15 -0600 Subject: [PATCH 101/109] [FIXED JENKINS-31068] Monitor does not detect when Tomcat URL encoding parameter rejects forward slashes in URL (#2977) * Fixing JENKINS-31068 * backing out changes--they don't fully work * Saving progress so that I can revert to an earlier version for tests * So, pretty exhaustive testing yields that these modifications have the same behavior as the previous versions * [FIX JENKINS-31068] Adding wiki reference to error message. Adding trailing slash to URL * [FIX JENKINS-31068] It looks like different versions of Tomcat and Apache HTTP handle this case differently. Really, the best we can do is check to see if the test method was not hit and passed correctly--if we hit it, we get more information on the configuration error. If we don't, we just refer them to a general wiki page --- .../hudson/diagnosis/ReverseProxySetupMonitor/message.jelly | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/src/main/resources/hudson/diagnosis/ReverseProxySetupMonitor/message.jelly b/core/src/main/resources/hudson/diagnosis/ReverseProxySetupMonitor/message.jelly index a39c1238b0..a92382aa46 100644 --- a/core/src/main/resources/hudson/diagnosis/ReverseProxySetupMonitor/message.jelly +++ b/core/src/main/resources/hudson/diagnosis/ReverseProxySetupMonitor/message.jelly @@ -27,7 +27,9 @@ THE SOFTWARE.