From 30300d06d94ec02afabfe24aad198175a16a8ac3 Mon Sep 17 00:00:00 2001 From: Tobias Herre Date: Tue, 31 Oct 2023 17:25:32 +0100 Subject: [PATCH] ssl is optional now --- dovecot.cf | 79 +++++++++++++++++++++++++++++++++++------------------- 1 file changed, 51 insertions(+), 28 deletions(-) diff --git a/dovecot.cf b/dovecot.cf index 1746837..1d7dad6 100644 --- a/dovecot.cf +++ b/dovecot.cf @@ -4,6 +4,8 @@ bundle agent dovecot(cfg) { +classes: + "use_ssl" expression => strcmp("$(cfg[ssl])","true"); vars: freebsd:: "cfg_dir" string => "/usr/local/etc/dovecot"; @@ -49,13 +51,8 @@ vars: "submission_cert" string => "$(cfg_dir)/private/submission.crt"; "service_name" string => "dovecot"; - - - -methods: - "any" usebundle => wmde_install_packages(@(pkgs),"dovecot"); - "any" usebundle => wmde_service("$(service_name)","dovecot_kept","dovecot_repaired"), - depends_on => { + use_ssl:: + "service_deps" slist => { "dovecot_pkgs_installed", "dovecot_cfg_created", "dovecot_imap_key_installed", @@ -63,7 +60,19 @@ methods: "dovecot_submission_key_installed", "dovecot_submission_cert_installed", }; -services: + !use_ssl:: + "service_deps" slist => { + "dovecot_pkgs_installed", + "dovecot_cfg_created", + }; + + + + +methods: + "any" usebundle => wmde_install_packages(@(pkgs),"dovecot"); + "any" usebundle => wmde_service("$(service_name)","dovecot_kept","dovecot_repaired"), + depends_on => @(service_deps); files: "$(cfg_dir)/." @@ -81,34 +90,41 @@ files: handle => "dovecot_cfg_created", edit_template => "$(sys.workdir)/inputs/$(def.wmde_libdir)/templates/dovecot/dovecot.conf.mustache"; - "$(imap_cert)" - handle => "dovecot_imap_cert_installed", - classes => if_repaired(dovecot_repaired), - copy_from => local_dcp( execresult( "/usr/bin/readlink -qfn $(cfg[imap_cert])","noshell" )), - perms => mog("600","root","root"); + use_ssl:: - "$(imap_key)" - handle => "dovecot_imap_key_installed", - classes => if_repaired(dovecot_repaired), - copy_from => local_dcp( execresult( "/usr/bin/readlink -qfn $(cfg[imap_key])","noshell" )), - perms => mog("600","root","root"); + "$(imap_cert)" + handle => "dovecot_imap_cert_installed", + classes => if_repaired(dovecot_repaired), + copy_from => local_dcp( execresult( "/usr/bin/readlink -qfn $(cfg[imap_cert])","noshell" )), + perms => mog("600","root","root"); - "$(submission_cert)" - handle => "dovecot_submission_cert_installed", - classes => if_repaired(dovecot_repaired), - copy_from => local_dcp( execresult( "/usr/bin/readlink -qfn $(cfg[submission_cert])","noshell" )), - perms => mog("600","root","root"); + "$(imap_key)" + handle => "dovecot_imap_key_installed", + classes => if_repaired(dovecot_repaired), + copy_from => local_dcp( execresult( "/usr/bin/readlink -qfn $(cfg[imap_key])","noshell" )), + perms => mog("600","root","root"); - "$(submission_key)" - handle => "dovecot_submission_key_installed", - classes => if_repaired(dovecot_repaired), - copy_from => local_dcp( execresult( "/usr/bin/readlink -qfn $(cfg[submission_key])","noshell" )), - perms => mog("600","root","root"); + "$(submission_cert)" + handle => "dovecot_submission_cert_installed", + classes => if_repaired(dovecot_repaired), + copy_from => local_dcp( execresult( "/usr/bin/readlink -qfn $(cfg[submission_cert])","noshell" )), + perms => mog("600","root","root"); + + "$(submission_key)" + handle => "dovecot_submission_key_installed", + classes => if_repaired(dovecot_repaired), + copy_from => local_dcp( execresult( "/usr/bin/readlink -qfn $(cfg[submission_key])","noshell" )), + perms => mog("600","root","root"); reports: + use_ssl:: + "USE_SSL: TRUE"; + !use_ssl:: + "USE_SSL: FALSE"; + # "IMAP_CERT: $(imap_cert)"; # # dovecot_kept:: @@ -135,3 +151,10 @@ files: } + + +bundle agent install_dovecot_pkgs +{ +methods: + "any" usebundle => wmde_install_packages(@(dovecot.pkgs),"dovecot"); +}