#!/usr/bin/env python

import sys
import os
import subprocess

from yt.wrapper import YtClient
from spyt.standalone import raw_submit
from spyt import utils as spark_utils


def main():
    parser = spark_utils.get_default_arg_parser(description="Spark Submit")
    parser.add_argument("--spyt-version", required=False)
    parser.add_argument("--python-version", required=False)

    args, unknown_args = spark_utils.parse_args(parser)

    yt_client = YtClient(proxy=args.proxy, token=spark_utils.default_token())

    return_code = raw_submit(discovery_path=args.discovery_path,
                             spark_home=spark_utils.spark_home(),
                             spark_args=unknown_args,
                             spyt_version=args.spyt_version,
                             python_version=args.python_version,
                             client=yt_client)
    exit(return_code)


if __name__ == '__main__':
    main()
