# this node runs only seafile. Seafile and the mysql server are not
# managed by bundlewrap.

nodes['htz-cloud.sewfile'] = {
    'bundles': {
        'seafile',
        'zfs',
    },
    'groups': {
        'debian-buster',
        'webserver',
    },
    'metadata': {
        'interfaces': {
            'eth0': {
                'ips': {
                    '116.203.205.248',
                    '2a01:4f8:c0c:c71b::1/64',
                },
                'gateway4': '172.31.1.1',
                'gateway6': 'fe80::1',
            },
            'ens10': {
                'ips': {
                    '172.19.137.3/32',
                },
                'routes': {
                    # VPN
                    '172.19.136.0/22': {
                        'via': '172.19.137.1',
                    },
                },
            },
        },
        'backups': {
            'paths': {
                '/mnt/seafile-data',
                '/var/tmp/mysqldumps',
            },
        },
        'backup-client': {
            'pre-hooks': {
                'mysqldump': \
                    'test -d /var/tmp/mysqldumps || mkdir -p /var/tmp/mysqldumps\n'\
                    'rm /var/tmp/mysqldumps/*.sql\n'\
                    'mysqldump --databases ccnet_db > /var/tmp/mysqldumps/ccnet_db.sql\n'\
                    'mysqldump --databases seafile_db > /var/tmp/mysqldumps/seafile_db.sql\n'\
                    'mysqldump --databases seahub_db > /var/tmp/mysqldumps/seahub_db.sql\n',
            },
        },
        'icinga_options': {
            'pretty_name': 'sewfile.franzi.business',
            'vars.notification.sms': False,
        },
        'nginx': {
            'vhosts': {
                'sewfile.franzi.business': {
                    'ssl': '_.franzi.business',
                    'max_body_size': '0',
                    'extras': True,
                    'website_check_path': '/accounts/login/',
                    'website_check_string': 'Username',
                },
            },
        },
        'vm': {
            'cpu': 1,
            'ram': 2,
        },
        'zfs': {
            'pools': {
                'tank': {
                    'when_creating': {
                        'config': [{
                            'devices': {'/dev/sdb'},
                        }],
                    },
                },
            },
            'datasets': {
                'tank/mysql': {
                    'mountpoint': '/var/lib/mysql',
                },
                'tank/seafile-data': {
                    'mountpoint': '/mnt/seafile-data',
                    'needed_by': {
                        'bundle:seafile',
                    },
                },
            },
        },
    },
}
