def validate_export_v2_args()

in dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import/bg_import/utils.py [0:0]


def validate_export_v2_args(args: argparse.Namespace) -> None:
    """
    Validates script run arguments for the export v2.
    Args:
        args: Parsed script run arguments.
    """
    if args.export_mode == "glossary_only" and not args.glossary_json:
        logger.error("The --glossary-json argument must be provided for export mode 'glossary_only'.")
        sys.exit(1)

    if args.export_mode == "entry_links_only" and not args.entrylinks_json:
        logger.error("The --entrylinks-json argument must be provided for export mode 'entry_links_only'.")
        sys.exit(1)

    if args.export_mode == "all" and (not args.glossary_json or not args.entrylinks_json):
        logger.error("Both --glossary-json and --entrylinks-json arguments must be provided for export mode 'all'.")
        sys.exit(1)

    if args.glossary_json:
        glossary_output_dir = os.path.dirname(args.glossary_json)
        if glossary_output_dir and not os.path.isdir(glossary_output_dir):
            logger.error(f"Directory for glossary JSON export path does not exist: {glossary_output_dir}")
            sys.exit(1)

    if args.entrylinks_json:
        entrylinks_output_dir = os.path.dirname(args.entrylinks_json)
        if entrylinks_output_dir and not os.path.isdir(entrylinks_output_dir):
            logger.error(f"Directory for entry links JSON export path does not exist: {entrylinks_output_dir}")
            sys.exit(1)