2015-12-09 1 views
0

У меня есть последние Jenkins, и это Swar plugin client jar (2.0).Возможная ошибка: Jenkins Swarm plugin - fsroot для установки удаленной корневой директории относительно полного пути

Я скачал рой клиент банку, и я побежал следующую команду, чтобы создать подчиненные: (Примечания:: Я использую пользователь Anonymous для подключения к мастеру Дженкинс, не требуя имя пользователя/пароль, и при условии, Create Разрешения ведомого в глобальных ролях и весь доступ в разделе Slave под роли Slave, создавая новую роль с шаблоном . *). Дженкинс Swarm клиент: https://wiki.jenkins-ci.org/display/JENKINS/Swarm+Plugin

Пользователь может предоставить действительное имя пользователя/пароль, если пользователь Создание ведомого (Global Roles) и иной доступ, как подключения, удалять и т.д. в ведомых Роли в Дженкинс под Управлением ролей).

$ which swarm-client.jar 
~/tools/bin/swarm-client.jar 
$ pwd 
/home/confman/slaves 
$ ~/tools/jdk1.7.0_60/bin/java -jar `which swarm-client.jar` -name "swarm_`hostname -a`" -fsroot "~/slaves/swarm_`hostname -a`" -master http://jenkins_master.srvr.company.com:8083 -username Anonymous -description "`hostname -a` " -executors 5 -labels "ANSIBLE_CENTOS CENTOS" -mode 'exclusive' -showHostName -t java=~/tools/jdk1.8.0_45 -t gradle=~/tools/gradle-2.3 -t Maven=~/tools/apache-maven-3.3.3 -t Groovy2=~/tools/groovy-2.4.5 --showHostName -retry 0 -disableClientsUniqueId & 

Но, вместо приведенной выше настроек Remote корневого каталога ведомого к ~/ведомых/swarm_jmeter01 команды, это установка корневого пути удаленного включая папку в качестве префикса/относительно, откуда я побежал выше (как показано ниже). В моем случае, имя хоста значение команды jmeter01.

enter image description here

В документации не упоминается, что это относительно параметра Я к текущей папке (где вы бы запустить Java -jar рабыню-клиент команды банки).

Кто-нибудь нашел решение для этого, то есть он может игнорировать текущую папку и устанавливать ее в ~/slaves/swarm_01 или что-то в этом роде?

Очевидно, что в моей автоматизации для решения этой проблемы я могу сначала «cd» (сменить каталог) в правильную папку ~/slaves, а затем просто передать -fsroot «swarm_`hostname -a`», чтобы получить значение пути к удаленной директории установлен как: ~/slaves/swarm_jmeter01 (в этом случае он будет работать нормально).

ответ

0

~ является расширение оболочки ... если это не работает, а затем использовать $ HOME вместо

+1

Пожалуйста, добавьте некоторые комментарии о своем решении о том, почему и как это решает проблему –

+0

@Odedra да, это то, что я сделал, но без », - цитирует Дубе. Проблема заключалась в двойных кавычках. –

+0

$ HOME - это переменная среды, поддерживаемая всеми оболочками и всеми местами в сценариях/параметрах ... Тильда не должна поддерживаться повсюду (в «старое время» ^^). http://wiki.bash-hackers.org/syntax/expansion/tilde пишет: > тильды выполняется только, когда тильда построить > находится в начале слова, или отдельное слово. (что не имеет значения при цитировании) http://unix.stackexchange.com/questions/151850/why-doesnt-the-tilde-expand-inside-double-quotes также имеет для него равный аналог. – Reiner030

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