如何检查目录中的文件是否更改(添加/删除/修改)在主机的Linux主机中

时间:2016-05-16 19:23:56

标签: ruby chef

我正在尝试编写一个厨师食谱,我需要用一些逻辑来检测目录中的文件是否在Chef主机中更改(添加/删除/修改),如果发生任何更改,我可能会使用notify重启服务。

请通过提供简单的逻辑来帮助我,因为文件不会发生剧烈变化。

/local/filebeat/logs是目录,当有新文件添加到其中时,我希望重新启动filebeat服务。

directory '/local/filebeat/logs' do
  owner 'root'
  group 'root'
  mode '0755'
  recursive true
  notifies :restart, 'service[filebeat]'
end

1 个答案:

答案 0 :(得分:1)

您可以使用Chef的通知功能:notifiessubscribes。每个资源在“更新”时触发其通知(其精确定义因每个资源而异),然后可用于对其他资源执行操作,在这种情况下,您希望对:restart操作service {1}}资源最有可能。