def docs_list(ctx): """List known Data Docs sites.""" context = ctx.obj.data_context usage_event_end: str = ctx.obj.usage_event_end docs_sites_url_dicts = context.get_docs_sites_urls() try: if len(docs_sites_url_dicts) == 0: cli_message("No Data Docs sites found") else: docs_sites_strings = [ " - <cyan>{}</cyan>: {}".format( docs_site_dict["site_name"], docs_site_dict.get("site_url") or f"site configured but does not exist. Run the following command to build site: great_expectations " f'docs build --site-name {docs_site_dict["site_name"]}', ) for docs_site_dict in docs_sites_url_dicts ] list_intro_string = _build_intro_string(docs_sites_strings) cli_message_list(docs_sites_strings, list_intro_string) toolkit.send_usage_message(data_context=context, event=usage_event_end, success=True) except Exception as e: toolkit.exit_with_failure_message_and_stats( context=context, usage_event=usage_event_end, message=f"<red>{e}</red>", ) return
def suite_list(ctx): """Lists available Expectation Suites.""" display_not_implemented_message_and_exit() directory = toolkit.parse_cli_config_file_location( config_file_location=ctx.obj.config_file_location).get("directory") context = toolkit.load_data_context_with_error_handling(directory) try: suite_names = [ " - <cyan>{}</cyan>".format(suite_name) for suite_name in context.list_expectation_suite_names() ] if len(suite_names) == 0: cli_message("No Expectation Suites found") toolkit.send_usage_message(data_context=context, event="cli.suite.list", success=True) return elif len(suite_names) == 1: list_intro_string = "1 Expectation Suite found:" else: list_intro_string = "{} Expectation Suites found:".format( len(suite_names)) cli_message_list(suite_names, list_intro_string) toolkit.send_usage_message(data_context=context, event="cli.suite.list", success=True) except Exception as e: toolkit.send_usage_message(data_context=context, event="cli.suite.list", success=False) raise e
def suite_list(ctx): """List existing Expectation Suites.""" context: DataContext = ctx.obj.data_context usage_event_end: str = ctx.obj.usage_event_end try: suite_names: List[str] = context.list_expectation_suite_names() except Exception as e: toolkit.send_usage_message(data_context=context, event=usage_event_end, success=False) raise e suite_names_styled: List[str] = [ f" - <cyan>{suite_name}</cyan>" for suite_name in suite_names ] if len(suite_names_styled) == 0: cli_message(string="No Expectation Suites found") toolkit.send_usage_message(data_context=context, event=usage_event_end, success=True) return list_intro_string: str if len(suite_names_styled) == 1: list_intro_string = "1 Expectation Suite found:" else: list_intro_string = f"{len(suite_names_styled)} Expectation Suites found:" cli_message_list(string_list=suite_names_styled, list_intro_string=list_intro_string) toolkit.send_usage_message(data_context=context, event=usage_event_end, success=True)
def checkpoint_list(ctx: click.Context) -> None: """List configured checkpoints.""" context: DataContext = ctx.obj.data_context usage_event_end: str = ctx.obj.usage_event_end checkpoints: List[str] = context.list_checkpoints() if not checkpoints: cli_message( "No Checkpoints found.\n" " - Use the command `great_expectations checkpoint new` to create one." ) send_usage_message( data_context=context, event=usage_event_end, success=True, ) sys.exit(0) number_found: int = len(checkpoints) plural: str = "s" if number_found > 1 else "" message: str = f"Found {number_found} Checkpoint{plural}." pretty_list: list = [f" - <cyan>{cp}</cyan>" for cp in checkpoints] cli_message_list(pretty_list, list_intro_string=message) send_usage_message( data_context=context, event=usage_event_end, success=True, )
def docs_list(ctx): """List known Data Docs sites.""" context = ctx.obj.data_context docs_sites_url_dicts = context.get_docs_sites_urls() if len(docs_sites_url_dicts) == 0: cli_message("No Data Docs sites found") else: docs_sites_strings = [ " - <cyan>{}</cyan>: {}".format( docs_site_dict["site_name"], docs_site_dict.get("site_url") or f"site configured but does not exist. Run the following command to build site: great_expectations " f'docs build --site-name {docs_site_dict["site_name"]}', ) for docs_site_dict in docs_sites_url_dicts ] list_intro_string = _build_intro_string(docs_sites_strings) cli_message_list(docs_sites_strings, list_intro_string) toolkit.send_usage_message(data_context=context, event="cli.docs.list", success=True)