X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/26a141f3581baada51b09427d0a9b4576c12b16f..03b7d5e985a34d01dccfd03dc11488015e97f7df:/cookbooks/squid/resources/fragment.rb diff --git a/cookbooks/squid/resources/fragment.rb b/cookbooks/squid/resources/fragment.rb index 60e2a8282..a5f259c1b 100644 --- a/cookbooks/squid/resources/fragment.rb +++ b/cookbooks/squid/resources/fragment.rb @@ -17,13 +17,33 @@ # limitations under the License. # -actions :create, :delete default_action :create -attribute :name, :kind_of => String, :name_attribute => true -attribute :directory, :kind_of => String -attribute :template, :kind_of => String, :required => true -attribute :variables, :kind_of => Hash, :default => {} +property :fragment, :kind_of => String, :name_attribute => true +property :template, :kind_of => String, :required => true +property :variables, :kind_of => Hash, :default => {} + +action :create do + declare_resource :template, fragment_path do + source new_resource.template + owner "root" + group "root" + mode 0o644 + variables new_resource.variables + end +end + +action :delete do + file fragment_path do + action :delete + end +end + +action_class do + def fragment_path + "/etc/squid/squid.conf.d/#{new_resource.fragment}.conf" + end +end def after_created notifies :create, "template[/etc/squid/squid.conf]"