directories = {
    '/opt/matrix-media-repo': {
        'owner': 'matrix-media-repo',
        'group': 'matrix-media-repo',
    },
    '/var/matrix/media': {
        'owner': 'matrix-media-repo',
        'group': 'matrix-media-repo',
    },
}

users = {
    'matrix-media-repo': {
        'home': '/opt/matrix-media-repo',
    },
}

files = {
    '/opt/matrix-media-repo/config.yaml': {
        'owner': 'matrix-media-repo',
        'content_type': 'mako',
        'triggers': {
            'svc_systemd:matrix-media-repo:restart',
        },
    },
    '/etc/systemd/system/matrix-media-repo.service': {
        'triggers': {
            'action:systemd-reload',
            'svc_systemd:matrix-media-repo:restart',
        },
    },
    '/opt/matrix-media-repo/media_repo': {
        'content_hash': node.metadata.get('matrix-media-repo/sha1', None),
        'content_type': 'download',
        'mode': '0755',
        'source': 'https://github.com/turt2live/matrix-media-repo/releases/download/{}/media_repo-linux-x64'.format(node.metadata.get('matrix-media-repo/version')),
        'triggers': {
            'svc_systemd:matrix-media-repo:restart',
        },
    },
}

svc_systemd = {
    'matrix-media-repo': {
        'needs': {
            'file:/etc/systemd/system/matrix-media-repo.service',
            'file:/opt/matrix-media-repo/config.yaml',
            'file:/opt/matrix-media-repo/media_repo',
            'postgres_db:matrix-media-repo',
        },
    },
}
