【发布时间】:2018-03-13 04:03:31
【问题描述】:
Chef 新手,与我无关。构建我的食谱。
【问题讨论】:
-
你如何测试这个?有测试厨房吗?
-
无线/流浪者。创建了一个带有 Vagrant 的测试 VM 并将配方添加到它的运行列表中。
标签: ruby vagrant chef-infra databags
Chef 新手,与我无关。构建我的食谱。
【问题讨论】:
标签: ruby vagrant chef-infra databags
你是如何设置数据包的?
您是否可以使用以下方法获取凭证:
$ knife vault show nameOfVault nameOfItem
或
$ knife data bag show nameOfVault nameOfItem_keys
【讨论】:
很高兴您已加载数据包,事实上,使用 Test Kitchen 您无需使用刀上传到 Chef Server,因为 Test Kitchen 使用 Chef Zero / Solo。
您在这里遇到的问题是,您在读取数据包对象后没有正确格式化读取。你需要这样做:
ruby_block "insert_line" do
block do
file = Chef::Util::FileEdit.new('/var/lib/net-snmp/snmpd.conf')
file.insert_line_if_no_match("/www.example.com/", "createUser
#{snmp3usercreds['user']}
SHA #{snmp3usercreds['auth_pssword']}
AES #{snmp3usercreds['enc_password']} ")
file.write_file
end
end
因此,您会看到我已将 snmp3usercreds[user] 更改为 snmp3usercreds['user'],并在 user 周围加上引号,以表明它是一个字符串(而不是您的代码中的变量)。
【讨论】: