bundlewrap/bundles/postfix/items.py

50 lines
1 KiB
Python

if node.has_bundle('postfixadmin'):
assert node.has_bundle('letsencrypt')
files = {
'/etc/mailname': {
'content': node.metadata.get('postfix', {}).get('myhostname', node.metadata['hostname']),
'triggers': {
'svc_systemd:postfix:restart',
},
},
'/etc/aliases': {
'content_type': 'mako',
'triggers': {
'action:postfix_newaliases',
},
},
'/etc/postfix/master.cf': {
'content_type': 'mako',
'triggers': {
'svc_systemd:postfix:restart',
},
},
'/etc/postfix/main.cf': {
'content_type': 'mako',
'triggers': {
'svc_systemd:postfix:restart',
},
},
}
actions = {
'postfix_newaliases': {
'command': 'newaliases',
'triggered': True,
'needs': {
'pkg_apt:postfix',
},
},
}
svc_systemd = {
'postfix': {
'needs': {
'file:/etc/postfix/master.cf',
'file:/etc/postfix/main.cf',
'pkg_apt:',
},
},
}