2

我正在尝试在 vagrant 设置中使用 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 ]
4

1 回答 1

2

您缺少stdlib模块,它至少是apt模块的依赖项,并且它提供了validate_boolPuppet 找不到的功能等。

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

使用 Puppet 模块安装工具,而不是仅仅克隆一个 repo。

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

或者更好的是使用图书管理员木偶。

于 2013-07-11T11:13:49.130 回答