Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Critical
-
Resolution: Fixed
-
Affects Version/s: 0.7.14
-
Fix Version/s: 0.9.10
-
Component/s: Chef Client
-
Labels:None
-
Environment:
SLES11 client/server
-
Triage Status:Triaged
Description
i have recipe:
git "#{node[:nsd][:config_dir]}/etc/zones/master" do
repository "...."
reference "HEAD"
notifies :reload, resources(:service => "nsd"), :delayed
action :sync
end
template "#{node[:nsd][:config_dir]}/etc/nsd.conf" do
source "nsd.conf.erb"
variables(:nsd_role => "master")
owner "root"
group "nsd"
mode 0640
notifies :reload, resources(:service => "nsd"), :delayed
end
On client i have such logfile:
[Wed, 02 Dec 2009 18:39:47 +0300] DEBUG: Cached template for template[/var/lib/nsd/etc/nsd.conf] is unchanged
[Wed, 02 Dec 2009 18:39:47 +0300] DEBUG: template[/var/lib/nsd/etc/nsd.conf] is unchanged
[Wed, 02 Dec 2009 18:39:47 +0300] INFO: git[/var/lib/nsd/etc/zones/master] sending reload action to service[nsd]
Why chef reloading nsd on each run when source files are unchanged?
The issue here is that the git resource is setting @new_resource.updated way too often - for example, it's always set when sync is run, no matter if there were changes.