#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# © Copyright EnterpriseDB UK Limited 2015-2023 - All rights reserved.
from os import getenv, getcwd
from os import path

import yaml
from tpaexec.password import show_password


def main():
    """
    retrieve vault password from chosen keyring backend
    """
    cluster_dir = getcwd()
    try:
        with open(path.join(cluster_dir, "config.yml")) as config_file:
            config = yaml.safe_load(config_file)
            keyring_backend = config.get(
                "keyring_backend", getenv("TPA_KEYRING_BACKEND", None)
            )
            password_name = config.get(
                "vault_name", "vault_pass")
    except IOError:
        print(f"could not load {path.join(cluster_dir, 'config.yml')}")
        raise

    show_password(cluster_dir, password_name, keyring_backend)


if __name__ == "__main__":
    main()
