#!/usr/bin/env python3

from asyncio import run
from argparse import ArgumentParser
from traceback import print_exc

from risotto.machine import templates, remove_cache, load, INSTALL_DIR


async def main():
    parser = ArgumentParser()
    parser.add_argument('server_name')
    parser.add_argument('--nocache', action='store_true')
    parser.add_argument('--debug', action='store_true')
    args = parser.parse_args()
    if args.nocache:
        remove_cache()

    config = await load()
    try:
        await templates(args.server_name,
                        config,
                        )
    except Exception as err:
        if args.debug:
            print_exc()
        exit(err)
    print(f'templates generated in {INSTALL_DIR} directory')


run(main())