Newer
Older
# -*- coding: utf-8 -*-
import utils
def setup(interactive=True):
# Get hostname
utils.log('Getting system hostname.')
code, hostname = utils.exec_cmd('hostname')
if code == 0:
utils.log('Hostname is %s.' % hostname)
else:
raise Exception('Failed to get hostname.')
# Install and configure postfix
server = utils.get_conf('EMAIL_SMTP_SERVER', '')
if not server:
# with relayless cases emails are not always delivered to google mailing lists unless mailname is ubicast.eu and DNS spf records are set
mailname = 'ubicast.eu'
else:
mailname = utils.get_conf('MS_SERVER_NAME', hostname)
'DEBIAN_FRONTEND=noninteractive apt-get install -y postfix mailutils',
'echo "Replacing /etc/postfix/main.cf"',
dict(line='write', template='%s/main.cf' % dir_path, target='/etc/postfix/main.cf', params=(
('{{ hostname }}', hostname),
'echo "%s" > /etc/mailname' % mailname,
'rgrep root /etc/aliases || echo "root: sysadmin@ubicast.eu" >> /etc/aliases',
'service postfix restart',
'newaliases',
]
utils.run_commands(cmds)