Назад | Перейти на главную страницу

mcollective - другой путь / среда рубина

Как мне указать серверу mcollective использовать другой путь ruby ​​или иным образом управлять средой ruby?

Я работаю на Centos 6.5 и установил коллекцию ruby193 на серверы и клиент. Я пытаюсь использовать агент оболочки puppetlabs (https://github.com/puppetlabs/mcollective-shell-agent), который требует Ruby 1.9.

Когда я пробую такую ​​простую команду ls:

mco shell run ls

Все, что я получаю, это:

* [ ================> ] 1/1
The shell application failed to run: undefined method `sort_by!' for #<Array:blahblahblah>

Мне кажется, что mcollective по умолчанию использует установленный системой Ruby 1.8, который находится на /usr/bin/rubyи не использовать Ruby PATH, который находится где-то в / opt / rh / ruby193.

Когда я установил коллекцию ruby193, она помещает целую кучу файлов в / opt / rh / ruby193 и требует исходного скрипта для настройки. Я вставил сценарий /etc/profile.d, но я предполагаю, что mcollective этим не пользуется?

Любые идеи / ответы на вопросы SF, чтобы указать мне, были бы очень полезны! Или рабочий «shell» агент для mcollective, что тоже подойдет :). Я просто пытаюсь запустить команду оболочки для определенного (но динамического) набора ящиков!

В конце концов, это было больше проблем, чем того стоит - я решил установить RVM как многопользовательскую установку, и позволяя ей обрабатывать все соответствующие пути / гемсеты для меня. Мне пришлось немного переустановить драгоценные камни, чтобы Puppet снова заработал, но в конце концов это было меньше работы, чем борьба с SCL.