Я пытаюсь изменить атрибут в одном ресурсе и хочу использовать обновленное значение в другом ресурсе, но обновленное значение не отражается в других ресурсах. пожалуйста, помогите мнеКак передать значение от одного ресурса другому ресурсу в рецепте шеф-повара?
Код
node[:oracle][:asm][:disks].each_key do |disk|
Chef::Log.info("I am in #{cookbook_name}::#{recipe_name} and current disk count #{node[:oracle][:asm][:test]}")
bash "beforeTest" do
code <<-EOH
echo #{node[:oracle][:asm][:test]}
EOH
end
ruby_block "test current disk count" do
block do
node.set[:oracle][:asm][:test] = "#{node[:oracle][:asm][:test]}".to_i+1
end
end
bash "test" do
code <<-EOH
echo #{node[:oracle][:asm][:test]}
EOH
end
end
значение, которое я пытаюсь обновить это один хранится в node[:oracle][:asm][:test]
Тем не менее я получаю сообщение об ошибке, как показано ниже: NoMethodError ------------- неопределенный метод 'эхо» для шеф-повара: : Ресурс: Bash Поваренная книга: --------------- /var/chef/cache/cookbooks/Oracle11G/recipes/testSplit.rb:3:in 'block (2 уровня) in from_file ' Ресурс Declarati на: --------------------- # В /var/chef/cache/cookbooks/Oracle11G/recipes/testSplit.rb 1: bash "beforeTest "do 2: код lazy { 3: echo" # {node [: oracle] [: asm] [: test]} " 4:} 5: end – SASI
извините, это просто потому, что команда не в кавычки. Я исправлю это. –
Как использовать ленивый ресурс ruby_block .. Не могли бы вы помочь мне .. – SASI