Как я говорю mcollective серверу использовать другой рубиновый путь или иначе управлять рубиновой средой?
Я работаю на 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
, и не используя рубин ПУТИ, который где-нибудь находится под/opt/rh/ruby193.
Когда я установил ruby193 набор, он помещает целый набор файлов в/opt/rh/ruby193 и требует, чтобы источник сценарий настроил. Я вставил сценарий /etc/profile.d
, но я предполагаю, что mcollective не использует это?
Любые идеи/отвечать вопросы о SF указать на меня на были бы очень полезны! Или рабочий агент 'оболочки' для mcollective, который также сделал бы :). Я просто пытаюсь выполнить команду оболочки на определенном (но динамичный) набор полей!
В конце концов, это было больше проблем, чем оно того стоит - я решил установить RVM как многопользовательскую установку и позволил ей обрабатывать все соответствующие пути / драгоценности для меня. Мне пришлось немного переустановить драгоценные камни, чтобы Puppet снова заработал, но в итоге это было меньше работы, чем борьба с SCL.