From daadd9374f4d93224bb8823021741bec29aeb9ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A2u=20Cao?= Date: Mon, 8 Jan 2024 11:35:04 +0300 Subject: [PATCH] Use attribute for root dir --- site-cookbooks/kosmos_email/recipes/default.rb | 12 ++++++++++++ site-cookbooks/kosmos_email/recipes/dovecot.rb | 14 ++------------ 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/site-cookbooks/kosmos_email/recipes/default.rb b/site-cookbooks/kosmos_email/recipes/default.rb index 96eced0..bb80c24 100644 --- a/site-cookbooks/kosmos_email/recipes/default.rb +++ b/site-cookbooks/kosmos_email/recipes/default.rb @@ -5,11 +5,23 @@ domain = node["email"]["domain"] hostname = node["email"]["hostname"] +root_dir = node["email"]["root_directory"] ip_addr = node["knife_zero"]["host"] node.override["set_fqdn"] = hostname include_recipe "hostname" +user "vmail" do + gid "mail" + system true + manage_home false +end + +directory root_dir do + owner "vmail" + group "mail" +end + tls_cert_for hostname do auth "gandi_dns" action :create diff --git a/site-cookbooks/kosmos_email/recipes/dovecot.rb b/site-cookbooks/kosmos_email/recipes/dovecot.rb index 4ad1c2c..0a6f1f7 100644 --- a/site-cookbooks/kosmos_email/recipes/dovecot.rb +++ b/site-cookbooks/kosmos_email/recipes/dovecot.rb @@ -15,6 +15,7 @@ end domain = node["email"]["domain"] hostname = node["email"]["hostname"] +root_dir = node["email"]["root_directory"] ip_addr = node["knife_zero"]["host"] ldap_search_base = node["email"]["ldap_search_base"] @@ -22,17 +23,6 @@ ldap_user_filter = "(&(objectClass=person)(mailRoutingAddress=%u))" credentials = Chef::EncryptedDataBagItem.load('credentials', 'email') -user "vmail" do - gid "mail" - system true - manage_home false -end - -directory "/var/vmail" do - owner "vmail" - group "mail" -end - template "/etc/dovecot/dovecot.conf" do source "dovecot.conf.erb" mode 0644 @@ -70,7 +60,7 @@ template "/etc/dovecot/conf.d/10-mail.conf" do variables mail_uid: "vmail", mail_gid: "mail", mail_location: "mbox:~/mail:INBOX=~/mail/INBOX", - mail_home: "/var/vmail/%d/%n" + mail_home: "#{root_dir}/%d/%n" notifies :restart, "service[dovecot]", :delayed end