2020-11-07 21:31:29 +00:00
|
|
|
defaults = {
|
|
|
|
'apt': {
|
|
|
|
'packages': {
|
2020-11-08 10:53:51 +00:00
|
|
|
'postfix-pgsql': {},
|
2020-11-07 21:31:29 +00:00
|
|
|
},
|
|
|
|
},
|
2021-07-17 08:17:39 +00:00
|
|
|
'backups': {
|
|
|
|
'paths': {
|
2021-07-18 05:55:52 +00:00
|
|
|
'/var/mail/vmail',
|
2021-07-17 08:17:39 +00:00
|
|
|
},
|
|
|
|
},
|
2020-11-07 21:31:29 +00:00
|
|
|
'postfixadmin': {
|
|
|
|
'admin_email': 'hostmaster@kunbox.net',
|
|
|
|
},
|
|
|
|
'postgresql': {
|
|
|
|
'databases': {
|
|
|
|
'postfixadmin': {
|
|
|
|
'owner': 'postfixadmin',
|
|
|
|
},
|
|
|
|
},
|
2020-11-10 11:37:58 +00:00
|
|
|
'roles': {
|
2020-11-07 21:31:29 +00:00
|
|
|
'postfixadmin': {
|
|
|
|
'password': repo.vault.password_for(node.name + ' postgresql postfixadmin'),
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
2021-07-17 08:17:39 +00:00
|
|
|
'zfs': {
|
|
|
|
'datasets': {
|
|
|
|
'tank/mail': {
|
2021-07-17 17:40:41 +00:00
|
|
|
'mountpoint': '/var/mail/vmail',
|
|
|
|
'needed_by': {
|
|
|
|
'directory:/var/mail/vmail',
|
|
|
|
},
|
2021-07-17 08:17:39 +00:00
|
|
|
},
|
|
|
|
'tank/postfixadmin': {
|
|
|
|
'mountpoint': '/opt/postfixadmin',
|
2021-07-17 17:40:41 +00:00
|
|
|
'needed_by': {
|
|
|
|
'directory:/opt/postfixadmin',
|
|
|
|
},
|
2021-07-17 08:17:39 +00:00
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
2020-11-07 21:31:29 +00:00
|
|
|
}
|
2021-01-29 17:07:57 +00:00
|
|
|
|
|
|
|
|
|
|
|
@metadata_reactor.provides(
|
|
|
|
'icinga2_api/postfixadmin/services',
|
|
|
|
)
|
|
|
|
def icinga_check_for_new_release(metadata):
|
|
|
|
return {
|
|
|
|
'icinga2_api': {
|
|
|
|
'postfixadmin': {
|
|
|
|
'services': {
|
|
|
|
'POSTFIXADMIN UPDATE': {
|
|
|
|
'command_on_monitored_host': '/usr/local/share/icinga/plugins/check_github_for_new_release postfixadmin/postfixadmin postfixadmin-{}'.format(metadata.get('postfixadmin/version')),
|
|
|
|
'vars.notification.mail': True,
|
|
|
|
'check_interval': '60m',
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}
|
2023-09-01 03:54:23 +00:00
|
|
|
|
|
|
|
|
|
|
|
@metadata_reactor.provides(
|
|
|
|
'nginx/vhosts/postfixadmin',
|
|
|
|
)
|
|
|
|
def nginx(metadata):
|
|
|
|
if not node.has_bundle('nginx'):
|
|
|
|
raise DoNotRunAgain
|
|
|
|
|
|
|
|
return {
|
|
|
|
'nginx': {
|
|
|
|
'vhosts': {
|
|
|
|
'postfixadmin': {
|
|
|
|
'domain': metadata.get('postfixadmin/domain'),
|
|
|
|
'webroot': '/opt/postfixadmin/public/',
|
|
|
|
'php': True,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}
|