bundlewrap/bundles/roundcube/metadata.py
mwiegand 72581c28ec wip
2021-06-14 01:31:45 +02:00

71 lines
1.7 KiB
Python

database_password = repo.vault.password_for(f'{node.name} postgresql roundcube')
defaults = {
'apt': {
'packages': {
'php': {},
'php-auth-sasl': {},
'php-cli': {},
'php-fpm': {},
'php-imagick': {},
'php-intl': {},
'php-mail-mime': {},
'php-mbstring': {},
'php-net-idna2': {},
'php-net-smtp': {},
'php-net-socket': {},
'php-pear': {},
'php-pgsql': {},
'php-xml': {},
'php-zip': {},
},
},
'nginx': {
'vhosts': {
'roundcube': {
'webroot': '/opt/roundcube',
'php': True,
},
},
},
'roundcube': {
'database': {
'provider': 'pgsql',
'host': 'localhost',
'name': 'roundcube',
'user': 'roundcube',
'password': database_password,
},
'plugins': [
'managesieve',
'password',
],
'des_key': repo.vault.password_for(f'{node.name} roundcube des_key'),
},
'postgresql': {
'roles': {
'roundcube': {
'password': database_password,
},
},
'databases': {
'roundcube': {
'owner': 'roundcube',
},
},
},
}
@metadata_reactor.provides(
'nginx/vhosts/roundcube/domain'
)
def domain(metadata):
return {
'nginx': {
'vhosts': {
'roundcube': {
'domain': metadata.get('mailserver/hostname'),
},
},
},
}