直接从克隆的回购中使用puppet模块

时间:2013-07-10 12:22:31

标签: vagrant puppet

我正在尝试在流浪汉设置中使用puppet模块。在解决这个问题时,我试图在stackoverflow question中解决这个问题。 我将puppet模块repo(apt模块和nodejs模块)克隆到子文件夹中 在vagrantfile中设置puppet模块路径

并包含puppet模块并在puppet清单文件中调用它们,例如:

class { 'apt':
}
include apt

class{ 'apt':} -> apt::builddep { ["python-imaging","python-lxml"]:
    require => Class['apt'] 
 }

我想知道,当我只是git clone回购时,可能还有一个安装/构建步骤?这甚至可以吗?

错误消息:

←[0;37mdebug: importing '/tmp/vagrant-puppet/modules-0/apt/manifests/init.pp' in
 environment production←[0m
←[0;37mdebug: Automatically imported apt from apt into production←[0m
←[0;37mdebug: importing '/tmp/vagrant-puppet/modules-0/apt/manifests/params.pp'
in environment production←[0m
←[0;37mdebug: Automatically imported apt::params from apt/params into production
←[0m
←[0;37mdebug: importing '/tmp/vagrant-puppet/modules-0/apt/manifests/update.pp'
in environment production←[0m
←[0;37mdebug: Automatically imported apt::update from apt/update into production
←[0m
Unknown function validate_bool at /tmp/vagrant-puppet/modules-0/apt/manifests/in
it.pp:36 on node precise32
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!

cd /tmp/vagrant-puppet/manifests && puppet apply --verbose --debug --modulepath
'/etc/puppet/modules:/tmp/vagrant-puppet/modules-0' default.pp --detailed-exitco
des || [ $? -eq 2 ]

1 个答案:

答案 0 :(得分:2)

您缺少stdlib模块,该模块至少是apt模块的依赖项,除其他外,还提供了Puppet无法找到的validate_bool函数。

您可以在此处找到stdlib模块:
https://github.com/puppetlabs/puppetlabs-stdlib

使用Puppet模块安装工具而不是仅克隆单个存储库。

http://docs.puppetlabs.com/puppet/latest/reference/modules_installing.html

或更好地使用librarian-puppet。