2015-12-03 1 views
1

Я использую Jenkins (1.573) и плагин Swarm (2.0): https://wiki.jenkins-ci.org/display/JENKINS/Swarm+Plugin.Jenkins Swarm plugin - имя раба с RANDOM буквенно-цифровым значением

Загрузил баночку из http://maven.jenkins-ci.org/content/repositories/releases/org/jenkins-ci/plugins/swarm-client/2.0/

Я уже установил плагин в Дженкинс (мастер) и от одной машины Linux (который я хотел бы использовать в качестве ведомого устройства) Я скачал клиент банку рои с зависимостями 2,0 и побежал следующую команду:

Примечания:
переменного $ р имеет пароль, сохраненный в нем.
Можно использовать режим как обычно (вместо эксклюзивного).

$ Java -jar роиться-клиент-2,0-банку-с-dependencies.jar -name "` имя хоста -a`_01" -fsroot "`pwd` /` имя хоста -a`_01" -Master http://jenkins_server.yo.company.com:8081 -disableSslVerification -username c123456 -password $ р -description "` имя хоста -a`" -executors 5 -labels "ANSIBLE_CENTOS CENTOS" -mode эксклюзивны -retry 3

Discovering Jenkins master 
Dec 03, 2015 3:52:58 PM org.apache.commons.httpclient.HttpMethodBase getResponseBody 
WARNING: Going to buffer response body of large or unknown size. Using getResponseBodyAsStream instead is recommended. 
Attempting to connect to http://jenkins_server.yo.company.com:8081/ 1229493c-3bd5-4cf4-9210-3392089f2ee2 with ID 1893f0ea 
Could not obtain CSRF crumb. Response code: 404 
Dec 03, 2015 3:53:01 PM hudson.remoting.jnlp.Main createEngine 
INFO: Setting up slave: jmeter01_01-1893f0ea 
Dec 03, 2015 3:53:01 PM hudson.remoting.jnlp.Main$CuiListener <init> 
INFO: Jenkins agent is running in headless mode. 
Dec 03, 2015 3:53:01 PM hudson.remoting.jnlp.Main$CuiListener status 
INFO: Locating server among [http://jenkins_server.tsh.thomson.com:8081/] 
Dec 03, 2015 3:53:02 PM hudson.remoting.jnlp.Main$CuiListener status 
INFO: Connecting to jenkins_server.tsh.thomson.com:53605 
Dec 03, 2015 3:53:02 PM hudson.remoting.jnlp.Main$CuiListener status 
INFO: Handshaking 
Dec 03, 2015 3:53:02 PM hudson.remoting.jnlp.Main$CuiListener status 
INFO: Connected 

В мастер Дженкинс, я видя, что ведомый успешно создан (с использованием JLNP auth), но имя ведомого немного странно.

Вместо создания имени подчиненного в качестве имени хоста (т.е. jmeter01 в моем случае или jmeter01.yo.company.com), это суффикс имени подчиненного с СЛУЧАЙНЫМ буквенно-цифровым значением. Иногда как jmeter01_01-ee12355ec, а иногда и jmeter01_01-1893f0ea.

Я хотел бы имя раба быть просто: jmeter01_01 или someserver_01 или someserver.fq.dn_01

Что я могу давать не так?

+0

Что делает этот пост, имеющее право на downvote? Это правильный вопрос. Если у вас есть ответ, сообщите мне. –

ответ

3

Использование опции -disableClientsUniqueId в командной строке разрешило это.

Я думаю, что имя VALUE должно быть достаточным, но похоже, что они приняли подход к тому, что подчиненный будет создаваться каждый раз (независимо от того, что), и именно поэтому они суффиктировали имя с уникальным/альфа-цифровым идентификационным значением имя подчиненного. Использование вышеуказанного свойства разрешило его (после того, как я сделал больше исследований и обнаружил, что они ввели исправление в версии 2.0).

Дополнение: Для того, чтобы создать места инструмента в пределах конфигурации ведомого, я использовал -t Java = ~/инструменты/jdk1.8.0_45 -t Gradle = ~/инструменты/Gradle-2,9 и команда дала мне ошибку Инструмент «Java» не определен на Jenkins.

javax.servlet.ServletException: java.lang.RuntimeException: No tool 'Java' is defined on Jenkins. 

После исследования, я нашел, что это происходит потому, что в Дженкинс Master (который я использовал), это JDK установки раздел (в глобальных настройках Jenkins) была этот инструмент Имя значение, установленное как «Java».

Trying -t java = ~/tools/jdk1.8.0_45 решила проблему, и теперь я могу увидеть (JDK) Java-инструмент со значением ~/tools/jdk1.8.0_45 в конфигурации подчиненного устройства.

PS: Там нет никакого способа определить переменные окружения (как мы обычно определяем/см в конфигурации Узла/ведомого устройства в Дженкинс GUI) с помощью роя клиента банку (это то, что можно улучшить Swarm плагин с помощью этой новой функции) ,

0

Templorary Я решил эту проблему с более ранними версиями Jenkins-рой плагина версии до 1,2

Смежные вопросы