from common import exec_command, get_env_variable_required

SERVER_ID = "maven.senior.com.br"


def configure_go_repository():
    """Configures jfrog gli for go repository"""

    _configure_jfrog_cli()

    exec_command(
        "jfrog rt go-config "
        "--global "
        f"--server-id-resolve {SERVER_ID} "
        "--repo-resolve go "
        f"--server-id-deploy {SERVER_ID} "
        "--repo-deploy go"
    )


def _configure_jfrog_cli():
    """Configures jfrog cli"""

    maven_username = get_env_variable_required("MAVEN_USERNAME")
    maven_password = get_env_variable_required("MAVEN_PASSWORD")

    maven_url = "maven.proxy.senior.com.br"

    exec_command("jfrog --version", error_message="JFrog CLI não instalada.")

    jfrog_url = f"https://{maven_url}"

    exec_command(
        "jfrog config add "
        "--interactive=false "
        f"--url {jfrog_url} "
        f"--artifactory-url {jfrog_url}/artifactory/ "
        f"--dist-url {jfrog_url}/distribution/ "
        f"--xray-url {jfrog_url}/xray/ "
        f"--mission-control-url {jfrog_url}/mc/ "
        f"--pipelines-url {jfrog_url}/pipelines/ "
        f"--user {maven_username} "
        f"--password {maven_password} "
        f"{SERVER_ID}",
        error_message="Ocorreu um erro ao configurar o JFrog",
    )

    exec_command(f"jfrog config show {SERVER_ID}")
