X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/09e5083a36632d53e388446d0517a5c2bccd2b24..ad81220e82b6e2abc9e32dc5653aebe66db1d48c:/cookbooks/apache/providers/module.rb diff --git a/cookbooks/apache/providers/module.rb b/cookbooks/apache/providers/module.rb index 29ef1621c..17008371e 100644 --- a/cookbooks/apache/providers/module.rb +++ b/cookbooks/apache/providers/module.rb @@ -22,12 +22,13 @@ def whyrun_supported? end action :install do - p = package package_name do - action :install - not_if { ::File.exists?(available_name("load")) } - end + if not installed? + package package_name - updated = p.updated_by_last_action? + updated = true + else + updated = false + end if new_resource.conf t = template available_name("conf") do @@ -46,44 +47,50 @@ action :install do end action :enable do - l = link enabled_name("load") do - to available_name("load") - owner "root" - group "root" - notifies :restart, "service[apache2]" - end + if not enabled? + link enabled_name("load") do + to available_name("load") + owner "root" + group "root" + notifies :restart, "service[apache2]" + end - c = link enabled_name("conf") do - to available_name("conf") - owner "root" - group "root" - notifies :reload, "service[apache2]" - only_if { ::File.exists?(available_name("conf")) } - end + link enabled_name("conf") do + to available_name("conf") + owner "root" + group "root" + notifies :reload, "service[apache2]" + only_if { ::File.exists?(available_name("conf")) } + end - new_resource.updated_by_last_action(l.updated_by_last_action? || c.updated_by_last_action?) + new_resource.updated_by_last_action(true) + end end action :disable do - l = link enabled_name("load") do - action :delete - notifies :restart, "service[apache2]" - end + if enabled? + link enabled_name("load") do + action :delete + notifies :restart, "service[apache2]" + end - c = link enabled_name("conf") do - action :delete - notifies :reload, "service[apache2]" - end + link enabled_name("conf") do + action :delete + notifies :reload, "service[apache2]" + end - new_resource.updated_by_last_action(l.updated_by_last_action? || c.updated_by_last_action?) + new_resource.updated_by_last_action(true) + end end action :delete do - p = package package_name do - action :remove - end + if installed? + package package_name do + action :remove + end - new_resource.updated_by_last_action(p.updated_by_last_action?) + new_resource.updated_by_last_action(true) + end end def package_name @@ -98,6 +105,10 @@ def enabled_name(extension) "/etc/apache2/mods-enabled/#{new_resource.name}.#{extension}" end +def installed? + ::File.exists?(available_name("load")) +end + def enabled? ::File.exists?(enabled_name("load")) end