assert node.has_bundle('php') assert node.has_bundle('postfix') directories = { '/opt/postfixadmin': {}, '/opt/postfixadmin/templates_c': { 'owner': 'www-data', 'group': 'www-data', 'needs': { 'git_deploy:/opt/postfixadmin', }, }, '/var/mail/vmail': { 'owner': 'nobody', 'group': 'nogroup', }, } git_deploy = { '/opt/postfixadmin': { 'repo': 'https://github.com/postfixadmin/postfixadmin.git', 'rev': 'master', }, } files = { '/opt/postfixadmin/config.local.php': { 'content_type': 'mako', 'context': { 'setup_password': node.metadata['postfixadmin']['setup_password'], 'admin_email': node.metadata['postfixadmin']['admin_email'], 'database_password': node.metadata['postgresql']['users']['postfixadmin']['password'], }, 'needs': { 'git_deploy:/opt/postfixadmin', }, }, '/etc/postfix/pgsql/relay_domains.cf': { 'content_type': 'mako', 'triggers': { 'svc_systemd:postfix:restart', }, }, '/etc/postfix/pgsql/virtual_alias_maps.cf': { 'content_type': 'mako', 'triggers': { 'svc_systemd:postfix:restart', }, }, '/etc/postfix/pgsql/virtual_domains_maps.cf': { 'content_type': 'mako', 'triggers': { 'svc_systemd:postfix:restart', }, }, '/etc/postfix/pgsql/virtual_mailbox_maps.cf': { 'content_type': 'mako', 'triggers': { 'svc_systemd:postfix:restart', }, }, }