Skip to content
Snippets Groups Projects
deploy.py 1.1 KiB
Newer Older
Christoph Alt's avatar
Christoph Alt committed
import dashboards.dashboard_list as boards
from dashboards.upload import upload_dashboard

logger = logging.getLogger(__file__)
logger.setLevel(logging.INFO)


def get_available_dashboards():
    yield from (func for func in dir(boards) if func.startswith("dashboard_"))


def strip_prefix(available):
    return available.replace("dashboard_", "")

Christoph Alt's avatar
Christoph Alt committed

def main():
    available_dashboards = list(get_available_dashboards())
    parser = argparse.ArgumentParser(description="List Dashboards you want to deploy")
    parser.add_argument("dashboards",
                        nargs='*',
                        help=', '.join((strip_prefix(d) for d in available_dashboards)))
    args = parser.parse_args()
    if len(args.dashboards) == 0:
        dashboards = available_dashboards
    else:
        dashboards = (f"dashboard_{db}" for db in args.dashboards)

Christoph Alt's avatar
Christoph Alt committed
    walberla_folder = 8
    for board in dashboards:
        logger.info(f"Try to upload {board}")
        board = getattr(boards, board)
Christoph Alt's avatar
Christoph Alt committed
        upload_dashboard(board(), folder=walberla_folder)


if __name__ == "__main__":
    main()