Я пытаюсь создать рецепт шеф-повара, который зависит от tomcat
поваренной книги, такой как
tomcat_user = node[:tomcat][:user]
tomcat_user_home_folder = node[:etc][:passwd][tomcat_user][:dir]
execute "Install jasper license" do
command "cp jasperserver.license #{tomcat_user_home_folder}/"
cwd "#{node["install-jasper-license"]["license-location"]}"
end
Когда я запускаю sudo chef-client
на узле, я получаю следующую ошибку:
================================================================================
Recipe Compile Error in /var/chef/cache/cookbooks/install-jasper-license/recipes/default.rb
================================================================================
NoMethodError
-------------
undefined method `[]' for nil:NilClass
На мой взгляд, этот рецепт не может найти node[:etc][:passwd][tomcat_user]
. Пользователь tomcat будет установлен при запуске рецепта tomcat. Я также добавил depends 'tomcat'
в metadata.rb этой кулинарной книги. Моя цель здесь - установить файл в домашнем местоположении пользователя, работающего с tomcat. Как мне это сделать?