def main()

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


def main() -> None:
  args = utils.get_arguments()
  utils.validate_args(args)
  import_mode = utils.get_import_mode(args)

  # Create glossary using provided information
  try:
    glossary = dc_glossary.Glossary(
        glossary_identification.GlossaryId(
            project_id=args.project,
            location=args.location,
            entry_group=args.group,
            glossary_id=args.glossary,
        )
    )
  except ValueError:
    logger.error("Can't proceed with import. Please select a valid glossary.")
    utils.end_program_execution()

  parsers_results = _parse_all_csv_files(args)
  _print_parsing_errors(parsers_results)
  if not glossary.is_glossary_empty():
    _handle_non_empty_glossary(import_mode, glossary)

  imported_entries, imported_relations, import_errors = (
      _import_glossary_entries(glossary, parsers_results)
  )
  lines_read = _lines_read(parsers_results)

  user_report.print_report(
      lines_read,
      imported_entries,
      imported_relations,
      import_errors,
  )
  if import_errors:
    logger.warning("Import script execution finalized with some errors.")
    sys.exit(1)