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

Не удается найти установленный модуль в пути к модулю

Я пытаюсь использовать maestrodev / rvm модуль при инициализации виртуальной машины с помощью Vagrant, но я столкнулся с проблемой при попытке include rvm. Я продолжаю получать

Error: Could not find class rvm for vagrant-ubuntu-saucy-64 on node vagrant-ubuntu-saucy-64
Error: Could not find class rvm for vagrant-ubuntu-saucy-64 on node vagrant-ubuntu-saucy-64

Я вижу одну и ту же ошибку дважды и вижу ее перед любым другим выводом. Я установил модуль, используя

puppet module install maestrodev/rvm

и после выполнения этой команды вывод puppet config print modulepath дает

/home/notgary/.puppet/modules:/usr/share/puppet/modules

пока puppet module list дает

/home/notgary/.puppet/modules
├── maestrodev-rvm (v1.2.0)
├── puppetlabs-apache (v0.9.0)
├── puppetlabs-concat (v1.0.0)
└── puppetlabs-stdlib (v4.1.0)
/usr/share/puppet/modules (no modules installed)

Приведенный выше вывод показывает модуль (первая запись в списке), который нужно установить в ~/.puppet/modules и приведенный выше вывод показывает, что этот каталог включен в modulepath. Если я не понимаю, что это значит, я ожидал include rvm установить rvm в /usr/local/rvm, как указано в документации, но когда компилятор марионетки попадает в эту строку, я получаю сообщение об ошибке, упомянутое в верхней части этого сообщения.

Кто-нибудь знает, что я здесь делаю не так?

По умолчанию марионетка ищет модули в $ confdir / modules и / USR / доля / марионетка / модули.

$ sudo puppet config print modulepath
/etc/puppet/modules:/usr/share/puppet/modules

Это не включает $ HOME / .puppet, но именно там вы установили модуль. Установите модули как root или измените путь к модулю в $ confdir / puppet.conf.