Управление свойствами системы

Есть ли "адекватный" способ изменить системные свойства в Jenkins? Какой самый простой / быстрый способ изменить их? Например, мне нужно отключить бесполезную (в моем случае) нить проверки связи.

6 ответов

Решение

Если вы действительно хотите быстрый и простой способ изменить системное свойство, вы можете использовать консоль скрипта

System.setProperty("hudson.remoting.Launcher.pingIntervalSec", 0)

Но это не переживет перезапуск. Чтобы сделать его постоянным, добавьте параметр в java-аргументы. Для меня (CentOS, Jenkins 2.7.1) это линия примерно на полпути вниз /etc/sysconfig/jenkins (для других дистрибутивов я считаю, что это /etc/default/jenkins) где вы должны добавить свой вариант в существующий список следующим образом:

JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true -Dhudson.remoting.Launcher.pingIntervalSec=0"

Вам нужно будет перезапустить Jenkins после того, как вы сделаете это изменение (спасибо Марку Тикнеру)

Если вы запускаете Jenkins на Windows как сервис без tomcat, вы можете редактировать jenkins.xml, Добавить недвижимость в <service><arguments> перед -jar, Чем перезапустить сервис.

<service>
    <!-- ... -->
    <arguments>-Xrs -Xmx256m  -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle  -Dhudson.tasks.MailSender.SEND_TO_UNKNOWN_USERS=true  -Dhudson.tasks.MailSender.SEND_TO_USERS_WITHOUT_READ=true  -jar "%BASE%\jenkins.war" --httpPort=8080 --webroot="%BASE%\war"</arguments>

Доступные системные свойства и способы их настройки перечислены в вики:
https://wiki.jenkins-ci.org/display/JENKINS/Features+controlled+by+system+properties

Чтобы отключить подчиненный пинг, вы можете установить hudson.remoting.Launcher.pingIntervalSec в 0,

Системные свойства могут быть установлены так же, как и в любой другой Java-программе, например:
java -Dhudson.remoting.Launcher.pingIntervalSec=0 -jar jenkins.war

Если вы используете Tomcat в Windows, вы можете редактировать файл C:\apache-tomcat-7.0.67\conf\catalina.properties и просто добавьте строку

hudson.DNSMultiCast.disabled=true

в конце файла. Затем сохраните файл и перезапустите Tomcat.

У меня похожая проблема: мне нужно отключить DNSMultiCast (установить hudson.DNSMultiCast.disabled = false), и я не могу понять, как это сделать

например, https://wiki.jenkins-ci.org/display/JENKINS/Features+controlled+by+system+properties - есть такой совет "... передайте все эти аргументы перед аргументом -jar..."но я запускаю jenkins под tomcat, поэтому не уверен, что смогу изменить параметры запуска.

Я пытался изменить /etc/tomcat6/Catalina/localhost/jenkins.xml на

<?xml version="1.0" encoding="UTF-8"?>
<Context >
 <Environment name="JENKINS_HOME" value="/var/jenkins"
         type="java.lang.String" override="false"/>
 <Environment name="hudson.DNSMultiCast.disabled" value="true"
         type="java.lang.Boolean" override="false"/>
</Context>

но я не помог Может кто-нибудь объяснить, как изменить системные свойства jenkins при использовании tomcat.

Я выполнил все шаги, упомянутые выше, но это не удалось

Таким образом, я изменил часовой пояс системы, используя timedatectl set-timezone Europe/London команда, а затем я перезапустил сервис Дженкинс service jenkins restart это сработало.

  1. Я использовал Rehdat 7.5
  2. Дженкинс версия 2.168.
  3. Jenkins Установлен через yum install jenkins

Я надеюсь, что это поможет кому-то.

Может быть, это плохой взлом, но я установил его в конвейерной работе, которая нуждается в настройке.
Как это:

System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")  // allow formatted HTML pages to be published

Кажется, работает - насколько я могу судить...

Другие вопросы по тегам