我创建了一个 LWRP(我的第一次),但它似乎没有按要求工作。我不确定我是否遗漏了什么或做错了什么。操作码文档很糟糕。我在下面显示了我的代码:
提供者
puts "FOO"
def restart_process
@svc = Chef::Resource::RestartProcesses.new(new_resource.name)
Chef::Log.debug("Restarting services according to the box")
notifies :run, resources(:execute => 'restart-storm')
end
puts "BAR"
action :restart do
execute 'restart-process' do
command <<-EOH
echo "-------Executing restart process--------"
#Some bash code
EOH
end
end
资源
actions :restart
attribute :name, :kind_of => String, :name_attribute => true
def initialize(*args)
super
@action = :restart
end
调用资源的配方
template "#{install_dir}/####Something" do
source "someSource.erb"
variables(
###Some variables
)
notifies :run, 'nameOfCookbook_nameOfResource[process]'
end
nameOfCookbook_nameOfResource "process" do
action :nothing
end
厨师输出显示FOO BAR但它没有在我的bash脚本中打印任何内容。所以它不会运行 bash。任何指针?