我无法找出正确的解决方案,因为只有在更新文件(即服务的 conf 文件)时,服务才会重新启动(停止然后启动)。
这就是我foo.rb
文件中的内容。
cookbook_file '/etc/foo/foo.conf' do
source 'foo.conf'
action :touch
end
service 'foo' do
subscribes :restart, 'file[/etc/foo/foo.conf]', :immediately
end
以及我sudo chef-client
在服务器上运行后得到的
cookbook_file[/etc/foo/foo.conf] action touch
- update content in file /etc/foo/foo.conf from 695507 to 06105e
* service[foo] action nothing (skipped due to action :nothing)
据我了解,它识别出文件已更改,但服务未重新启动。