pyegeria 5.3.3.10.dev9__tar.gz → 5.4.8.10__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pyegeria-5.4.8.10/MANIFEST.in +3 -0
- pyegeria-5.4.8.10/PKG-INFO +189 -0
- pyegeria-5.4.8.10/README.md +152 -0
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/__init__.py +15 -13
- pyegeria-5.4.8.10/commands/cat/Dr-Egeria_md-orig.py +166 -0
- pyegeria-5.4.8.10/commands/cat/__init__.py +7 -0
- pyegeria-5.4.8.10/commands/cat/dr_egeria_command_help.py +369 -0
- pyegeria-5.4.8.10/commands/cat/dr_egeria_jupyter.py +122 -0
- pyegeria-5.4.8.10/commands/cat/dr_egeria_md.py +97 -0
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/exp_list_glossaries.py +2 -3
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/get_asset_graph.py +3 -3
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/get_collection.py +7 -8
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/get_project_dependencies.py +5 -7
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/get_project_structure.py +5 -7
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/get_tech_type_elements.py +12 -14
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/glossary_actions.py +185 -35
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/list_assets.py +8 -5
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/list_cert_types.py +5 -5
- pyegeria-5.4.8.10/commands/cat/list_collections.py +235 -0
- pyegeria-5.4.8.10/commands/cat/list_data_designer.py +183 -0
- pyegeria-5.4.8.10/commands/cat/list_data_structures_full.py +223 -0
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/list_deployed_catalogs.py +8 -7
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/list_deployed_database_schemas.py +9 -8
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/list_deployed_databases.py +8 -7
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/list_servers_deployed_imp.py → pyegeria-5.4.8.10/commands/cat/list_deployed_servers.py +2 -2
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/list_glossaries.py +58 -16
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/list_projects.py +4 -4
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/list_tech_type_elements.py +2 -2
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/list_tech_types.py +3 -3
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/list_terms.py +96 -64
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/list_todos.py +2 -2
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cat/list_user_ids.py +8 -7
- pyegeria-5.4.8.10/commands/cat/run_report.py +457 -0
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cli/__init__.py +1 -1
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cli/egeria.py +339 -207
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cli/egeria_cat.py +175 -82
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cli/egeria_login_tui.py +14 -16
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cli/egeria_my.py +13 -16
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cli/egeria_ops.py +38 -49
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cli/egeria_tech.py +143 -50
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/cli/ops_config.py +14 -10
- pyegeria-5.4.8.10/commands/my/__init__.py +20 -0
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/my/list_my_profile.py +5 -7
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/my/list_my_roles.py +3 -3
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/my/monitor_my_todos.py +5 -5
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/my/monitor_open_todos.py +5 -5
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/my/todo_actions.py +2 -1
- pyegeria-5.4.8.10/commands/ops/__init__.py +21 -0
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/gov_server_actions.py +10 -8
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/list_archives.py +7 -8
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/list_catalog_targets.py +18 -16
- pyegeria-5.4.8.10/commands/ops/load_archive.py +82 -0
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/monitor_asset_events.py +7 -6
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/monitor_engine_activity.py +4 -5
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/monitor_engine_activity_c.py +3 -3
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/monitor_gov_eng_status.py +2 -1
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/monitor_integ_daemon_status.py +18 -10
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/monitor_platform_status.py +3 -2
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/monitor_server_startup.py +6 -6
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/monitor_server_status.py +7 -5
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/orig_monitor_server_list.py +1 -1
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/orig_monitor_server_status.py +2 -2
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/refresh_integration_daemon.py +4 -4
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/restart_integration_daemon.py +3 -3
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/table_integ_daemon_status.py +3 -3
- pyegeria-5.4.8.10/commands/tech/__init__.py +20 -0
- pyegeria-5.4.8.10/commands/tech/generic_actions.py +74 -0
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/get_element_info.py +4 -6
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/get_guid_info.py +3 -4
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/get_tech_details.py +7 -8
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/get_tech_type_template.py +3 -3
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_all_om_type_elements.py +8 -7
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_all_om_type_elements_x.py +9 -10
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_all_related_elements.py +9 -7
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_anchored_elements.py +3 -3
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_asset_types.py +3 -3
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_elements_by_classification_by_property_value.py +39 -25
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_elements_by_property_value.py +27 -22
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_elements_by_property_value_x.py +19 -14
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_elements_for_classification.py +9 -7
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_gov_action_processes.py +7 -12
- pyegeria-5.4.8.10/commands/tech/list_information_supply_chains.py +167 -0
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_registered_services.py +2 -2
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_related_elements_with_prop_value.py +28 -14
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_related_specification.py +2 -2
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_relationship_types.py +3 -4
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_relationships.py +2 -2
- pyegeria-5.4.8.10/commands/tech/list_solution_blueprints.py +181 -0
- pyegeria-5.4.8.10/commands/tech/list_solution_components.py +185 -0
- pyegeria-5.4.8.10/commands/tech/list_solution_roles.py +184 -0
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_tech_templates.py +2 -2
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/list_valid_metadata_values.py +4 -5
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/table_tech_templates.py +15 -12
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/tech/x_list_related_elements.py +5 -3
- pyegeria-5.4.8.10/examples/Coco_config/README.md +19 -0
- pyegeria-5.4.8.10/examples/Coco_config/__init__.py +4 -0
- pyegeria-5.4.8.10/examples/Coco_config/config_cocoMDS1.py +108 -0
- pyegeria-5.4.8.10/examples/Coco_config/config_cocoMDS2.py +126 -0
- pyegeria-5.4.8.10/examples/Coco_config/config_cocoMDS3.py +109 -0
- pyegeria-5.4.8.10/examples/Coco_config/config_cocoMDS4.py +91 -0
- pyegeria-5.4.8.10/examples/Coco_config/config_cocoMDS5.py +116 -0
- pyegeria-5.4.8.10/examples/Coco_config/config_cocoMDS6.py +114 -0
- pyegeria-5.4.8.10/examples/Coco_config/config_cocoMDSx.py +119 -0
- pyegeria-5.4.8.10/examples/Coco_config/config_cocoView1.py +155 -0
- pyegeria-5.4.8.10/examples/Coco_config/config_coco_core.py +255 -0
- pyegeria-5.4.8.10/examples/Coco_config/config_coco_datalake.py +450 -0
- pyegeria-5.4.8.10/examples/Coco_config/config_exchangeDL01.py +106 -0
- pyegeria-5.4.8.10/examples/Coco_config/config_governDL01.py +80 -0
- pyegeria-5.4.8.10/examples/Coco_config/config_monitorDev01.py +60 -0
- pyegeria-5.4.8.10/examples/Coco_config/config_monitorGov01.py +194 -0
- pyegeria-5.4.8.10/examples/Coco_config/globals.py +154 -0
- pyegeria-5.4.8.10/examples/GeoSpatial Products Example.py +535 -0
- pyegeria-5.4.8.10/examples/Jupyter Notebooks/P-egeria-server-config.ipynb +2137 -0
- pyegeria-5.4.8.10/examples/Jupyter Notebooks/README.md +2 -0
- pyegeria-5.4.8.10/examples/Jupyter Notebooks/common/P-environment-check.ipynb +115 -0
- pyegeria-5.4.8.10/examples/Jupyter Notebooks/common/__init__.py +14 -0
- pyegeria-5.4.8.10/examples/Jupyter Notebooks/common/common-functions.ipynb +4694 -0
- pyegeria-5.4.8.10/examples/Jupyter Notebooks/common/environment-check.ipynb +53 -0
- pyegeria-5.4.8.10/examples/Jupyter Notebooks/common/globals.ipynb +184 -0
- pyegeria-5.4.8.10/examples/Jupyter Notebooks/common/globals.py +154 -0
- pyegeria-5.4.8.10/examples/Jupyter Notebooks/common/orig_globals.py +152 -0
- pyegeria-5.4.8.10/examples/format_sets/all_format_sets.json +910 -0
- pyegeria-5.4.8.10/examples/format_sets/custom_format_sets.json +268 -0
- pyegeria-5.4.8.10/examples/format_sets/subset_format_sets.json +187 -0
- pyegeria-5.4.8.10/examples/format_sets_save_load_example.py +294 -0
- pyegeria-5.4.8.10/examples/output_formats_example.py +193 -0
- pyegeria-5.4.8.10/md_processing/__init__.py +90 -0
- pyegeria-5.4.8.10/md_processing/data/commands-working.json +34850 -0
- pyegeria-5.4.8.10/md_processing/data/commands.json +30641 -0
- pyegeria-5.4.8.10/md_processing/data/generated_format_sets.json +4137 -0
- pyegeria-5.4.8.10/md_processing/data/generated_format_sets.py +45 -0
- pyegeria-5.4.8.10/md_processing/dr_egeria.py +344 -0
- pyegeria-5.4.8.10/md_processing/md_commands/__init__.py +3 -0
- pyegeria-5.4.8.10/md_processing/md_commands/data_designer_commands.py +1279 -0
- pyegeria-5.4.8.10/md_processing/md_commands/ext_ref_commands.py +530 -0
- pyegeria-5.4.8.10/md_processing/md_commands/feedback_commands.py +739 -0
- pyegeria-5.4.8.10/md_processing/md_commands/glossary_commands.py +698 -0
- pyegeria-5.4.8.10/md_processing/md_commands/governance_officer_commands.py +600 -0
- pyegeria-5.4.8.10/md_processing/md_commands/product_manager_commands.py +1266 -0
- pyegeria-5.4.8.10/md_processing/md_commands/project_commands.py +397 -0
- pyegeria-5.4.8.10/md_processing/md_commands/solution_architect_commands.py +1184 -0
- pyegeria-5.4.8.10/md_processing/md_commands/view_commands.py +288 -0
- pyegeria-5.4.8.10/md_processing/md_processing_utils/__init__.py +4 -0
- pyegeria-5.4.8.10/md_processing/md_processing_utils/common_md_proc_utils.py +1249 -0
- pyegeria-5.4.8.10/md_processing/md_processing_utils/common_md_utils.py +580 -0
- pyegeria-5.4.8.10/md_processing/md_processing_utils/determine_width.py +103 -0
- pyegeria-5.4.8.10/md_processing/md_processing_utils/extraction_utils.py +548 -0
- pyegeria-5.4.8.10/md_processing/md_processing_utils/gen_format_sets.py +422 -0
- pyegeria-5.4.8.10/md_processing/md_processing_utils/generate_dr_help.py +191 -0
- pyegeria-5.4.8.10/md_processing/md_processing_utils/generate_md_cmd_templates.py +143 -0
- pyegeria-5.4.8.10/md_processing/md_processing_utils/generate_md_templates.py +92 -0
- pyegeria-5.4.8.10/md_processing/md_processing_utils/md_processing_constants.py +497 -0
- pyegeria-5.4.8.10/md_processing/md_processing_utils/message_constants.py +19 -0
- pyegeria-5.4.8.10/pyegeria/__init__.py +97 -0
- pyegeria-5.4.8.10/pyegeria/_base_client.py +548 -0
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/_client.py +72 -12
- pyegeria-5.4.8.10/pyegeria/_client_new.py +5660 -0
- pyegeria-5.4.8.10/pyegeria/_client_new_backup.py +5359 -0
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/_exceptions.py +55 -46
- pyegeria-5.4.8.10/pyegeria/_exceptions_new.py +438 -0
- pyegeria-5.4.8.10/pyegeria/_globals.py +153 -0
- pyegeria-5.4.8.10/pyegeria/_output_format_models.py +423 -0
- pyegeria-5.4.8.10/pyegeria/_output_formats.py +14 -0
- pyegeria-5.4.8.10/pyegeria/_validators.py +258 -0
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/asset_catalog_omvs.py +80 -23
- pyegeria-5.3.3.10.dev9/pyegeria/automated_curation_omvs.py → pyegeria-5.4.8.10/pyegeria/automated_curation.py +1424 -1299
- pyegeria-5.4.8.10/pyegeria/base_report_formats.py +2974 -0
- pyegeria-5.4.8.10/pyegeria/classification_manager.py +8270 -0
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/classification_manager_omvs.py +2012 -1898
- pyegeria-5.4.8.10/pyegeria/collection_manager.py +5724 -0
- pyegeria-5.4.8.10/pyegeria/collection_models.py +168 -0
- pyegeria-5.4.8.10/pyegeria/config.py +636 -0
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/core_omag_server_config.py +1 -1
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/create_tech_guid_lists.py +13 -13
- pyegeria-5.4.8.10/pyegeria/data_designer.py +4994 -0
- pyegeria-5.4.8.10/pyegeria/egeria_cat_client.py +49 -0
- pyegeria-5.4.8.10/pyegeria/egeria_client.py +137 -0
- pyegeria-5.4.8.10/pyegeria/egeria_config_client.py +76 -0
- pyegeria-5.4.8.10/pyegeria/egeria_tech_client.py +122 -0
- pyegeria-5.4.8.10/pyegeria/external_links.py +1687 -0
- pyegeria-5.4.8.10/pyegeria/feedback_manager.py +833 -0
- pyegeria-5.4.8.10/pyegeria/format_set_executor.py +311 -0
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/full_omag_server_config.py +5 -3
- pyegeria-5.4.8.10/pyegeria/glossary_manager.py +2774 -0
- pyegeria-5.4.8.10/pyegeria/governance_officer.py +2788 -0
- pyegeria-5.4.8.10/pyegeria/load_config.py +36 -0
- pyegeria-5.4.8.10/pyegeria/logging_configuration.py +207 -0
- pyegeria-5.4.8.10/pyegeria/mcp_adapter.py +124 -0
- pyegeria-5.4.8.10/pyegeria/mcp_server.py +210 -0
- pyegeria-5.4.8.10/pyegeria/md_processing_utils.py +2147 -0
- pyegeria-5.4.8.10/pyegeria/mermaid_utilities.py +1246 -0
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/metadata_explorer_omvs.py +5 -7
- pyegeria-5.4.8.10/pyegeria/models.py +534 -0
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/my_profile_omvs.py +3 -2
- pyegeria-5.4.8.10/pyegeria/output_formatter.py +1158 -0
- pyegeria-5.4.8.10/pyegeria/output_formatter_with_machine_keys.py +1127 -0
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/platform_services.py +8 -7
- pyegeria-5.3.3.10.dev9/pyegeria/project_manager_omvs.py → pyegeria-5.4.8.10/pyegeria/project_manager.py +836 -972
- pyegeria-5.4.8.10/pyegeria/reference_data.py +1146 -0
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/runtime_manager_omvs.py +72 -72
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/server_operations.py +3 -3
- pyegeria-5.4.8.10/pyegeria/solution_architect.py +6003 -0
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/template_manager_omvs.py +13 -13
- pyegeria-5.4.8.10/pyegeria/utils.py +307 -0
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/valid_metadata_omvs.py +4 -3
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/x_action_author_omvs.py +4 -7
- pyegeria-5.4.8.10/pyegeria.egg-info/PKG-INFO +189 -0
- pyegeria-5.4.8.10/pyegeria.egg-info/SOURCES.txt +257 -0
- pyegeria-5.4.8.10/pyegeria.egg-info/dependency_links.txt +1 -0
- pyegeria-5.4.8.10/pyegeria.egg-info/entry_points.txt +105 -0
- pyegeria-5.4.8.10/pyegeria.egg-info/requires.txt +24 -0
- pyegeria-5.4.8.10/pyegeria.egg-info/top_level.txt +4 -0
- pyegeria-5.4.8.10/pyproject.toml +186 -0
- pyegeria-5.4.8.10/setup.cfg +4 -0
- pyegeria-5.4.8.10/tests/test_asset_catalog_omvs.py +389 -0
- pyegeria-5.4.8.10/tests/test_automated_curation_omvs.py +1342 -0
- pyegeria-5.4.8.10/tests/test_classification_manager_omvs.py +768 -0
- pyegeria-5.4.8.10/tests/test_client.py +161 -0
- pyegeria-5.4.8.10/tests/test_client_new.py +344 -0
- pyegeria-5.4.8.10/tests/test_collection_manager_omvs.py +2187 -0
- pyegeria-5.4.8.10/tests/test_comments.py +194 -0
- pyegeria-5.4.8.10/tests/test_config.py +77 -0
- pyegeria-5.4.8.10/tests/test_config_unit.py +22 -0
- pyegeria-5.4.8.10/tests/test_core_omag_server_config.py +1771 -0
- pyegeria-5.4.8.10/tests/test_data_designer.py +980 -0
- pyegeria-5.4.8.10/tests/test_dr_egeria_command_help_modes.py +64 -0
- pyegeria-5.4.8.10/tests/test_egeria_cat_client.py +71 -0
- pyegeria-5.4.8.10/tests/test_egeria_client.py +179 -0
- pyegeria-5.4.8.10/tests/test_egeria_my_client.py +110 -0
- pyegeria-5.4.8.10/tests/test_env_settings.py +98 -0
- pyegeria-5.4.8.10/tests/test_external_links.py +606 -0
- pyegeria-5.4.8.10/tests/test_feedback_manager_omvs.py +1156 -0
- pyegeria-5.4.8.10/tests/test_format_set_dict.py +311 -0
- pyegeria-5.4.8.10/tests/test_full_omag_server_config.py +326 -0
- pyegeria-5.4.8.10/tests/test_glossary_manager_omvs.py +840 -0
- pyegeria-5.4.8.10/tests/test_governance_officer_omvs.py +673 -0
- pyegeria-5.4.8.10/tests/test_load_config.py +266 -0
- pyegeria-5.4.8.10/tests/test_mcp_adapter.py +39 -0
- pyegeria-5.4.8.10/tests/test_metadata_explorer_omvs.py +906 -0
- pyegeria-5.4.8.10/tests/test_my_profile_omvs.py +309 -0
- pyegeria-5.4.8.10/tests/test_output_format_models_unit.py +24 -0
- pyegeria-5.4.8.10/tests/test_output_format_sets_unit.py +14 -0
- pyegeria-5.4.8.10/tests/test_output_formats.py +217 -0
- pyegeria-5.4.8.10/tests/test_output_formatter_deepcopy_isolation.py +67 -0
- pyegeria-5.4.8.10/tests/test_output_formatter_dict_collisions.py +63 -0
- pyegeria-5.4.8.10/tests/test_platform_services.py +880 -0
- pyegeria-5.4.8.10/tests/test_project_manager_omvs.py +824 -0
- pyegeria-5.4.8.10/tests/test_reference_data.py +337 -0
- pyegeria-5.4.8.10/tests/test_registered_info.py +160 -0
- pyegeria-5.4.8.10/tests/test_root_path.py +136 -0
- pyegeria-5.4.8.10/tests/test_runtime_manager.py +780 -0
- pyegeria-5.4.8.10/tests/test_server_operations.py +197 -0
- pyegeria-5.4.8.10/tests/test_solution_architect_omvs.py +1546 -0
- pyegeria-5.4.8.10/tests/test_utils.py +73 -0
- pyegeria-5.4.8.10/tests/test_valid_metadata_omvs.py +422 -0
- pyegeria-5.3.3.10.dev9/PKG-INFO +0 -71
- pyegeria-5.3.3.10.dev9/README.md +0 -40
- pyegeria-5.3.3.10.dev9/pyegeria/.DS_Store +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/README.md +0 -35
- pyegeria-5.3.3.10.dev9/pyegeria/__init__.py +0 -371
- pyegeria-5.3.3.10.dev9/pyegeria/_globals.py +0 -37
- pyegeria-5.3.3.10.dev9/pyegeria/_validators.py +0 -385
- pyegeria-5.3.3.10.dev9/pyegeria/collection_manager_omvs.py +0 -2727
- pyegeria-5.3.3.10.dev9/pyegeria/commands/.DS_Store +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/README.md +0 -47
- pyegeria-5.3.3.10.dev9/pyegeria/commands/__pycache__/__init__.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/__pycache__/server_status_widget.cpython-312-pytest-7.4.4.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/README.md +0 -16
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__init__.py +0 -1
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/__init__.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/get_asset_graph.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/get_collection.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/get_project_dependencies.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/get_project_structure.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/get_tech_type_elements.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/glossary_actions.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/list_assets.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/list_cert_types.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/list_collections.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/list_deployed_catalogs.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/list_deployed_database_schemas.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/list_deployed_databases.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/list_glossaries.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/list_projects.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/list_servers_deployed_imp.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/list_tech_type_elements.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/list_tech_types.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/list_terms.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/list_todos.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/__pycache__/list_user_ids.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/get_information_supply_chains.py +0 -207
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cat/list_collections.py +0 -162
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cli/__pycache__/__init__.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cli/__pycache__/egeria_login_tui.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cli/__pycache__/egeria_ops.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cli/__pycache__/ops_config.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/cli/txt_custom_v2.tcss +0 -19
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/.DS_Store +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/README.md +0 -145
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/.DS_Store +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/README.md +0 -511
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/.DS_Store +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/.DS_Store +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/assets/asset-graph 2024-11-20 at 15.56.42.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/assets/assets-in-domain 2024-11-20 at 15.49.55@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/assets/elements-of-type 2024-11-20 at 16.01.35.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/assets/tech-type-elements 2024-11-20 at 16.05.05.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/.DS_Store +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-data-catalogs 2024-12-17 at 15.43.27@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-data-catalogs-2024-11-20 at 16.17.43@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-schemas 2024-11-25 at 20.14.50@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-schemas 2024-12-17 at 15.48.38@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-servers 2024-11-25 at 20.21.25@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-servers 2024-12-17 at 15.52.16@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed_databases 2024-12-16 at 16.40.31@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/glossary/list-glossaries 2024-11-25 at 20.30.02.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/glossary/list-terms 2024-11-25 at 20.32.11.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/info/asset-types 2024-11-25 at 20.34.19@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/info/certification-types 2024-11-25 at 20.37.07.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/info/collection-graph 2024-12-12 at 11.33.18@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/info/list-collections 2024-12-10 at 14.25.51@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/info/list-todos 2024-12-12 at 11.46.30@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/info/list-user-ids 2024-12-12 at 11.51.09@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/info/tech-types 2024-12-12 at 11.37.20@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/projects/project_dependencies 2024-12-14 at 16.24.39@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/projects/project_structure 2024-12-14 at 16.21.35@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/cat/show/projects/projects 2024-12-14 at 16.18.10@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/hey_egeria tui 2024-12-16 at 16.58.22@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/my/show/my_profile 2024-12-14 at 16.29.27@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/my/show/my_roles 2024-12-14 at 16.32.10@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/my/show/my_todos 2024-12-15 at 16.24.13@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/my/show/open_todos 2024-12-14 at 16.36.12@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/ops/show/engines/list_engine_activity compressed 2024-12-15 at 16.48.48@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/ops/show/engines/monitor_engine_activity 2024-12-15 at 16.32.55@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/ops/show/engines/monitor_engine_activity compressed 2024-12-15 at 16.38.29@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/ops/show/engines/monitor_engine_status 2024-12-15 at 16.51.26.jpeg +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/ops/show/integrations/monitor_integration_daemon_status 2024-12-15 at 16.57.12@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/ops/show/integrations/monitor_integration_targets 2024-12-15 at 17.02.19@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/ops/show/platforms/monitor_platform_status 2024-12-15 at 19.53.18@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/ops/show/servers/monitor_server_status 2024-12-15 at 19.59.39@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/ops/show/servers/monitor_server_status full 2024-12-15 at 20.01.57@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/ops/show/servers/monitor_startup_servers 2024-12-15 at 19.56.07@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/elements/get_anchored_elements 2024-12-15 at 21.25.41@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/elements/get_elements_of_om_type 2024-12-16 at 14.39.59@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/elements/info_for_guid 2024-12-16 at 11.35.29@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/elements/list_elements_by_om-type 2024-12-16 at 14.24.18@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/elements/list_elements_by_om-type extended 2024-12-16 at 14.28.46@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/elements/list_elements_of_om_type_by_classification 2024-12-16 at 14.35.26@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/elements/related_elements 2024-12-16 at 14.55.01@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/elements/show_related_specifications 2024-12-16 at 15.04.55@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/asset_types 2024-12-16 at 15.10.16@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/detailed_governance_action_processes 2024-12-16 at 15.16.26@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/governance_action_processes 2024-12-16 at 15.13.01@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/registered_services 2024-12-16 at 16.44.54@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/relationship_types 2024-12-16 at 16.20.34@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/relationship_types 2024-12-19 at 10.51.54@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/valid_metadata_values 2024-12-16 at 15.31.56@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/list_tech_type_template_specs 2024-12-16 at 16.03.22@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/list_technology_types 2024-12-16 at 15.39.20@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/tech_type_details 2024-12-16 at 15.37.21@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/tech_type_templates 2024-12-16 at 16.11.48@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/.DS_Store +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/basic-glossary-tui.md +0 -109
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/.DS_Store +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/delete-glossary-step1 2024-11-06 at 15.47.23@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/delete-glossary-step2 2024-11-06 at 15.51.29@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/delete-glossary-step3 2024-11-06 at 15.53.19@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/delete-glossary-step4 2024-11-06 at 15.55.11@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-create-glossary example 2024-11-05 at 20.38.04@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-create-term 2024-11-06 at 20.48.29.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-delete-term 2024-11-07 at 03.57.25.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-display-terms-for-glossary-test 2024-11-06 at 20.51.28.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-export-example 2024-11-07 at 09.54.57.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-exported-terms 2024-11-06 at 21.06.32.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-glossary-list example 2024-11-05 at 20.41.02@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-import-terms 2024-11-07 at 08.15.18.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-list-all-terms 2024-11-06 at 16.22.20@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-list-terms-for-example 2024-11-06 at 16.40.12.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-list-terms-second 2024-11-06 at 16.45.13.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-pipx install pyegeria 2024-11-10 at 18.12.21.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-server-status-full 2024-11-10 at 18.25.14.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-servers-status 2024-11-10 at 18.15.42.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/out-upsert-import 2024-11-07 at 19.37.00.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/tui-2024-11-10 at 18.26.29.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/tui-create-glossary example 2024-11-05 at 20.34.24@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/tui-create-term 2024-11-06 at 20.46.35.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/tui-delete-term 2024-11-07 at 03.51.57.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/tui-display-terms-for-example 2024-11-06 at 20.56.49.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/tui-export-example 2024-11-07 at 09.52.59.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/tui-hey-egeria 2024-11-10 at 18.31.01.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/tui-import-upsert-example 2024-11-07 at 10.08.37.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/tui-list-terms-second 2024-11-06 at 16.46.34.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/tui-load-archive.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/tui-server-status-full 2024-11-10 at 19.14.36.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/tui-show-glossaries 2024-11-07 at 20.00.05.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/tui-show-glossary-terms 2024-11-05 at 19.37.53@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/tui-upsert 2024-11-07 at 11.49.04.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/glossary/images/upsert-example.om-terms 2024-11-07 at 11.44.05.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/.DS_Store +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/README.md +0 -346
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/.DS_Store +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/CleanShot 2024-11-18 at 21.32.03@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/Xmind 1731421782704.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/Xmind 1731422134920.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/hey_egeria 2024-11-12 at 20.38.43.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/hey_egeria cat 2024-11-12 at 21.41.43.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/out-integ-status-list 2024-11-12 at 16.45.26.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/out-integ-status-live 2024-11-12 at 16.44.12@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/out-server-status 2024-11-10 at 18.15.42@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/out-server-status-full 2024-11-10 at 18.25.14@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/short-cut commands 2024-11-12 at 22.22.13.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-hey-egeria.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-integration-status-paging.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-load-archive 2024-11-10 at 19.19.09@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-show-server-status 2024-11-10 at 18.52.01@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-show-server-status-full 2024-11-10.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-status-paging 2024-11-12 at 16.26.14@2x.png +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/my/README.md +0 -17
- pyegeria-5.3.3.10.dev9/pyegeria/commands/my/__init__.py +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/my/__pycache__/__init__.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/my/__pycache__/list_my_profile.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/my/__pycache__/list_my_roles.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/my/__pycache__/monitor_my_todos.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/my/__pycache__/monitor_open_todos.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/my/__pycache__/todo_actions.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/README.md +0 -24
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__init__.py +0 -22
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/__init__.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/gov_server_actions.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/list_archives.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/list_catalog_targets.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/load_archive.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/monitor_engine_activity.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/monitor_engine_activity_c.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/monitor_gov_eng_status.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/monitor_integ_daemon_status.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/monitor_platform_status.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/monitor_server_startup.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/monitor_server_status.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/refresh_integration_daemon.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/restart_integration_daemon.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/__pycache__/table_integ_daemon_status.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/ops/load_archive.py +0 -75
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/README.md +0 -24
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__init__.py +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/__init__.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/get_element_info.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/get_guid_info.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/get_tech_details.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/get_tech_type_template.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/list_anchored_elements.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/list_asset_types.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/list_elements_by_property_value.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/list_elements_for_classification.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/list_gov_action_processes.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/list_registered_services.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/list_related_specification.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/list_relationship_types.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/list_relationships.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/list_tech_templates.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/commands/tech/__pycache__/list_valid_metadata_values.cpython-312.pyc +0 -0
- pyegeria-5.3.3.10.dev9/pyegeria/egeria_cat_client.py +0 -78
- pyegeria-5.3.3.10.dev9/pyegeria/egeria_client.py +0 -117
- pyegeria-5.3.3.10.dev9/pyegeria/egeria_config_client.py +0 -45
- pyegeria-5.3.3.10.dev9/pyegeria/egeria_my_client.py +0 -56
- pyegeria-5.3.3.10.dev9/pyegeria/egeria_tech_client.py +0 -94
- pyegeria-5.3.3.10.dev9/pyegeria/feedback_manager_omvs.py +0 -4573
- pyegeria-5.3.3.10.dev9/pyegeria/glossary_browser_omvs.py +0 -2507
- pyegeria-5.3.3.10.dev9/pyegeria/glossary_manager_omvs.py +0 -3597
- pyegeria-5.3.3.10.dev9/pyegeria/mermaid_utilities.py +0 -257
- pyegeria-5.3.3.10.dev9/pyegeria/solution_architect_omvs.py +0 -639
- pyegeria-5.3.3.10.dev9/pyegeria/utils.py +0 -195
- pyegeria-5.3.3.10.dev9/pyproject.toml +0 -149
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/LICENSE +0 -0
- {pyegeria-5.3.3.10.dev9/pyegeria → pyegeria-5.4.8.10}/commands/ops/x_engine_actions.py +0 -0
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/_deprecated_gov_engine.py +0 -0
- {pyegeria-5.3.3.10.dev9 → pyegeria-5.4.8.10}/pyegeria/registered_info.py +0 -0
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: pyegeria
|
|
3
|
+
Version: 5.4.8.10
|
|
4
|
+
Summary: A python client for Egeria
|
|
5
|
+
Author-email: Dan Wolfson <dan.wolfson@pdr-associates.com>
|
|
6
|
+
License-Expression: Apache-2.0
|
|
7
|
+
Keywords: egeria,metadata,governance
|
|
8
|
+
Classifier: Programming Language :: Python
|
|
9
|
+
Classifier: Programming Language :: Python :: 3
|
|
10
|
+
Requires-Python: >3.12
|
|
11
|
+
Description-Content-Type: text/markdown
|
|
12
|
+
License-File: LICENSE
|
|
13
|
+
Requires-Dist: httpx
|
|
14
|
+
Requires-Dist: rich>=14.2
|
|
15
|
+
Requires-Dist: validators
|
|
16
|
+
Requires-Dist: urllib3
|
|
17
|
+
Requires-Dist: requests
|
|
18
|
+
Requires-Dist: jupyter
|
|
19
|
+
Requires-Dist: click
|
|
20
|
+
Requires-Dist: trogon
|
|
21
|
+
Requires-Dist: mermaid-py
|
|
22
|
+
Requires-Dist: psycopg2-binary>=2.9.11
|
|
23
|
+
Requires-Dist: jupyter-notebook-parser
|
|
24
|
+
Requires-Dist: loguru
|
|
25
|
+
Requires-Dist: inflect
|
|
26
|
+
Requires-Dist: pydantic>=2.12.3
|
|
27
|
+
Requires-Dist: pydantic-settings>=2.10.1
|
|
28
|
+
Requires-Dist: pydevd-pycharm>=253.27642.35
|
|
29
|
+
Requires-Dist: wcwidth
|
|
30
|
+
Requires-Dist: altair
|
|
31
|
+
Requires-Dist: mcp>=0.1
|
|
32
|
+
Requires-Dist: markers>=0.3.0
|
|
33
|
+
Requires-Dist: pytest-asyncio>=1.2.0
|
|
34
|
+
Provides-Extra: test
|
|
35
|
+
Requires-Dist: pytest; extra == "test"
|
|
36
|
+
Dynamic: license-file
|
|
37
|
+
|
|
38
|
+
<!-- SPDX-License-Identifier: CC-BY-4.0 -->
|
|
39
|
+
<!-- Copyright Contributors to the ODPi Egeria project. -->
|
|
40
|
+
|
|
41
|
+

