defaults = {
    'apt': {
        'packages': {
            'imagemagick': {},
            'ffmpeg': {},
            'libimage-exiftool-perl': {},
        },
    },
    'backups': {
        'paths': {
            '/var/pleroma',
        },
    },
    'zfs': {
        'datasets': {
            'tank/pleroma-data': {
                'mountpoint': '/var/pleroma',
                'needed_by': {
                    'directory:/var/pleroma',
                },
            },
        },
    },
    'postgresql': {
        'roles': {
            'pleroma': {
                'password': repo.vault.password_for(f'{node.name} postgresql pleroma'),
            },
        },
        'databases': {
            'pleroma': {
                'owner': 'pleroma',
            },
        },
    },
}


@metadata_reactor.provides(
    'nginx/vhosts/pleroma',
)
def nginx(metadata):
    if not node.has_bundle('nginx'):
        raise DoNotRunAgain

    return {
        'nginx': {
            'vhosts': {
                'pleroma': {
                    'domain': metadata.get('pleroma/url'),
                    'locations': {
                        '/': {
                            'target': 'http://127.0.0.1:21000',
                            'websockets': True,
                        },
                    },
                    'website_check_path': '/main/all',
                    'website_check_string': 'use Pleroma',
                },
            },
        },
    }
