Properly support FreeBSD
We now disable all sendmail services and periodic services on FreeBSD before attempting to start postfix. Additionally, this updates mailer.conf mappings to use postfix applications rather than sendmail.
This commit is contained in:
parent
52d6b1b0f3
commit
518f982af3
@ -69,6 +69,47 @@ when 'omnios'
|
|||||||
command "svccfg import #{manifest_path}"
|
command "svccfg import #{manifest_path}"
|
||||||
notifies :restart, 'service[postfix]'
|
notifies :restart, 'service[postfix]'
|
||||||
end
|
end
|
||||||
|
when 'freebsd'
|
||||||
|
# Actions are based on docs provided by FreeBSD:
|
||||||
|
# https://www.freebsd.org/doc/handbook/mail-changingmta.html
|
||||||
|
service 'sendmail' do
|
||||||
|
action :nothing
|
||||||
|
end
|
||||||
|
|
||||||
|
template '/etc/mail/mailer.conf' do
|
||||||
|
source 'mailer.erb'
|
||||||
|
owner 'root'
|
||||||
|
group 0
|
||||||
|
notifies :restart, 'service[postfix]'
|
||||||
|
end
|
||||||
|
|
||||||
|
execute 'switch_mailer_to_postfix' do
|
||||||
|
command [
|
||||||
|
'sysrc',
|
||||||
|
'sendmail_enable=NO',
|
||||||
|
'sendmail_submit_enable=NO',
|
||||||
|
'sendmail_outbound_enable=NO',
|
||||||
|
'sendmail_msp_queue_enable=NO',
|
||||||
|
'postfix_enable=YES',
|
||||||
|
]
|
||||||
|
notifies :stop, 'service[sendmail]', :immediately
|
||||||
|
notifies :disable, 'service[sendmail]', :immediately
|
||||||
|
notifies :start, 'service[postfix]', :delayed
|
||||||
|
only_if "sysrc sendmail_enable sendmail_submit_enable sendmail_outbound_enable sendmail_msp_queue_enable | egrep -q '(YES|unknown variable)' || sysrc postfix_enable | egrep -q '(NO|unknown variable)'"
|
||||||
|
end
|
||||||
|
|
||||||
|
execute 'disable_periodic' do
|
||||||
|
# rubocop:disable Lint/ParenthesesAsGroupedExpression
|
||||||
|
environment ({ 'RC_CONFS' => '/etc/periodic.conf' })
|
||||||
|
command [
|
||||||
|
'sysrc',
|
||||||
|
'daily_clean_hoststat_enable=NO',
|
||||||
|
'daily_status_mail_rejects_enable=NO',
|
||||||
|
'daily_status_include_submit_mailq=NO',
|
||||||
|
'daily_submit_queuerun=NO',
|
||||||
|
]
|
||||||
|
only_if "RC_CONFS=/etc/periodic.conf sysrc daily_clean_hoststat_enable daily_status_mail_rejects_enable daily_status_include_submit_mailq daily_submit_queuerun | egrep -q '(YES|unknown variable)'"
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
execute 'update-postfix-sender_canonical' do
|
execute 'update-postfix-sender_canonical' do
|
||||||
|
10
templates/mailer.erb
Normal file
10
templates/mailer.erb
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
#
|
||||||
|
# Auto-generated by Chef.
|
||||||
|
# Local modifications will be overwritten.
|
||||||
|
#
|
||||||
|
# Execute the Postfix sendmail program, named /usr/local/sbin/sendmail
|
||||||
|
#
|
||||||
|
sendmail /usr/local/sbin/sendmail
|
||||||
|
send-mail /usr/local/sbin/sendmail
|
||||||
|
mailq /usr/local/sbin/sendmail
|
||||||
|
newaliases /usr/local/sbin/sendmail
|
Loading…
x
Reference in New Issue
Block a user