我有一个包含以下行的模块:
join(lookup('latest_packages'),"\n")
在生产中它可以工作,但我正在尝试根据puppet module generate
中的模板重新构建模块,包括测试。
当我跑rake spec
时,我回来了:
1) custom_facts with default values for all parameters should contain Class[custom_facts]
Failure/Error: it { should contain_class('custom_facts') }
Puppet::PreformattedError:
Evaluation Error: Unknown function: 'join'. at /home/philip/projects/control-repo-globals/modules/custom_facts/spec/fixtures/modules/custom_facts/manifests/init.pp:8:16 on node philip-thinkpad-t420.lan
如何从测试中访问连接函数?
答案 0 :(得分:3)
我能够通过创建包含标准puppet库的.fixtures.yml
来解决问题:
fixtures:
repositories:
stdlib: git://github.com/puppetlabs/puppetlabs-stdlib.git
答案 1 :(得分:1)
这通常是由Puppet找不到包含Puppet函数的Ruby Lib引起的。
尝试添加spec/spec_helper.rb
之类的内容:
$LOAD_PATH << './modules/lib'