def parse_args()

in scripts/gen_dockerfile.py [0:0]


def parse_args(argv):
    """Parse and validate command line flags"""
    parser = argparse.ArgumentParser()
    parser.add_argument(
        '--base-image',
        type=functools.partial(
            validation_utils.validate_arg_regex, flag_regex=IMAGE_REGEX),
        default='gcr.io/google-appengine/python:latest',
        help='Name of Docker image to use as base')
    # In some cases, gcloud sets an environment variable to indicate
    # the location of the application configuration file, rather than
    # using the --config flag.  The order of precedence from highest
    # to lowest is:
    #
    # 1) --config flag
    # 2) $GAE_APPLICATION_YAML_PATH environment variable
    # 3) a file named "app.yaml" in the current working directory
    parser.add_argument(
        '--config',
        type=functools.partial(
            validation_utils.validate_arg_regex, flag_regex=PRINTABLE_REGEX),
        default=(os.environ.get(GAE_APPLICATION_YAML_PATH) or 'app.yaml'),
        help='Path to application configuration file'
        )
    parser.add_argument(
        '--source-dir',
        type=functools.partial(
            validation_utils.validate_arg_regex, flag_regex=PRINTABLE_REGEX),
        default='.',
        help=('Application source and output directory'))
    args = parser.parse_args(argv[1:])
    return args