|
|
42
|
+
|
|
43
|
+
[](LICENSE)
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
# pyegeria: a python client for Egeria
|
|
47
|
+
|
|
48
|
+
This is a package for easily using the Egeria
|
|
49
|
+
open metadata environment from python. Details about the
|
|
50
|
+
open source Egeria project can be found at [Egeria Project](https://egeria-project.org).
|
|
51
|
+
|
|
52
|
+
This package is in active development. There is initial
|
|
53
|
+
support for many of Egeria's services including configuration and operation. This client depends on
|
|
54
|
+
This release supports Egeria 5.1 - although most of the functions may work on earlier versions of Egeria as well.
|
|
55
|
+
|
|
56
|
+
The code is organized to mimic the existing Egeria Java Client structure.
|
|
57
|
+
|
|
58
|
+
The commands folder holds the Egeria Command Line Interface and corresponding commands
|
|
59
|
+
to visualize and use Egeria. The commands also serve as useful examples.
|
|
60
|
+
|
|
61
|
+
An examples folder holds some useful examples showing different facets of using pyegeria.
|
|
62
|
+
|
|
63
|
+
For detailed guidance on report formats (selection, dynamic loading, runtime registration, and migration from columns→attributes), see:
|
|
64
|
+
- examples/doc_samples/report_formats.md
|
|
65
|
+
|
|
66
|
+
WARNING: files that start with "X" are in-progress placeholders that are not meant to be used..they will mature and
|
|
67
|
+
evolve.
|
|
68
|
+
|
|
69
|
+
All feedback is welcome. Please engage via our [community](http://egeria-project.org/guides/community/),
|
|
70
|
+
team calls, or via github issues in this repo. If interested in contributing,
|
|
71
|
+
you can engage via the community or directly reach out to
|
|
72
|
+
[dan.wolfson\@pdr-associates.com](mailto:dan.wolfson@pdr-associates.com?subject=pyegeria).
|
|
73
|
+
|
|
74
|
+
This is a learning experience.
|
|
75
|
+
|
|
76
|
+
## Configuration
|
|
77
|
+
|
|
78
|
+
pyegeria uses a simple, predictable precedence for configuration:
|
|
79
|
+
|
|
80
|
+
1. Built-in defaults (Pydantic models in pyegeria.config)
|
|
81
|
+
2. Config file (JSON) if found
|
|
82
|
+
3. Environment variables (OS env and optional .env)
|
|
83
|
+
4. Explicit env file passed to get_app_config/load_app_config
|
|
84
|
+
|
|
85
|
+
Environment always overrides config file, which overrides defaults.
|
|
86
|
+
|
|
87
|
+
### Where to put your configuration
|
|
88
|
+
|
|
89
|
+
- Config file: A JSON file named config.json. The loader looks in this order:
|
|
90
|
+
- If PYEGERIA_CONFIG_DIRECTORY is set: $PYEGERIA_CONFIG_DIRECTORY/$PYEGERIA_CONFIG_FILE
|
|
91
|
+
- Else if PYEGERIA_ROOT_PATH is set: $PYEGERIA_ROOT_PATH/$PYEGERIA_CONFIG_FILE
|
|
92
|
+
- Else: ./config.json (the current working directory)
|
|
93
|
+
|
|
94
|
+
- .env file: Optional. If present in the current working directory (.env), variables from it will be loaded. You can also pass a specific env file path to get_app_config(env_file=...) or load_app_config(env_file=...). For sample variables, see config/env in this repo.
|
|
95
|
+
|
|
96
|
+
### Common environment variables
|
|
97
|
+
|
|
98
|
+
- PYEGERIA_CONFIG_DIRECTORY: directory containing your config.json
|
|
99
|
+
- PYEGERIA_ROOT_PATH: root folder used to resolve config.json when CONFIG_DIRECTORY is not set
|
|
100
|
+
- PYEGERIA_CONFIG_FILE: filename of the configuration JSON (default: config.json)
|
|
101
|
+
- PYEGERIA_CONSOLE_WIDTH: integer console width (e.g., 200 or 280)
|
|
102
|
+
- EGERIA_PLATFORM_URL, EGERIA_VIEW_SERVER_URL, EGERIA_ENGINE_HOST_URL: URLs for your Egeria servers
|
|
103
|
+
- EGERIA_USER, EGERIA_USER_PASSWORD: credentials used by some clients
|
|
104
|
+
- Logging related: PYEGERIA_ENABLE_LOGGING, PYEGERIA_LOG_DIRECTORY, PYEGERIA_CONSOLE_LOG_LVL, PYEGERIA_FILE_LOG_LVL, etc.
|
|
105
|
+
|
|
106
|
+
See config/env for more variables and defaults.
|
|
107
|
+
|
|
108
|
+
### Example .env
|
|
109
|
+
|
|
110
|
+
# PYEGERIA_CONFIG_DIRECTORY=/path/to/configs
|
|
111
|
+
# PYEGERIA_ROOT_PATH=/path/to/project
|
|
112
|
+
# PYEGERIA_CONFIG_FILE=config.json
|
|
113
|
+
# EGERIA_PLATFORM_URL=https://localhost:9443
|
|
114
|
+
# EGERIA_VIEW_SERVER=qs-view-server
|
|
115
|
+
# EGERIA_VIEW_SERVER_URL=https://localhost:9443
|
|
116
|
+
# EGERIA_USER=myuser
|
|
117
|
+
# EGERIA_USER_PASSWORD=mypassword
|
|
118
|
+
# PYEGERIA_CONSOLE_WIDTH=280
|
|
119
|
+
|
|
120
|
+
Lines starting with # are comments. Quotes are optional; python-dotenv/pydantic-settings handle both.
|
|
121
|
+
|
|
122
|
+
### Example config.json (minimal)
|
|
123
|
+
|
|
124
|
+
{
|
|
125
|
+
"Environment": {
|
|
126
|
+
"Pyegeria Root": ".",
|
|
127
|
+
"Egeria Platform URL": "https://localhost:9443"
|
|
128
|
+
},
|
|
129
|
+
"User Profile": {
|
|
130
|
+
"Egeria Home Collection": "MyHome"
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
### Programmatic usage
|
|
135
|
+
|
|
136
|
+
from pyegeria import get_app_config
|
|
137
|
+
cfg = get_app_config() # uses OS env and ./.env
|
|
138
|
+
# or with explicit env file
|
|
139
|
+
cfg = get_app_config(env_file="/path/to/dev.env")
|
|
140
|
+
|
|
141
|
+
# Access values via Pydantic models
|
|
142
|
+
print(cfg.Environment.egeria_platform_url)
|
|
143
|
+
print(cfg.Logging.enable_logging)
|
|
144
|
+
|
|
145
|
+
### CLI quick checks
|
|
146
|
+
|
|
147
|
+
- Validate your env file:
|
|
148
|
+
python scripts/validate_env.py --env config/env
|
|
149
|
+
python scripts/validate_env.py # auto-detects ./config/env or ./.env
|
|
150
|
+
|
|
151
|
+
### Testing
|
|
152
|
+
|
|
153
|
+
By default, running pytest executes unit tests that use monkeypatching/fakes and do not contact a live Egeria.
|
|
154
|
+
|
|
155
|
+
- Run unit tests (recommended default):
|
|
156
|
+
poetry install
|
|
157
|
+
poetry run pytest -v
|
|
158
|
+
|
|
159
|
+
You can also run tests live against a local Egeria instance. Enable live mode with either a CLI flag or an environment variable. In live mode, tests marked as `unit` are skipped and live tests run using a real Client2 connection.
|
|
160
|
+
|
|
161
|
+
- Enable live mode via CLI:
|
|
162
|
+
poetry run pytest -q --live-egeria
|
|
163
|
+
|
|
164
|
+
- Or enable via environment variable:
|
|
165
|
+
PYEG_LIVE_EGERIA=1 poetry run pytest -q
|
|
166
|
+
|
|
167
|
+
Default live connection parameters (can be overridden via env):
|
|
168
|
+
- server_name = "qs-view-server" (override with PYEG_SERVER_NAME)
|
|
169
|
+
- platform_url = "https://localhost:9443" (override with PYEG_PLATFORM_URL)
|
|
170
|
+
- user_id = "peterprofile" (override with PYEG_USER_ID)
|
|
171
|
+
- user_pwd = "secret" (override with PYEG_USER_PWD)
|
|
172
|
+
|
|
173
|
+
Notes:
|
|
174
|
+
- SSL verification is controlled by pyegeria._globals.enable_ssl_check, which defaults to False in this repo to support localhost/self-signed certs.
|
|
175
|
+
- See tests/conftest.py for the live test fixtures and switches.
|
|
176
|
+
|
|
177
|
+
### Troubleshooting
|
|
178
|
+
|
|
179
|
+
### Troubleshooting
|
|
180
|
+
|
|
181
|
+
- If your env doesn’t seem to apply, confirm which config.json is used (the loader checks PYEGERIA_CONFIG_DIRECTORY first, then PYEGERIA_ROOT_PATH, then ./config.json).
|
|
182
|
+
- .env files are optional. Missing .env is not an error.
|
|
183
|
+
- You can always override values with OS environment variables (they take precedence over config.json).
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
----
|
|
188
|
+
License: [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/),
|
|
189
|
+
Copyright Contributors to the ODPi Egeria project.
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
<!-- SPDX-License-Identifier: CC-BY-4.0 -->
|
|
2
|
+
<!-- Copyright Contributors to the ODPi Egeria project. -->
|
|
3
|
+
|
|
4
|
+

|
|
5
|
+
|
|
6
|
+
[](LICENSE)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
# pyegeria: a python client for Egeria
|
|
10
|
+
|
|
11
|
+
This is a package for easily using the Egeria
|
|
12
|
+
open metadata environment from python. Details about the
|
|
13
|
+
open source Egeria project can be found at [Egeria Project](https://egeria-project.org).
|
|
14
|
+
|
|
15
|
+
This package is in active development. There is initial
|
|
16
|
+
support for many of Egeria's services including configuration and operation. This client depends on
|
|
17
|
+
This release supports Egeria 5.1 - although most of the functions may work on earlier versions of Egeria as well.
|
|
18
|
+
|
|
19
|
+
The code is organized to mimic the existing Egeria Java Client structure.
|
|
20
|
+
|
|
21
|
+
The commands folder holds the Egeria Command Line Interface and corresponding commands
|
|
22
|
+
to visualize and use Egeria. The commands also serve as useful examples.
|
|
23
|
+
|
|
24
|
+
An examples folder holds some useful examples showing different facets of using pyegeria.
|
|
25
|
+
|
|
26
|
+
For detailed guidance on report formats (selection, dynamic loading, runtime registration, and migration from columns→attributes), see:
|
|
27
|
+
- examples/doc_samples/report_formats.md
|
|
28
|
+
|
|
29
|
+
WARNING: files that start with "X" are in-progress placeholders that are not meant to be used..they will mature and
|
|
30
|
+
evolve.
|
|
31
|
+
|
|
32
|
+
All feedback is welcome. Please engage via our [community](http://egeria-project.org/guides/community/),
|
|
33
|
+
team calls, or via github issues in this repo. If interested in contributing,
|
|
34
|
+
you can engage via the community or directly reach out to
|
|
35
|
+
[dan.wolfson\@pdr-associates.com](mailto:dan.wolfson@pdr-associates.com?subject=pyegeria).
|
|
36
|
+
|
|
37
|
+
This is a learning experience.
|
|
38
|
+
|
|
39
|
+
## Configuration
|
|
40
|
+
|
|
41
|
+
pyegeria uses a simple, predictable precedence for configuration:
|
|
42
|
+
|
|
43
|
+
1. Built-in defaults (Pydantic models in pyegeria.config)
|
|
44
|
+
2. Config file (JSON) if found
|
|
45
|
+
3. Environment variables (OS env and optional .env)
|
|
46
|
+
4. Explicit env file passed to get_app_config/load_app_config
|
|
47
|
+
|
|
48
|
+
Environment always overrides config file, which overrides defaults.
|
|
49
|
+
|
|
50
|
+
### Where to put your configuration
|
|
51
|
+
|
|
52
|
+
- Config file: A JSON file named config.json. The loader looks in this order:
|
|
53
|
+
- If PYEGERIA_CONFIG_DIRECTORY is set: $PYEGERIA_CONFIG_DIRECTORY/$PYEGERIA_CONFIG_FILE
|
|
54
|
+
- Else if PYEGERIA_ROOT_PATH is set: $PYEGERIA_ROOT_PATH/$PYEGERIA_CONFIG_FILE
|
|
55
|
+
- Else: ./config.json (the current working directory)
|
|
56
|
+
|
|
57
|
+
- .env file: Optional. If present in the current working directory (.env), variables from it will be loaded. You can also pass a specific env file path to get_app_config(env_file=...) or load_app_config(env_file=...). For sample variables, see config/env in this repo.
|
|
58
|
+
|
|
59
|
+
### Common environment variables
|
|
60
|
+
|
|
61
|
+
- PYEGERIA_CONFIG_DIRECTORY: directory containing your config.json
|
|
62
|
+
- PYEGERIA_ROOT_PATH: root folder used to resolve config.json when CONFIG_DIRECTORY is not set
|
|
63
|
+
- PYEGERIA_CONFIG_FILE: filename of the configuration JSON (default: config.json)
|
|
64
|
+
- PYEGERIA_CONSOLE_WIDTH: integer console width (e.g., 200 or 280)
|
|
65
|
+
- EGERIA_PLATFORM_URL, EGERIA_VIEW_SERVER_URL, EGERIA_ENGINE_HOST_URL: URLs for your Egeria servers
|
|
66
|
+
- EGERIA_USER, EGERIA_USER_PASSWORD: credentials used by some clients
|
|
67
|
+
- Logging related: PYEGERIA_ENABLE_LOGGING, PYEGERIA_LOG_DIRECTORY, PYEGERIA_CONSOLE_LOG_LVL, PYEGERIA_FILE_LOG_LVL, etc.
|
|
68
|
+
|
|
69
|
+
See config/env for more variables and defaults.
|
|
70
|
+
|
|
71
|
+
### Example .env
|
|
72
|
+
|
|
73
|
+
# PYEGERIA_CONFIG_DIRECTORY=/path/to/configs
|
|
74
|
+
# PYEGERIA_ROOT_PATH=/path/to/project
|
|
75
|
+
# PYEGERIA_CONFIG_FILE=config.json
|
|
76
|
+
# EGERIA_PLATFORM_URL=https://localhost:9443
|
|
77
|
+
# EGERIA_VIEW_SERVER=qs-view-server
|
|
78
|
+
# EGERIA_VIEW_SERVER_URL=https://localhost:9443
|
|
79
|
+
# EGERIA_USER=myuser
|
|
80
|
+
# EGERIA_USER_PASSWORD=mypassword
|
|
81
|
+
# PYEGERIA_CONSOLE_WIDTH=280
|
|
82
|
+
|
|
83
|
+
Lines starting with # are comments. Quotes are optional; python-dotenv/pydantic-settings handle both.
|
|
84
|
+
|
|
85
|
+
### Example config.json (minimal)
|
|
86
|
+
|
|
87
|
+
{
|
|
88
|
+
"Environment": {
|
|
89
|
+
"Pyegeria Root": ".",
|
|
90
|
+
"Egeria Platform URL": "https://localhost:9443"
|
|
91
|
+
},
|
|
92
|
+
"User Profile": {
|
|
93
|
+
"Egeria Home Collection": "MyHome"
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
### Programmatic usage
|
|
98
|
+
|
|
99
|
+
from pyegeria import get_app_config
|
|
100
|
+
cfg = get_app_config() # uses OS env and ./.env
|
|
101
|
+
# or with explicit env file
|
|
102
|
+
cfg = get_app_config(env_file="/path/to/dev.env")
|
|
103
|
+
|
|
104
|
+
# Access values via Pydantic models
|
|
105
|
+
print(cfg.Environment.egeria_platform_url)
|
|
106
|
+
print(cfg.Logging.enable_logging)
|
|
107
|
+
|
|
108
|
+
### CLI quick checks
|
|
109
|
+
|
|
110
|
+
- Validate your env file:
|
|
111
|
+
python scripts/validate_env.py --env config/env
|
|
112
|
+
python scripts/validate_env.py # auto-detects ./config/env or ./.env
|
|
113
|
+
|
|
114
|
+
### Testing
|
|
115
|
+
|
|
116
|
+
By default, running pytest executes unit tests that use monkeypatching/fakes and do not contact a live Egeria.
|
|
117
|
+
|
|
118
|
+
- Run unit tests (recommended default):
|
|
119
|
+
poetry install
|
|
120
|
+
poetry run pytest -v
|
|
121
|
+
|
|
122
|
+
You can also run tests live against a local Egeria instance. Enable live mode with either a CLI flag or an environment variable. In live mode, tests marked as `unit` are skipped and live tests run using a real Client2 connection.
|
|
123
|
+
|
|
124
|
+
- Enable live mode via CLI:
|
|
125
|
+
poetry run pytest -q --live-egeria
|
|
126
|
+
|
|
127
|
+
- Or enable via environment variable:
|
|
128
|
+
PYEG_LIVE_EGERIA=1 poetry run pytest -q
|
|
129
|
+
|
|
130
|
+
Default live connection parameters (can be overridden via env):
|
|
131
|
+
- server_name = "qs-view-server" (override with PYEG_SERVER_NAME)
|
|
132
|
+
- platform_url = "https://localhost:9443" (override with PYEG_PLATFORM_URL)
|
|
133
|
+
- user_id = "peterprofile" (override with PYEG_USER_ID)
|
|
134
|
+
- user_pwd = "secret" (override with PYEG_USER_PWD)
|
|
135
|
+
|
|
136
|
+
Notes:
|
|
137
|
+
- SSL verification is controlled by pyegeria._globals.enable_ssl_check, which defaults to False in this repo to support localhost/self-signed certs.
|
|
138
|
+
- See tests/conftest.py for the live test fixtures and switches.
|
|
139
|
+
|
|
140
|
+
### Troubleshooting
|
|
141
|
+
|
|
142
|
+
### Troubleshooting
|
|
143
|
+
|
|
144
|
+
- If your env doesn’t seem to apply, confirm which config.json is used (the loader checks PYEGERIA_CONFIG_DIRECTORY first, then PYEGERIA_ROOT_PATH, then ./config.json).
|
|
145
|
+
- .env files are optional. Missing .env is not an error.
|
|
146
|
+
- You can always override values with OS environment variables (they take precedence over config.json).
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
----
|
|
151
|
+
License: [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/),
|
|
152
|
+
Copyright Contributors to the ODPi Egeria project.
|
|
@@ -4,25 +4,27 @@ Copyright Contributors to the ODPi Egeria project.
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
pyegeria
|
|
7
|
+
pyegeria md_commands available also from python.
|
|
8
8
|
"""
|
|
9
|
-
|
|
9
|
+
from .cat.dr_egeria_md import process_markdown_file
|
|
10
|
+
from .cat.list_deployed_catalogs import list_deployed_catalogs
|
|
11
|
+
from .cat.list_deployed_database_schemas import list_deployed_database_schemas
|
|
12
|
+
from .cat.list_deployed_databases import list_deployed_databases
|
|
13
|
+
from .cat.list_glossaries import display_glossaries
|
|
14
|
+
from .cat.list_terms import display_glossary_terms
|
|
15
|
+
from .ops.list_catalog_targets import display_catalog_targets
|
|
16
|
+
from .ops.monitor_engine_activity_c import display_engine_activity_c
|
|
10
17
|
from .ops.monitor_gov_eng_status import display_gov_eng_status
|
|
11
18
|
from .ops.monitor_integ_daemon_status import display_integration_daemon_status
|
|
12
19
|
from .ops.table_integ_daemon_status import (
|
|
13
20
|
display_integration_daemon_status as table_integ_daemon_status,
|
|
14
21
|
)
|
|
15
|
-
from .ops.monitor_engine_activity_c import display_engine_activity_c
|
|
16
|
-
from .ops.list_catalog_targets import display_catalog_targets
|
|
17
|
-
|
|
18
|
-
from .cat.list_glossaries import display_glossaries
|
|
19
|
-
from .cat.list_terms import display_glossary_terms
|
|
20
|
-
from .cat.list_deployed_catalogs import list_deployed_catalogs
|
|
21
|
-
from .cat.list_deployed_database_schemas import list_deployed_database_schemas
|
|
22
|
-
from .cat.list_deployed_databases import list_deployed_databases
|
|
23
22
|
from .tech.list_elements_by_property_value import EGERIA_WIDTH
|
|
24
23
|
|
|
25
24
|
|
|
26
|
-
def list_integration_daemon_status(
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
def list_integration_daemon_status(
|
|
26
|
+
search_list: str, width: int = EGERIA_WIDTH, sort: bool = True
|
|
27
|
+
):
|
|
28
|
+
table_integ_daemon_status(
|
|
29
|
+
search_list=search_list, paging=True, width=width, sort=sort
|
|
30
|
+
)
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
"""
|
|
2
|
+
This is an ongoing experiment in parsing and playing with Freddie docs
|
|
3
|
+
"""
|
|
4
|
+
import json
|
|
5
|
+
import os
|
|
6
|
+
from rich import print
|
|
7
|
+
from rich.console import Console
|
|
8
|
+
|
|
9
|
+
from pyegeria.md_processing_utils import (commands,
|
|
10
|
+
process_provenance_command)
|
|
11
|
+
|
|
12
|
+
import click
|
|
13
|
+
from pyegeria import (extract_command, process_glossary_upsert_command, process_term_upsert_command,
|
|
14
|
+
process_category_upsert_command,
|
|
15
|
+
get_current_datetime_string, process_per_proj_upsert_command, EgeriaTech
|
|
16
|
+
)
|
|
17
|
+
import commands
|
|
18
|
+
from datetime import datetime
|
|
19
|
+
|
|
20
|
+
EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
|
|
21
|
+
EGERIA_KAFKA_ENDPOINT = os.environ.get("KAFKA_ENDPOINT", "localhost:9092")
|
|
22
|
+
EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
|
|
23
|
+
EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
|
|
24
|
+
EGERIA_VIEW_SERVER_URL = os.environ.get(
|
|
25
|
+
"EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
|
|
26
|
+
)
|
|
27
|
+
EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
|
|
28
|
+
EGERIA_INTEGRATION_DAEMON_URL = os.environ.get(
|
|
29
|
+
"EGERIA_INTEGRATION_DAEMON_URL", "https://localhost:9443"
|
|
30
|
+
)
|
|
31
|
+
EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
|
|
32
|
+
EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
|
|
33
|
+
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
34
|
+
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
35
|
+
EGERIA_WIDTH = os.environ.get("EGERIA_WIDTH", 220)
|
|
36
|
+
EGERIA_JUPYTER = os.environ.get("EGERIA_JUPYTER", False)
|
|
37
|
+
EGERIA_HOME_GLOSSARY_GUID = os.environ.get("EGERIA_HOME_GLOSSARY_GUID", None)
|
|
38
|
+
EGERIA_GLOSSARY_PATH = os.environ.get("EGERIA_GLOSSARY_PATH", None)
|
|
39
|
+
EGERIA_ROOT_PATH = os.environ.get("EGERIA_ROOT_PATH", "../../")
|
|
40
|
+
EGERIA_INBOX_PATH = os.environ.get("EGERIA_INBOX_PATH", "md_processing/dr_egeria_inbox")
|
|
41
|
+
EGERIA_OUTBOX_PATH = os.environ.get("EGERIA_OUTBOX_PATH", "md_processing/dr_egeria_outbox")
|
|
42
|
+
|
|
43
|
+
console = Console(width=int(EGERIA_WIDTH))
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
@click.command("process-markdown-file", help="Process a markdown file and return the output as a string.")
|
|
48
|
+
@click.option("--file-path", help="File path to markdown file",
|
|
49
|
+
default="glossary_test1.md")
|
|
50
|
+
@click.option("--directive", default="display-only", help="How to process the file")
|
|
51
|
+
@click.option("--server", default=EGERIA_VIEW_SERVER, help="Egeria view server to use.")
|
|
52
|
+
@click.option(
|
|
53
|
+
"--url", default=EGERIA_VIEW_SERVER_URL, help="URL of Egeria platform to connect to"
|
|
54
|
+
)
|
|
55
|
+
@click.option("--userid", default=EGERIA_USER, help="Egeria user")
|
|
56
|
+
@click.option("--user_pass", default=EGERIA_USER_PASSWORD, help="Egeria user password")
|
|
57
|
+
def process_markdown_file(
|
|
58
|
+
file_path: str,
|
|
59
|
+
directive: str,
|
|
60
|
+
server: str,
|
|
61
|
+
url: str,
|
|
62
|
+
userid: str,
|
|
63
|
+
user_pass: str,
|
|
64
|
+
):
|
|
65
|
+
|
|
66
|
+
client = EgeriaTech(server, url, user_id=userid)
|
|
67
|
+
token = client.create_egeria_bearer_token(userid, user_pass)
|
|
68
|
+
|
|
69
|
+
updated = False
|
|
70
|
+
full_file_path = os.path.join(EGERIA_ROOT_PATH, EGERIA_INBOX_PATH, file_path)
|
|
71
|
+
print(f"Processing Markdown File: {full_file_path}")
|
|
72
|
+
try:
|
|
73
|
+
with open(full_file_path, 'r') as f:
|
|
74
|
+
lines = f.readlines()
|
|
75
|
+
except FileNotFoundError:
|
|
76
|
+
print(f"Error: File not found at path: {full_file_path}")
|
|
77
|
+
return {} # Return empty dict if file not found
|
|
78
|
+
|
|
79
|
+
final_output =""
|
|
80
|
+
prov_output = (f"\n* Results from processing file {file_path} on "
|
|
81
|
+
f"{datetime.now().strftime("%Y-%m-%d %H:%M")}\n")
|
|
82
|
+
h1_blocks = []
|
|
83
|
+
current_block = ""
|
|
84
|
+
in_h1_block = False
|
|
85
|
+
element_dictionary = {}
|
|
86
|
+
|
|
87
|
+
for line in lines:
|
|
88
|
+
line = line.strip() # Remove leading/trailing whitespace
|
|
89
|
+
|
|
90
|
+
if line.startswith("# ") and not in_h1_block: # Start of a new H1 block
|
|
91
|
+
if current_block:
|
|
92
|
+
h1_blocks.append(current_block)
|
|
93
|
+
current_block = line
|
|
94
|
+
in_h1_block = True
|
|
95
|
+
elif line.startswith("---") and in_h1_block: # End of the current H1 block
|
|
96
|
+
h1_blocks.append(current_block)
|
|
97
|
+
current_block = ""
|
|
98
|
+
in_h1_block = False
|
|
99
|
+
elif in_h1_block: # Add line to the current H1 block
|
|
100
|
+
current_block += "\n" + line
|
|
101
|
+
else:
|
|
102
|
+
# Add non-H1 blocks directly to the final output
|
|
103
|
+
final_output += line
|
|
104
|
+
|
|
105
|
+
if current_block: # Add the last H1 block
|
|
106
|
+
h1_blocks.append(current_block)
|
|
107
|
+
prov_found = False
|
|
108
|
+
# Process each identified H1 block
|
|
109
|
+
for block in h1_blocks:
|
|
110
|
+
potential_command = extract_command(block) # Extract potential object_action
|
|
111
|
+
|
|
112
|
+
if potential_command in commands:
|
|
113
|
+
# Process the block based on the object_action
|
|
114
|
+
if potential_command == "Provenance":
|
|
115
|
+
prov_found = True
|
|
116
|
+
result = process_provenance_command(file_path, block)
|
|
117
|
+
elif potential_command in ["Create Glossary", "Update Glossary"]:
|
|
118
|
+
result = process_glossary_upsert_command(client, block, directive)
|
|
119
|
+
elif potential_command in ["Create Category", "Update Category"]:
|
|
120
|
+
result = process_category_upsert_command(client, block, directive)
|
|
121
|
+
elif potential_command in ["Create Term", "Update Term"]:
|
|
122
|
+
result = process_term_upsert_command(client, block, directive)
|
|
123
|
+
elif potential_command in ["Create Personal Project", "Update Personal Project"]:
|
|
124
|
+
result = process_per_proj_upsert_command(client, block, directive)
|
|
125
|
+
else:
|
|
126
|
+
# If object_action is not recognized, copy the block as-is
|
|
127
|
+
result = None
|
|
128
|
+
|
|
129
|
+
if result:
|
|
130
|
+
if directive == "process":
|
|
131
|
+
updated = True
|
|
132
|
+
final_output += f"\n---\n{result}\n"
|
|
133
|
+
print(json.dumps(element_dictionary, indent=4))
|
|
134
|
+
elif directive == "process":
|
|
135
|
+
# Handle case with errors (skip this block but notify the user)
|
|
136
|
+
print(f"\n==>\tErrors found while processing command: \'{potential_command}\'\n"
|
|
137
|
+
f"\tPlease correct and try again. \n")
|
|
138
|
+
final_output += f"\n---\n{block}\n"
|
|
139
|
+
else:
|
|
140
|
+
# If no object_action is detected, add the block to the final output as-is
|
|
141
|
+
final_output += f"\n---\n{block}\n"
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
# Write the final_output to a new file if updated
|
|
145
|
+
try:
|
|
146
|
+
if updated:
|
|
147
|
+
path, filename = os.path.split(file_path) # Get both parts
|
|
148
|
+
new_filename = f"processed-{get_current_datetime_string()}-{filename}" # Create the new filename
|
|
149
|
+
new_file_path = os.path.join(EGERIA_ROOT_PATH, EGERIA_OUTBOX_PATH, new_filename) # Construct the new path
|
|
150
|
+
os.makedirs(os.path.dirname(new_file_path), exist_ok=True)
|
|
151
|
+
|
|
152
|
+
with open(new_file_path, 'w') as f2:
|
|
153
|
+
f2.write(final_output)
|
|
154
|
+
if not prov_found:
|
|
155
|
+
prov_output += f"\n# Provenance:\n{prov_output}\n"
|
|
156
|
+
f2.write(prov_output)
|
|
157
|
+
click.echo(f"\n==> Notebook written to {new_file_path}")
|
|
158
|
+
else:
|
|
159
|
+
click.echo("\nNo updates detected. New File not created.")
|
|
160
|
+
|
|
161
|
+
except (Exception):
|
|
162
|
+
console.print_exception(show_locals=True)
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
if __name__ == "__main__":
|
|
166
|
+
process_markdown_file()
|