diff --git a/opendkim.cf b/opendkim.cf index 01b40a1..25af654 100644 --- a/opendkim.cf +++ b/opendkim.cf @@ -5,6 +5,8 @@ bundle agent opendkim(cfg_param) { vars: + "service_name" string => "opendkim"; + debian:: "pkgs" slist => {"opendkim"}; "uid" string => "opendkim"; @@ -12,6 +14,15 @@ vars: "cfg_file" string => "/etc/opendkim.conf"; #"pid_file" string => "/var/run/opendkim.pid"; "pid_file" string => "/run/opendkim/opendkim.pid"; + + centos:: + "pkgs" slist => {"opendkim"}; + "uid" string => "opendkim"; + "gid" string => "opendkim"; + "cfg_file" string => "/etc/opendkim.conf"; + #"pid_file" string => "/var/run/opendkim.pid"; + "pid_file" string => "/run/opendkim/opendkim.pid"; + freebsd:: "pkgs" slist => {"opendkim"}; "uid" string => "mailnull"; @@ -39,23 +50,51 @@ vars: methods: - "any" usebundle => wmde_install_packages(@(opendkim.pkgs),"opendkim"), - handle => "opendkim_installed"; + "any" usebundle => opendkim_systemd_overrides, + handle => "opendkim_overrides_done"; + "any" usebundle => wmde_install_packages(@(opendkim.pkgs),"opendkim"); + + "any" usebundle => wmde_service("$(service_name)","opendkim_kept","opendkim_repaired"), + depends_on => { + "opendkim_overrides_done", + "opendkim_pkgs_installed", + "opendkim_cfg_done" + }; files: "$(opendkim.cfg_file)" create => "true", edit_template => "$(sys.workdir)/inputs/$(def.wmde_libdir)/templates/opendkim.conf.mustache", template_method => "mustache", - template_data => bundlestate("opendkim"); -# template_data => mergedata(@(opendkim.default_cfg),@(opendkim.cfg)); + template_data => bundlestate("opendkim"), + classes => if_repaired("opendkim_repaired"), + handle => "opendkim_cfg_done"; + reports: -# "HALLO DIKM"; -# "MYLEN: $(mynetworks_len)"; -# "HEAD: $(mynetworks_head)"; -# "TAIL: $(mynetworks_tail)"; } +bundle agent opendkim_systemd_overrides +{ +files: + centos:: + + "/etc/systemd/system/opendkim.service.d/override.conf" + create => "true", + content => " +[Service] +User=root +Group=root +", + classes => if_repaired("opendkim_repaired"), + handle => "opendkim_systemd_override_created"; + +commands: + centos&opendkim_repaired:: + "/usr/bin/systemctl" + args => "daemon-reload", + depends_on => {"opendkim_systemd_override_created"}; +} +