# # Cookbook:: kosmos_email # Recipe:: opendkim # %w[ opendkim opendkim-tools ].each do |pkg| apt_package pkg end domain = node["email"]["domain"] selector = "mail" socket = "inet:12301@localhost" template "/etc/opendkim.conf" do source "opendkim.conf.erb" mode 0644 variables domain: domain, selector: selector, socket: socket notifies :restart, "service[opendkim]", :delayed end template "/etc/default/opendkim" do source "opendkim_default.erb" mode 0644 variables socket: socket notifies :restart, "service[opendkim]", :delayed end directory "/run/opendkim" do owner "opendkim" group "opendkim" action :create end directory "/etc/opendkim" template "/etc/opendkim/keytable" do source "opendkim_keytable.erb" mode 0644 variables domain: domain, selector: selector notifies :restart, "service[opendkim]", :delayed end template "/etc/opendkim/signingtable" do source "opendkim_signingtable.erb" mode 0644 variables domain: domain, selector: selector notifies :restart, "service[opendkim]", :delayed end directory "/etc/opendkim/keys/#{domain}" do recursive true end execute "Create DKIM keys" do cwd "/etc/opendkim/keys/#{domain}" command "opendkim-genkey -s #{selector} -d #{domain}" creates "/etc/opendkim/keys/#{domain}/#{selector}.private" end file "/etc/opendkim/keys/#{domain}/#{selector}.private" do owner "opendkim" group "opendkim" end service "opendkim" do action [:enable, :start] end