如何在模板中使用 Vault 项目?
How do I use vault items in templates?
我在学厨师。
我有这个食谱:
chef_gem 'chef-vault' do
compile_time true if respond_to?(:compile_time)
end
require 'chef-vault'
vault = ChefVault::Item.load("vault01", "vaultitem1")
log 'DEBUG' do
message vault['myuser']
level :info
end
directory 'c:/blah'
template 'c:/blah/template.txt' do
source 'template.txt.erb'
end
你可以看到我正在从配方中的保险库中获取价值。
我应该如何将这些值插入到我的模板文件中?
有什么方法可以从我的 template.txt.erb 内部获取保险库值?
使用variables
属性。你传递一个散列,然后这些键在你的模板中作为变量可用:
template 'c:/blah/template.txt' do
source 'template.txt.erb'
variables vault: ChefVault::Item.load("vault01", "vaultitem1")
end
# and then in the template
<%= @vault['foo'] %>
另请查看 chef-vault 食谱(与 chef-vault gem 不同),它有一个很好的 chef_vault_item()
帮助程序来简化测试。
我在学厨师。
我有这个食谱:
chef_gem 'chef-vault' do
compile_time true if respond_to?(:compile_time)
end
require 'chef-vault'
vault = ChefVault::Item.load("vault01", "vaultitem1")
log 'DEBUG' do
message vault['myuser']
level :info
end
directory 'c:/blah'
template 'c:/blah/template.txt' do
source 'template.txt.erb'
end
你可以看到我正在从配方中的保险库中获取价值。
我应该如何将这些值插入到我的模板文件中?
有什么方法可以从我的 template.txt.erb 内部获取保险库值?
使用variables
属性。你传递一个散列,然后这些键在你的模板中作为变量可用:
template 'c:/blah/template.txt' do
source 'template.txt.erb'
variables vault: ChefVault::Item.load("vault01", "vaultitem1")
end
# and then in the template
<%= @vault['foo'] %>
另请查看 chef-vault 食谱(与 chef-vault gem 不同),它有一个很好的 chef_vault_item()
帮助程序来简化测试。