在模块路径上找不到已安装的模块

在模块路径上找不到已安装的模块

我正在尝试使用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,但是当 puppet 编译器遇到该行时,我收到了本文顶部提到的错误消息。

有人知道我在这里做错了什么吗?

答案1

默认情况下,puppet 在$confdir/模块/usr/share/puppet/模块

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

这不包括$HOME/.ppet 目录,但这就是您安装模块的位置。以 root 身份安装模块,或者在$confdir/puppet.conf

相关内容