pyegeria 5.4.0.28__py3-none-any.whl → 5.5.3.3__py3-none-any.whl
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.
Potentially problematic release.
This version of pyegeria might be problematic. Click here for more details.
- commands/__init__.py +24 -0
- commands/cat/Dr-Egeria_md-orig.py +2 -2
- commands/cat/collection_actions.py +197 -0
- commands/cat/dr_egeria_command_help.py +137 -38
- commands/cat/dr_egeria_jupyter.py +7 -7
- commands/cat/dr_egeria_md.py +10 -267
- commands/cat/exp_list_glossaries.py +11 -14
- commands/cat/get_asset_graph.py +37 -267
- commands/cat/{get_collection.py → get_collection_tree.py} +10 -18
- commands/cat/get_project_dependencies.py +14 -14
- commands/cat/get_project_structure.py +15 -14
- commands/cat/get_tech_type_elements.py +16 -116
- commands/cat/glossary_actions.py +145 -298
- commands/cat/list_assets.py +3 -11
- commands/cat/list_cert_types.py +17 -63
- commands/cat/list_collections.py +17 -139
- commands/cat/list_deployed_catalogs.py +15 -27
- commands/cat/list_deployed_database_schemas.py +27 -43
- commands/cat/list_deployed_databases.py +16 -31
- commands/cat/list_deployed_servers.py +35 -54
- commands/cat/list_glossaries.py +18 -17
- commands/cat/list_projects.py +10 -12
- commands/cat/list_tech_type_elements.py +21 -37
- commands/cat/list_tech_types.py +13 -25
- commands/cat/list_terms.py +38 -79
- commands/cat/list_todos.py +4 -11
- commands/cat/list_user_ids.py +3 -10
- commands/cat/my_reports.py +559 -0
- commands/cat/run_report.py +394 -0
- commands/cat/{list_format_set.py → run_report_orig.py} +136 -44
- commands/cli/egeria.py +182 -219
- commands/cli/egeria_cat.py +32 -59
- commands/cli/egeria_my.py +13 -0
- commands/cli/egeria_ops.py +69 -74
- commands/cli/egeria_tech.py +17 -93
- commands/{cat → deprecated}/list_data_designer.py +2 -4
- commands/{cat → deprecated}/list_data_structures_full.py +3 -6
- commands/deprecated/old_get_asset_graph.py +315 -0
- commands/my/__init__.py +0 -2
- commands/my/list_my_profile.py +27 -34
- commands/my/list_my_roles.py +1 -7
- commands/my/monitor_my_todos.py +1 -7
- commands/my/monitor_open_todos.py +6 -7
- commands/my/todo_actions.py +4 -5
- commands/ops/__init__.py +0 -2
- commands/ops/gov_server_actions.py +17 -21
- commands/ops/list_archives.py +17 -38
- commands/ops/list_catalog_targets.py +33 -40
- commands/ops/load_archive.py +14 -11
- commands/ops/{monitor_engine_activity_c.py → monitor_active_engine_activity.py} +51 -82
- commands/ops/{monitor_integ_daemon_status.py → monitor_daemon_status.py} +35 -55
- commands/ops/monitor_engine_activity.py +79 -77
- commands/ops/{monitor_gov_eng_status.py → monitor_engine_status.py} +10 -7
- commands/ops/monitor_platform_status.py +38 -50
- commands/ops/monitor_server_startup.py +6 -11
- commands/ops/monitor_server_status.py +7 -11
- commands/ops/orig_monitor_server_list.py +8 -8
- commands/ops/orig_monitor_server_status.py +1 -5
- commands/ops/refresh_integration_daemon.py +5 -5
- commands/ops/restart_integration_daemon.py +5 -5
- commands/ops/table_integ_daemon_status.py +6 -6
- commands/ops/x_engine_actions.py +7 -7
- commands/tech/__init__.py +0 -2
- commands/tech/{generic_actions.py → element_actions.py} +6 -11
- commands/tech/get_element_info.py +20 -29
- commands/tech/get_guid_info.py +23 -42
- commands/tech/get_tech_details.py +20 -35
- commands/tech/get_tech_type_template.py +28 -39
- commands/tech/list_all_om_type_elements.py +24 -30
- commands/tech/list_all_om_type_elements_x.py +22 -28
- commands/tech/list_all_related_elements.py +19 -28
- commands/tech/list_anchored_elements.py +22 -30
- commands/tech/list_asset_types.py +19 -24
- commands/tech/list_elements_by_classification_by_property_value.py +26 -32
- commands/tech/list_elements_by_property_value.py +19 -25
- commands/tech/list_elements_by_property_value_x.py +20 -28
- commands/tech/list_elements_for_classification.py +28 -41
- commands/tech/list_gov_action_processes.py +16 -27
- commands/tech/list_information_supply_chains.py +22 -30
- commands/tech/list_registered_services.py +14 -26
- commands/tech/list_related_elements_with_prop_value.py +15 -25
- commands/tech/list_related_specification.py +1 -4
- commands/tech/list_relationship_types.py +15 -25
- commands/tech/list_relationships.py +20 -36
- commands/tech/list_solution_blueprints.py +28 -33
- commands/tech/list_solution_components.py +23 -29
- commands/tech/list_solution_roles.py +21 -32
- commands/tech/list_tech_templates.py +51 -54
- commands/tech/list_valid_metadata_values.py +5 -9
- commands/tech/table_tech_templates.py +2 -6
- commands/tech/x_list_related_elements.py +1 -4
- examples/GeoSpatial Products Example.py +524 -0
- examples/Jupyter Notebooks/P-egeria-server-config.ipynb +2137 -0
- examples/Jupyter Notebooks/README.md +2 -0
- examples/Jupyter Notebooks/common/P-environment-check.ipynb +115 -0
- examples/Jupyter Notebooks/common/__init__.py +14 -0
- examples/Jupyter Notebooks/common/common-functions.ipynb +4694 -0
- examples/Jupyter Notebooks/common/environment-check.ipynb +52 -0
- examples/Jupyter Notebooks/common/globals.ipynb +184 -0
- examples/Jupyter Notebooks/common/globals.py +154 -0
- examples/Jupyter Notebooks/common/orig_globals.py +152 -0
- examples/format_sets/all_format_sets.json +910 -0
- examples/format_sets/custom_format_sets.json +268 -0
- examples/format_sets/subset_format_sets.json +187 -0
- examples/format_sets_save_load_example.py +291 -0
- examples/jacquard_data_sets.py +129 -0
- examples/output_formats_example.py +193 -0
- examples/test_jacquard_data_sets.py +54 -0
- examples/test_jacquard_data_sets_scenarios.py +94 -0
- md_processing/__init__.py +33 -24
- md_processing/command_dispatcher.py +33 -0
- md_processing/command_mapping.py +221 -0
- md_processing/data/commands/commands_data_designer.json +537 -0
- md_processing/data/commands/commands_external_reference.json +733 -0
- md_processing/data/commands/commands_feedback.json +155 -0
- md_processing/data/commands/commands_general.json +204 -0
- md_processing/data/commands/commands_glossary.json +218 -0
- md_processing/data/commands/commands_governance.json +3678 -0
- md_processing/data/commands/commands_product_manager.json +865 -0
- md_processing/data/commands/commands_project.json +642 -0
- md_processing/data/commands/commands_solution_architect.json +366 -0
- md_processing/data/commands.json +6489 -30060
- md_processing/data/{commands-working.json → commands_working.json} +9304 -13513
- md_processing/data/gened_report_specs.py +6584 -0
- md_processing/data/generated_format_sets.json +6533 -0
- md_processing/data/generated_format_sets_old.json +4137 -0
- md_processing/data/generated_format_sets_old.py +45 -0
- md_processing/dr_egeria.py +182 -0
- md_processing/md_commands/data_designer_commands.py +195 -583
- md_processing/md_commands/ext_ref_commands.py +530 -0
- md_processing/md_commands/feedback_commands.py +726 -0
- md_processing/md_commands/glossary_commands.py +106 -490
- md_processing/md_commands/governance_officer_commands.py +129 -18
- md_processing/md_commands/product_manager_commands.py +362 -115
- md_processing/md_commands/project_commands.py +351 -134
- md_processing/md_commands/solution_architect_commands.py +276 -232
- md_processing/md_commands/view_commands.py +295 -0
- md_processing/md_processing_utils/common_md_proc_utils.py +258 -166
- md_processing/md_processing_utils/common_md_utils.py +138 -43
- md_processing/md_processing_utils/determine_width.py +103 -0
- md_processing/md_processing_utils/extraction_utils.py +100 -39
- md_processing/md_processing_utils/gen_report_specs.py +643 -0
- md_processing/md_processing_utils/generate_dr_help.py +61 -33
- md_processing/md_processing_utils/generate_md_cmd_templates.py +20 -19
- md_processing/md_processing_utils/generate_md_templates.py +3 -12
- md_processing/md_processing_utils/md_processing_constants.py +1053 -72
- pyegeria/__init__.py +203 -158
- pyegeria/core/__init__.py +40 -0
- pyegeria/core/_base_platform_client.py +574 -0
- pyegeria/core/_base_server_client.py +573 -0
- pyegeria/{_exceptions_new.py → core/_exceptions.py} +62 -30
- pyegeria/{_globals.py → core/_globals.py} +14 -3
- pyegeria/core/_server_client.py +6073 -0
- pyegeria/{_validators.py → core/_validators.py} +7 -8
- pyegeria/core/config.py +654 -0
- pyegeria/{create_tech_guid_lists.py → core/create_tech_guid_lists.py} +0 -1
- pyegeria/core/load_config.py +37 -0
- pyegeria/{logging_configuration.py → core/logging_configuration.py} +1 -1
- pyegeria/core/mcp_adapter.py +144 -0
- pyegeria/core/mcp_server.py +212 -0
- pyegeria/core/utils.py +405 -0
- pyegeria/{_client.py → deprecated/_client.py} +24 -25
- pyegeria/{_deprecated_gov_engine.py → deprecated/_deprecated_gov_engine.py} +16 -16
- pyegeria/{classification_manager_omvs.py → deprecated/classification_manager_omvs.py} +1987 -1877
- pyegeria/{output_formatter.py → deprecated/output_formatter_with_machine_keys.py} +298 -45
- pyegeria/{runtime_manager_omvs.py → deprecated/runtime_manager_omvs.py} +155 -171
- pyegeria/{valid_metadata_omvs.py → deprecated/valid_metadata_omvs.py} +93 -93
- pyegeria/{x_action_author_omvs.py → deprecated/x_action_author_omvs.py} +2 -3
- pyegeria/egeria_cat_client.py +26 -70
- pyegeria/egeria_client.py +130 -93
- pyegeria/egeria_config_client.py +40 -46
- pyegeria/egeria_tech_client.py +141 -54
- pyegeria/models/__init__.py +150 -0
- pyegeria/{models.py → models/models.py} +156 -20
- pyegeria/omvs/__init__.py +84 -0
- pyegeria/omvs/action_author.py +342 -0
- pyegeria/omvs/actor_manager.py +5980 -0
- pyegeria/omvs/asset_catalog.py +842 -0
- pyegeria/omvs/asset_maker.py +2736 -0
- pyegeria/omvs/automated_curation.py +4403 -0
- pyegeria/omvs/classification_manager.py +11213 -0
- pyegeria/{collection_manager.py → omvs/collection_manager.py} +1334 -1160
- pyegeria/omvs/community_matters_omvs.py +468 -0
- pyegeria/{core_omag_server_config.py → omvs/core_omag_server_config.py} +157 -157
- pyegeria/{data_designer.py → omvs/data_designer.py} +1115 -660
- pyegeria/omvs/data_discovery.py +869 -0
- pyegeria/omvs/data_engineer.py +372 -0
- pyegeria/omvs/digital_business.py +1133 -0
- pyegeria/omvs/external_links.py +1752 -0
- pyegeria/omvs/feedback_manager.py +834 -0
- pyegeria/{full_omag_server_config.py → omvs/full_omag_server_config.py} +73 -69
- pyegeria/{glossary_manager.py → omvs/glossary_manager.py} +857 -519
- pyegeria/{governance_officer.py → omvs/governance_officer.py} +964 -468
- pyegeria/omvs/lineage_linker.py +314 -0
- pyegeria/omvs/location_arena.py +1525 -0
- pyegeria/omvs/metadata_expert.py +668 -0
- pyegeria/omvs/metadata_explorer_omvs.py +2943 -0
- pyegeria/omvs/my_profile.py +1042 -0
- pyegeria/omvs/notification_manager.py +358 -0
- pyegeria/omvs/people_organizer.py +394 -0
- pyegeria/{platform_services.py → omvs/platform_services.py} +113 -193
- pyegeria/omvs/product_manager.py +1825 -0
- pyegeria/omvs/project_manager.py +1907 -0
- pyegeria/omvs/reference_data.py +1140 -0
- pyegeria/omvs/registered_info.py +334 -0
- pyegeria/omvs/runtime_manager.py +2817 -0
- pyegeria/omvs/schema_maker.py +446 -0
- pyegeria/{server_operations.py → omvs/server_operations.py} +27 -26
- pyegeria/{solution_architect_omvs.py → omvs/solution_architect.py} +1886 -1505
- pyegeria/omvs/specification_properties.py +37 -0
- pyegeria/omvs/subject_area.py +1042 -0
- pyegeria/omvs/template_manager_omvs.py +236 -0
- pyegeria/omvs/time_keeper.py +1761 -0
- pyegeria/omvs/valid_metadata.py +3221 -0
- pyegeria/omvs/valid_metadata_lists.py +37 -0
- pyegeria/omvs/valid_type_lists.py +37 -0
- pyegeria/view/__init__.py +28 -0
- pyegeria/{_output_format_models.py → view/_output_format_models.py} +160 -24
- pyegeria/view/_output_formats.py +14 -0
- pyegeria/view/base_report_formats.py +2719 -0
- pyegeria/view/dr_egeria_reports.py +56 -0
- pyegeria/view/format_set_executor.py +397 -0
- pyegeria/{md_processing_utils.py → view/md_processing_utils.py} +5 -5
- pyegeria/{mermaid_utilities.py → view/mermaid_utilities.py} +2 -154
- pyegeria/view/output_formatter.py +1297 -0
- pyegeria-5.5.3.3.dist-info/METADATA +218 -0
- pyegeria-5.5.3.3.dist-info/RECORD +241 -0
- {pyegeria-5.4.0.28.dist-info → pyegeria-5.5.3.3.dist-info}/WHEEL +2 -1
- pyegeria-5.5.3.3.dist-info/entry_points.txt +103 -0
- pyegeria-5.5.3.3.dist-info/top_level.txt +4 -0
- commands/cat/.DS_Store +0 -0
- commands/cat/.env +0 -8
- commands/cat/README.md +0 -16
- commands/cat/debug_log +0 -1126
- commands/cat/debug_log.2025-08-18_11-34-38_088636.zip +0 -0
- commands/cat/list_categories.py +0 -192
- commands/cat/logs/pyegeria.log +0 -4
- commands/cli/debug_log +0 -0
- commands/cli/debug_log.log +0 -0
- commands/cli/txt_custom_v2.tcss +0 -19
- commands/my/README.md +0 -17
- commands/ops/README.md +0 -24
- commands/ops/logs/pyegeria.log +0 -0
- commands/ops/monitor_asset_events.py +0 -108
- commands/tech/README.md +0 -24
- md_processing/.DS_Store +0 -0
- md_processing/dr-egeria-outbox/Collections-2025-08-12-13-30-37.md +0 -163
- md_processing/dr-egeria-outbox/Collections-2025-08-12-13-35-58.md +0 -474
- md_processing/dr_egeria_inbox/Derive-Dr-Gov-Defs.md +0 -8
- md_processing/dr_egeria_inbox/Dr.Egeria Templates.md +0 -873
- md_processing/dr_egeria_inbox/arch_test.md +0 -57
- md_processing/dr_egeria_inbox/archive/dr_egeria_intro.md +0 -254
- md_processing/dr_egeria_inbox/archive/dr_egeria_intro_more_terms.md +0 -696
- md_processing/dr_egeria_inbox/archive/dr_egeria_intro_part1.md +0 -254
- md_processing/dr_egeria_inbox/archive/dr_egeria_intro_part2.md +0 -298
- md_processing/dr_egeria_inbox/archive/dr_egeria_intro_part3.md +0 -608
- md_processing/dr_egeria_inbox/archive/dr_egeria_intro_part4.md +0 -94
- md_processing/dr_egeria_inbox/archive/freddie_intro.md +0 -284
- md_processing/dr_egeria_inbox/archive/freddie_intro_orig.md +0 -275
- md_processing/dr_egeria_inbox/archive/test-term.md +0 -110
- md_processing/dr_egeria_inbox/cat_test.md +0 -100
- md_processing/dr_egeria_inbox/collections.md +0 -39
- md_processing/dr_egeria_inbox/data_designer_debug.log +0 -6
- md_processing/dr_egeria_inbox/data_designer_out.md +0 -60
- md_processing/dr_egeria_inbox/data_designer_search_test.md +0 -11
- md_processing/dr_egeria_inbox/data_field.md +0 -54
- md_processing/dr_egeria_inbox/data_spec.md +0 -77
- md_processing/dr_egeria_inbox/data_spec_test.md +0 -2406
- md_processing/dr_egeria_inbox/data_test.md +0 -179
- md_processing/dr_egeria_inbox/data_test2.md +0 -429
- md_processing/dr_egeria_inbox/data_test3.md +0 -462
- md_processing/dr_egeria_inbox/dr_egeria_data_designer_1.md +0 -124
- md_processing/dr_egeria_inbox/dr_egeria_intro_categories.md +0 -168
- md_processing/dr_egeria_inbox/dr_egeria_intro_part1.md +0 -280
- md_processing/dr_egeria_inbox/dr_egeria_intro_part2.md +0 -318
- md_processing/dr_egeria_inbox/dr_egeria_intro_part3.md +0 -1073
- md_processing/dr_egeria_inbox/dr_egeria_isc1.md +0 -44
- md_processing/dr_egeria_inbox/generated_help_report.md +0 -9
- md_processing/dr_egeria_inbox/glossary_creation_experiment.ipynb +0 -341
- md_processing/dr_egeria_inbox/glossary_list.md +0 -5
- md_processing/dr_egeria_inbox/glossary_search_test.md +0 -40
- md_processing/dr_egeria_inbox/glossary_test1.md +0 -324
- md_processing/dr_egeria_inbox/gov_def.md +0 -482
- md_processing/dr_egeria_inbox/gov_def2.md +0 -447
- md_processing/dr_egeria_inbox/img.png +0 -0
- md_processing/dr_egeria_inbox/product.md +0 -211
- md_processing/dr_egeria_inbox/rel.md +0 -8
- md_processing/dr_egeria_inbox/sb.md +0 -119
- md_processing/dr_egeria_inbox/solution-components.md +0 -136
- md_processing/dr_egeria_inbox/solution_blueprints.md +0 -118
- md_processing/dr_egeria_inbox/synonym_test.md +0 -42
- md_processing/dr_egeria_inbox/t2.md +0 -268
- md_processing/dr_egeria_outbox/.obsidian/app.json +0 -1
- md_processing/dr_egeria_outbox/.obsidian/appearance.json +0 -1
- md_processing/dr_egeria_outbox/.obsidian/community-plugins.json +0 -6
- md_processing/dr_egeria_outbox/.obsidian/core-plugins.json +0 -31
- md_processing/dr_egeria_outbox/.obsidian/plugins/calendar/data.json +0 -10
- md_processing/dr_egeria_outbox/.obsidian/plugins/calendar/main.js +0 -4459
- md_processing/dr_egeria_outbox/.obsidian/plugins/calendar/manifest.json +0 -10
- md_processing/dr_egeria_outbox/.obsidian/plugins/obsidian-kanban/data.json +0 -3
- md_processing/dr_egeria_outbox/.obsidian/plugins/obsidian-kanban/main.js +0 -153
- md_processing/dr_egeria_outbox/.obsidian/plugins/obsidian-kanban/manifest.json +0 -11
- md_processing/dr_egeria_outbox/.obsidian/plugins/obsidian-kanban/styles.css +0 -1
- md_processing/dr_egeria_outbox/.obsidian/plugins/obsidian-tasks-plugin/main.js +0 -500
- md_processing/dr_egeria_outbox/.obsidian/plugins/obsidian-tasks-plugin/manifest.json +0 -12
- md_processing/dr_egeria_outbox/.obsidian/plugins/obsidian-tasks-plugin/styles.css +0 -1
- md_processing/dr_egeria_outbox/.obsidian/plugins/templater-obsidian/main.js +0 -37
- md_processing/dr_egeria_outbox/.obsidian/plugins/templater-obsidian/manifest.json +0 -11
- md_processing/dr_egeria_outbox/.obsidian/plugins/templater-obsidian/styles.css +0 -220
- md_processing/dr_egeria_outbox/.obsidian/types.json +0 -28
- md_processing/dr_egeria_outbox/.obsidian/workspace.json +0 -220
- md_processing/dr_egeria_outbox/Untitled.canvas +0 -1
- md_processing/dr_egeria_outbox/friday/processed-2025-08-22 21:22-dr_egeria_intro_part1.md +0 -312
- md_processing/dr_egeria_outbox/friday/processed-2025-08-22 21:23-dr_egeria_intro_part1.md +0 -265
- md_processing/dr_egeria_outbox/friday/processed-2025-08-23 15:06-dr_egeria_intro_part1.md +0 -230
- md_processing/dr_egeria_outbox/friday/processed-2025-08-23 15:30-dr_egeria_intro_part1.md +0 -296
- md_processing/dr_egeria_outbox/friday/processed-2025-08-23 15:31-dr_egeria_intro_part1.md +0 -253
- md_processing/dr_egeria_outbox/friday/processed-2025-08-23 16:08-dr_egeria_intro_part2.md +0 -343
- md_processing/dr_egeria_outbox/friday/processed-2025-08-23 16:12-dr_egeria_intro_part2.md +0 -343
- md_processing/dr_egeria_outbox/monday/processed-2025-08-19 07:05-product.md +0 -426
- md_processing/dr_egeria_outbox/monday/processed-2025-08-19 07:56-product.md +0 -212
- md_processing/dr_egeria_outbox/monday/processed-2025-08-19 09:43-product.md +0 -201
- md_processing/dr_egeria_outbox/sunday/processed-2025-07-20 14:55-product.md +0 -77
- md_processing/dr_egeria_outbox/sunday/processed-2025-07-20 15:05-product.md +0 -75
- md_processing/dr_egeria_outbox/sunday/processed-2025-07-20 15:11-product.md +0 -74
- md_processing/dr_egeria_outbox/sunday/processed-2025-07-20 20:40-collections.md +0 -49
- md_processing/dr_egeria_outbox/thursday/processed-2025-07-17 15:00-Derive-Dr-Gov-Defs.md +0 -719
- md_processing/dr_egeria_outbox/thursday/processed-2025-07-17 20:13-Derive-Dr-Gov-Defs.md +0 -41
- md_processing/dr_egeria_outbox/thursday/processed-2025-07-17 20:14-Derive-Dr-Gov-Defs.md +0 -33
- md_processing/dr_egeria_outbox/thursday/processed-2025-07-17 20:50-Derive-Dr-Gov-Defs.md +0 -192
- md_processing/dr_egeria_outbox/thursday/processed-2025-07-17 22:08-gov_def2.md +0 -486
- md_processing/dr_egeria_outbox/thursday/processed-2025-07-17 22:10-gov_def2.md +0 -486
- md_processing/dr_egeria_outbox/thursday/processed-2025-07-18 08:53-gov_def2.md +0 -486
- md_processing/dr_egeria_outbox/thursday/processed-2025-07-18 08:54-gov_def2.md +0 -486
- md_processing/dr_egeria_outbox/thursday/processed-2025-07-18 09:03-gov_def2.md +0 -486
- md_processing/dr_egeria_outbox/thursday/processed-2025-07-18 09:06-gov_def2.md +0 -486
- md_processing/dr_egeria_outbox/thursday/processed-2025-07-18 09:10-gov_def2.md +0 -486
- md_processing/dr_egeria_outbox/tuesday/processed-2025-07-16 19:15-gov_def2.md +0 -527
- md_processing/dr_egeria_outbox/tuesday/processed-2025-07-17 12:08-gov_def2.md +0 -527
- md_processing/dr_egeria_outbox/tuesday/processed-2025-07-17 14:27-gov_def2.md +0 -485
- md_processing/dr_egeria_outbox/tuesday/processed-2025-08-19 10:55-product.md +0 -209
- md_processing/family_docs/Data Designer/Create_Data_Class.md +0 -164
- md_processing/family_docs/Data Designer/Create_Data_Dictionary.md +0 -30
- md_processing/family_docs/Data Designer/Create_Data_Field.md +0 -162
- md_processing/family_docs/Data Designer/Create_Data_Specification.md +0 -36
- md_processing/family_docs/Data Designer/Create_Data_Structure.md +0 -38
- md_processing/family_docs/Data Designer/View_Data_Classes.md +0 -78
- md_processing/family_docs/Data Designer/View_Data_Dictionaries.md +0 -78
- md_processing/family_docs/Data Designer/View_Data_Fields.md +0 -78
- md_processing/family_docs/Data Designer/View_Data_Specifications.md +0 -78
- md_processing/family_docs/Data Designer/View_Data_Structures.md +0 -78
- md_processing/family_docs/Data Designer.md +0 -842
- md_processing/family_docs/Digital Product Manager/Add_Member->Collection.md +0 -42
- md_processing/family_docs/Digital Product Manager/Attach_Collection->Resource.md +0 -36
- md_processing/family_docs/Digital Product Manager/Create_Agreement.md +0 -96
- md_processing/family_docs/Digital Product Manager/Create_Data_Sharing_Agreement.md +0 -72
- md_processing/family_docs/Digital Product Manager/Create_DigitalSubscription.md +0 -102
- md_processing/family_docs/Digital Product Manager/Create_Digital_Product.md +0 -134
- md_processing/family_docs/Digital Product Manager/Link_Agreement_Items.md +0 -60
- md_processing/family_docs/Digital Product Manager/Link_Contracts.md +0 -26
- md_processing/family_docs/Digital Product Manager/Link_Digital_Product_-_Digital_Product.md +0 -30
- md_processing/family_docs/Digital Product Manager/Link_Subscribers.md +0 -48
- md_processing/family_docs/Digital Product Manager.md +0 -668
- md_processing/family_docs/Glossary/Attach_Category_Parent.md +0 -18
- md_processing/family_docs/Glossary/Attach_Term-Term_Relationship.md +0 -26
- md_processing/family_docs/Glossary/Create_Category.md +0 -38
- md_processing/family_docs/Glossary/Create_Glossary.md +0 -42
- md_processing/family_docs/Glossary/Create_Term.md +0 -70
- md_processing/family_docs/Glossary.md +0 -206
- md_processing/family_docs/Governance Officer/Create_Business_Imperative.md +0 -106
- md_processing/family_docs/Governance Officer/Create_Certification_Type.md +0 -112
- md_processing/family_docs/Governance Officer/Create_Governance_Approach.md +0 -114
- md_processing/family_docs/Governance Officer/Create_Governance_Obligation.md +0 -114
- md_processing/family_docs/Governance Officer/Create_Governance_Principle.md +0 -114
- md_processing/family_docs/Governance Officer/Create_Governance_Procedure.md +0 -128
- md_processing/family_docs/Governance Officer/Create_Governance_Process.md +0 -122
- md_processing/family_docs/Governance Officer/Create_Governance_Processing_Purpose.md +0 -106
- md_processing/family_docs/Governance Officer/Create_Governance_Responsibility.md +0 -122
- md_processing/family_docs/Governance Officer/Create_Governance_Rule.md +0 -122
- md_processing/family_docs/Governance Officer/Create_Governance_Strategy.md +0 -106
- md_processing/family_docs/Governance Officer/Create_License_Type.md +0 -112
- md_processing/family_docs/Governance Officer/Create_Naming_Standard_Rule.md +0 -122
- md_processing/family_docs/Governance Officer/Create_Regulation_Article.md +0 -106
- md_processing/family_docs/Governance Officer/Create_Regulation_Definition.md +0 -118
- md_processing/family_docs/Governance Officer/Create_Security_Access_Control.md +0 -114
- md_processing/family_docs/Governance Officer/Create_Security_Group.md +0 -120
- md_processing/family_docs/Governance Officer/Create_Service_Level_Objectives.md +0 -122
- md_processing/family_docs/Governance Officer/Create_Threat_Definition.md +0 -106
- md_processing/family_docs/Governance Officer/Link_Governance_Controls.md +0 -32
- md_processing/family_docs/Governance Officer/Link_Governance_Drivers.md +0 -32
- md_processing/family_docs/Governance Officer/Link_Governance_Policies.md +0 -32
- md_processing/family_docs/Governance Officer/View_Governance_Definitions.md +0 -82
- md_processing/family_docs/Governance Officer.md +0 -2412
- md_processing/family_docs/Solution Architect/Create_Information_Supply_Chain.md +0 -70
- md_processing/family_docs/Solution Architect/Create_Solution_Blueprint.md +0 -44
- md_processing/family_docs/Solution Architect/Create_Solution_Component.md +0 -96
- md_processing/family_docs/Solution Architect/Create_Solution_Role.md +0 -66
- md_processing/family_docs/Solution Architect/Link_Information_Supply_Chain_Peers.md +0 -32
- md_processing/family_docs/Solution Architect/Link_Solution_Component_Peers.md +0 -32
- md_processing/family_docs/Solution Architect/View_Information_Supply_Chains.md +0 -32
- md_processing/family_docs/Solution Architect/View_Solution_Blueprints.md +0 -32
- md_processing/family_docs/Solution Architect/View_Solution_Components.md +0 -32
- md_processing/family_docs/Solution Architect/View_Solution_Roles.md +0 -32
- md_processing/family_docs/Solution Architect.md +0 -490
- md_processing/md_processing_utils/debug_log +0 -574
- md_processing/md_processing_utils/debug_log.log +0 -0
- md_processing/md_processing_utils/dr-egeria-help-2025-07-17T17:22:09.md +0 -2065
- md_processing/md_processing_utils/generated_help_terms.md +0 -842
- pyegeria/.DS_Store +0 -0
- pyegeria/README.md +0 -35
- pyegeria/_client_new.py +0 -1102
- pyegeria/_output_formats.py +0 -730
- pyegeria/asset_catalog_omvs.py +0 -864
- pyegeria/automated_curation_omvs.py +0 -3765
- pyegeria/config.py +0 -523
- pyegeria/egeria_my_client.py +0 -91
- pyegeria/feedback_manager_omvs.py +0 -4573
- pyegeria/load_config_orig.py +0 -218
- pyegeria/md_processing_helpers.py +0 -58
- pyegeria/md_processing_utils_orig.py +0 -1103
- pyegeria/metadata_explorer_omvs.py +0 -2326
- pyegeria/my_profile_omvs.py +0 -1022
- pyegeria/project_manager.py +0 -1591
- pyegeria/registered_info.py +0 -167
- pyegeria/template_manager_omvs.py +0 -1414
- pyegeria/utils.py +0 -256
- pyegeria-5.4.0.28.dist-info/METADATA +0 -77
- pyegeria-5.4.0.28.dist-info/RECORD +0 -343
- pyegeria-5.4.0.28.dist-info/entry_points.txt +0 -105
- /commands/cat/debug_log.log → /pyegeria/deprecated/__init__.py +0 -0
- /pyegeria/{_exceptions.py → deprecated/_exceptions.py} +0 -0
- /pyegeria/{collection_models.py → models/collection_models.py} +0 -0
- {pyegeria-5.4.0.28.dist-info → pyegeria-5.5.3.3.dist-info/licenses}/LICENSE +0 -0
|
@@ -18,31 +18,25 @@ from rich.prompt import Prompt
|
|
|
18
18
|
from rich.table import Table
|
|
19
19
|
|
|
20
20
|
from pyegeria import (
|
|
21
|
+
PyegeriaException,
|
|
22
|
+
print_basic_exception,
|
|
21
23
|
EgeriaTech,
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
print_exception_response,
|
|
24
|
+
settings, load_app_config, pretty_print_config,
|
|
25
|
+
config_logging,
|
|
26
|
+
save_mermaid_html,
|
|
26
27
|
)
|
|
27
28
|
|
|
28
|
-
EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
|
|
29
|
-
EGERIA_KAFKA_ENDPOINT = os.environ.get("KAFKA_ENDPOINT", "localhost:9092")
|
|
30
|
-
EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
|
|
31
|
-
EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
|
|
32
|
-
EGERIA_VIEW_SERVER_URL = os.environ.get(
|
|
33
|
-
"EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
|
|
34
|
-
)
|
|
35
|
-
EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
|
|
36
|
-
EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
|
|
37
|
-
EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
|
|
38
|
-
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
39
|
-
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
40
|
-
EGERIA_JUPYTER = bool(os.environ.get("EGERIA_JUPYTER", "False"))
|
|
41
|
-
EGERIA_WIDTH = int(os.environ.get("EGERIA_WIDTH", "260"))
|
|
42
29
|
|
|
30
|
+
app_config = settings.Environment
|
|
31
|
+
config_path = os.path.join(app_config.pyegeria_config_directory, app_config.pyegeria_config_file)
|
|
43
32
|
|
|
44
|
-
|
|
45
|
-
|
|
33
|
+
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
34
|
+
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
35
|
+
EGERIA_MERMAID_FOLDER = os.path.join(app_config.pyegeria_root, app_config.egeria_mermaid_folder)
|
|
36
|
+
conf = load_app_config(config_path)
|
|
37
|
+
# print(f"Loading config from {config_path} and mermaid folder is {EGERIA_MERMAID_FOLDER}")
|
|
38
|
+
console = Console(width = app_config.console_width)
|
|
39
|
+
config_logging()
|
|
46
40
|
|
|
47
41
|
def display_anchored_elements(
|
|
48
42
|
property_value: str,
|
|
@@ -52,8 +46,8 @@ def display_anchored_elements(
|
|
|
52
46
|
username: str,
|
|
53
47
|
user_password: str,
|
|
54
48
|
time_out: int = 60,
|
|
55
|
-
jupyter: bool =
|
|
56
|
-
width: int =
|
|
49
|
+
jupyter: bool = app_config.egeria_jupyter,
|
|
50
|
+
width: int = app_config.console_width,
|
|
57
51
|
):
|
|
58
52
|
console = Console(width=width, force_terminal=not jupyter, soft_wrap=True)
|
|
59
53
|
if (property_value is None) or (len(property_value) < 3):
|
|
@@ -87,13 +81,13 @@ def display_anchored_elements(
|
|
|
87
81
|
table.add_column("Matching Elements")
|
|
88
82
|
|
|
89
83
|
classification = "Anchors"
|
|
90
|
-
|
|
84
|
+
metadata_element_type_name = None
|
|
91
85
|
property_value = property_value
|
|
92
86
|
|
|
93
87
|
property_names = prop_list
|
|
94
88
|
|
|
95
89
|
elements = g_client.find_elements_by_classification_with_property_value(
|
|
96
|
-
classification, property_value, property_names,
|
|
90
|
+
classification, property_value, property_names, metadata_element_type_name
|
|
97
91
|
)
|
|
98
92
|
if type(elements) is str:
|
|
99
93
|
return table
|
|
@@ -153,11 +147,9 @@ def display_anchored_elements(
|
|
|
153
147
|
console.print(generate_table(property_value, prop_list), soft_wrap=True)
|
|
154
148
|
|
|
155
149
|
except (
|
|
156
|
-
|
|
157
|
-
PropertyServerException,
|
|
158
|
-
UserNotAuthorizedException,
|
|
150
|
+
PyegeriaException
|
|
159
151
|
) as e:
|
|
160
|
-
|
|
152
|
+
print_basic_exception(e)
|
|
161
153
|
sys.exit(1)
|
|
162
154
|
|
|
163
155
|
except Exception as e:
|
|
@@ -177,8 +169,8 @@ def main():
|
|
|
177
169
|
|
|
178
170
|
args = parser.parse_args()
|
|
179
171
|
|
|
180
|
-
server = args.server if args.server is not None else
|
|
181
|
-
url = args.url if args.url is not None else
|
|
172
|
+
server = args.server if args.server is not None else app_config.egeria_view_server
|
|
173
|
+
url = args.url if args.url is not None else app_config.egeria_platform_url
|
|
182
174
|
userid = args.userid if args.userid is not None else EGERIA_USER
|
|
183
175
|
user_pass = args.password if args.password is not None else EGERIA_USER_PASSWORD
|
|
184
176
|
time_out = args.time_out if args.time_out is not None else 60
|
|
@@ -17,27 +17,24 @@ from rich.console import Console
|
|
|
17
17
|
from rich.table import Table
|
|
18
18
|
|
|
19
19
|
from pyegeria import (
|
|
20
|
-
InvalidParameterException,
|
|
21
|
-
PropertyServerException,
|
|
22
20
|
RegisteredInfo,
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
print_basic_exception,
|
|
22
|
+
PyegeriaException,
|
|
23
|
+
settings, load_app_config, pretty_print_config,
|
|
24
|
+
config_logging,
|
|
25
|
+
save_mermaid_html,
|
|
25
26
|
)
|
|
26
27
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
|
|
31
|
-
EGERIA_VIEW_SERVER_URL = os.environ.get(
|
|
32
|
-
"EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
|
|
33
|
-
)
|
|
34
|
-
EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
|
|
35
|
-
EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
|
|
36
|
-
EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
|
|
28
|
+
app_config = settings.Environment
|
|
29
|
+
config_path = os.path.join(app_config.pyegeria_config_directory, app_config.pyegeria_config_file)
|
|
30
|
+
|
|
37
31
|
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
38
32
|
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
39
|
-
|
|
40
|
-
|
|
33
|
+
EGERIA_MERMAID_FOLDER = os.path.join(app_config.pyegeria_root, app_config.egeria_mermaid_folder)
|
|
34
|
+
conf = load_app_config(config_path)
|
|
35
|
+
# print(f"Loading config from {config_path} and mermaid folder is {EGERIA_MERMAID_FOLDER}")
|
|
36
|
+
console = Console(width=app_config.console_width)
|
|
37
|
+
config_logging()
|
|
41
38
|
|
|
42
39
|
|
|
43
40
|
def display_asset_types(
|
|
@@ -45,8 +42,8 @@ def display_asset_types(
|
|
|
45
42
|
url: str,
|
|
46
43
|
username: str,
|
|
47
44
|
user_password: str,
|
|
48
|
-
jupyter: bool =
|
|
49
|
-
width: int =
|
|
45
|
+
jupyter: bool = app_config.egeria_jupyter,
|
|
46
|
+
width: int = app_config.console_width,
|
|
50
47
|
):
|
|
51
48
|
r_client = RegisteredInfo(server, url, username)
|
|
52
49
|
token = r_client.create_egeria_bearer_token(username, user_password)
|
|
@@ -90,11 +87,9 @@ def display_asset_types(
|
|
|
90
87
|
console.print(generate_table())
|
|
91
88
|
|
|
92
89
|
except (
|
|
93
|
-
|
|
94
|
-
PropertyServerException,
|
|
95
|
-
UserNotAuthorizedException,
|
|
90
|
+
PyegeriaException
|
|
96
91
|
) as e:
|
|
97
|
-
|
|
92
|
+
print_basic_exception(e)
|
|
98
93
|
assert e.related_http_code != "200", "Invalid parameters"
|
|
99
94
|
finally:
|
|
100
95
|
r_client.close_session()
|
|
@@ -109,8 +104,8 @@ def main():
|
|
|
109
104
|
|
|
110
105
|
args = parser.parse_args()
|
|
111
106
|
|
|
112
|
-
server = args.server if args.server is not None else
|
|
113
|
-
url = args.url if args.url is not None else
|
|
107
|
+
server = args.server if args.server is not None else app_config.egeria_view_server
|
|
108
|
+
url = args.url if args.url is not None else app_config.egeria_platform_url
|
|
114
109
|
userid = args.userid if args.userid is not None else EGERIA_USER
|
|
115
110
|
user_pass = args.password if args.password is not None else EGERIA_USER_PASSWORD
|
|
116
111
|
# guid = args.guid if args.guid is not None else None
|
|
@@ -13,31 +13,27 @@ from rich.table import Table
|
|
|
13
13
|
|
|
14
14
|
from pyegeria import (
|
|
15
15
|
EgeriaTech,
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
print_basic_exception,
|
|
17
|
+
PyegeriaException,
|
|
18
|
+
settings, load_app_config, pretty_print_config,
|
|
19
|
+
config_logging,
|
|
20
|
+
save_mermaid_html,
|
|
20
21
|
)
|
|
21
22
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
|
|
26
|
-
EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
|
|
27
|
-
EGERIA_VIEW_SERVER_URL = os.environ.get(
|
|
28
|
-
"EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
|
|
29
|
-
)
|
|
30
|
-
EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
|
|
31
|
-
EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
|
|
32
|
-
EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
|
|
23
|
+
app_config = settings.Environment
|
|
24
|
+
config_path = os.path.join(app_config.pyegeria_config_directory, app_config.pyegeria_config_file)
|
|
25
|
+
|
|
33
26
|
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
34
27
|
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
35
|
-
|
|
36
|
-
|
|
28
|
+
EGERIA_MERMAID_FOLDER = os.path.join(app_config.pyegeria_root, app_config.egeria_mermaid_folder)
|
|
29
|
+
conf = load_app_config(config_path)
|
|
30
|
+
# print(f"Loading config from {config_path} and mermaid folder is {EGERIA_MERMAID_FOLDER}")
|
|
31
|
+
console = Console(width=app_config.console_width)
|
|
32
|
+
config_logging()
|
|
37
33
|
|
|
38
34
|
|
|
39
35
|
def find_elements_by_classification_by_prop_value(
|
|
40
|
-
|
|
36
|
+
metadata_element_type_name: str,
|
|
41
37
|
classification: str,
|
|
42
38
|
property_value: str,
|
|
43
39
|
property_names: [str],
|
|
@@ -45,16 +41,16 @@ def find_elements_by_classification_by_prop_value(
|
|
|
45
41
|
url: str,
|
|
46
42
|
username: str,
|
|
47
43
|
password: str,
|
|
48
|
-
jupyter: bool =
|
|
49
|
-
width: int =
|
|
44
|
+
jupyter: bool = app_config.egeria_jupyter,
|
|
45
|
+
width: int = app_config.console_width,
|
|
50
46
|
):
|
|
51
47
|
c_client = EgeriaTech(server, url, user_id=username, user_pwd=password)
|
|
52
48
|
token = c_client.create_egeria_bearer_token()
|
|
53
49
|
|
|
54
|
-
om_typedef = c_client.get_typedef_by_name(
|
|
50
|
+
om_typedef = c_client.get_typedef_by_name(metadata_element_type_name)
|
|
55
51
|
if type(om_typedef) is str:
|
|
56
52
|
print(
|
|
57
|
-
f"The type name '{
|
|
53
|
+
f"The type name '{metadata_element_type_name}' is not known to the Egeria platform at {url} - {server}"
|
|
58
54
|
)
|
|
59
55
|
sys.exit(0)
|
|
60
56
|
|
|
@@ -66,7 +62,7 @@ def find_elements_by_classification_by_prop_value(
|
|
|
66
62
|
sys.exit(0)
|
|
67
63
|
|
|
68
64
|
elements = c_client.find_elements_by_classification_with_property_value(
|
|
69
|
-
classification, property_value, property_names,
|
|
65
|
+
classification, property_value, property_names, metadata_element_type_name
|
|
70
66
|
)
|
|
71
67
|
c = classification
|
|
72
68
|
|
|
@@ -81,7 +77,7 @@ def find_elements_by_classification_by_prop_value(
|
|
|
81
77
|
caption_style="white on black",
|
|
82
78
|
show_lines=True,
|
|
83
79
|
box=box.ROUNDED,
|
|
84
|
-
title=f"Elements for Classification: {c}, Open Metadata Type: {
|
|
80
|
+
title=f"Elements for Classification: {c}, Open Metadata Type: {metadata_element_type_name}, property value: {property_value}, "
|
|
85
81
|
f"properties: {property_names}",
|
|
86
82
|
expand=True,
|
|
87
83
|
width=width,
|
|
@@ -147,11 +143,9 @@ def find_elements_by_classification_by_prop_value(
|
|
|
147
143
|
console.print(generate_table())
|
|
148
144
|
|
|
149
145
|
except (
|
|
150
|
-
|
|
151
|
-
PropertyServerException,
|
|
152
|
-
UserNotAuthorizedException,
|
|
146
|
+
PyegeriaException
|
|
153
147
|
) as e:
|
|
154
|
-
|
|
148
|
+
print_basic_exception(e)
|
|
155
149
|
print("\n\nPerhaps the type name isn't known")
|
|
156
150
|
finally:
|
|
157
151
|
c_client.close_session()
|
|
@@ -166,8 +160,8 @@ def main():
|
|
|
166
160
|
|
|
167
161
|
args = parser.parse_args()
|
|
168
162
|
|
|
169
|
-
server = args.server if args.server is not None else
|
|
170
|
-
url = args.url if args.url is not None else
|
|
163
|
+
server = args.server if args.server is not None else app_config.egeria_view_server
|
|
164
|
+
url = args.url if args.url is not None else app_config.egeria_platform_url
|
|
171
165
|
userid = args.userid if args.userid is not None else EGERIA_USER
|
|
172
166
|
password = args.password if args.password is not None else EGERIA_USER_PASSWORD
|
|
173
167
|
|
|
@@ -175,7 +169,7 @@ def main():
|
|
|
175
169
|
classification = Prompt.ask(
|
|
176
170
|
"Enter the Classification to filter on", default="Anchors"
|
|
177
171
|
)
|
|
178
|
-
|
|
172
|
+
metadata_element_type_name = Prompt.ask(
|
|
179
173
|
"Enter the Open Metadata Type to find elements of", default="Referenceable"
|
|
180
174
|
)
|
|
181
175
|
property_value = Prompt.ask("Enter the property value to search for")
|
|
@@ -183,7 +177,7 @@ def main():
|
|
|
183
177
|
"Enter a comma seperated list of properties to search"
|
|
184
178
|
)
|
|
185
179
|
find_elements_by_classification_by_prop_value(
|
|
186
|
-
|
|
180
|
+
metadata_element_type_name,
|
|
187
181
|
classification,
|
|
188
182
|
property_value,
|
|
189
183
|
[property_names],
|
|
@@ -13,27 +13,23 @@ from rich.table import Table
|
|
|
13
13
|
|
|
14
14
|
from pyegeria import (
|
|
15
15
|
EgeriaTech,
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
print_basic_exception,
|
|
17
|
+
PyegeriaException,
|
|
18
|
+
settings, load_app_config, pretty_print_config,
|
|
19
|
+
config_logging,
|
|
20
|
+
save_mermaid_html,
|
|
20
21
|
)
|
|
21
22
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
|
|
26
|
-
EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
|
|
27
|
-
EGERIA_VIEW_SERVER_URL = os.environ.get(
|
|
28
|
-
"EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
|
|
29
|
-
)
|
|
30
|
-
EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
|
|
31
|
-
EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
|
|
32
|
-
EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
|
|
23
|
+
app_config = settings.Environment
|
|
24
|
+
config_path = os.path.join(app_config.pyegeria_config_directory, app_config.pyegeria_config_file)
|
|
25
|
+
|
|
33
26
|
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
34
27
|
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
35
|
-
|
|
36
|
-
|
|
28
|
+
EGERIA_MERMAID_FOLDER = os.path.join(app_config.pyegeria_root, app_config.egeria_mermaid_folder)
|
|
29
|
+
conf = load_app_config(config_path)
|
|
30
|
+
# print(f"Loading config from {config_path} and mermaid folder is {EGERIA_MERMAID_FOLDER}")
|
|
31
|
+
console = Console(width=app_config.console_width)
|
|
32
|
+
config_logging()
|
|
37
33
|
|
|
38
34
|
|
|
39
35
|
def find_elements_by_prop_value(
|
|
@@ -44,8 +40,8 @@ def find_elements_by_prop_value(
|
|
|
44
40
|
url: str,
|
|
45
41
|
username: str,
|
|
46
42
|
password: str,
|
|
47
|
-
jupyter: bool =
|
|
48
|
-
width: int =
|
|
43
|
+
jupyter: bool = app_config.egeria_jupyter,
|
|
44
|
+
width: int = app_config.console_width,
|
|
49
45
|
):
|
|
50
46
|
c_client = EgeriaTech(server, url, user_id=username, user_pwd=password)
|
|
51
47
|
token = c_client.create_egeria_bearer_token()
|
|
@@ -137,11 +133,9 @@ def find_elements_by_prop_value(
|
|
|
137
133
|
console.print(generate_table())
|
|
138
134
|
|
|
139
135
|
except (
|
|
140
|
-
|
|
141
|
-
PropertyServerException,
|
|
142
|
-
UserNotAuthorizedException,
|
|
136
|
+
PyegeriaException
|
|
143
137
|
) as e:
|
|
144
|
-
|
|
138
|
+
print_basic_exception(e)
|
|
145
139
|
print("\n\nPerhaps the type name isn't known")
|
|
146
140
|
finally:
|
|
147
141
|
c_client.close_session()
|
|
@@ -156,8 +150,8 @@ def main():
|
|
|
156
150
|
|
|
157
151
|
args = parser.parse_args()
|
|
158
152
|
|
|
159
|
-
server = args.server if args.server is not None else
|
|
160
|
-
url = args.url if args.url is not None else
|
|
153
|
+
server = args.server if args.server is not None else app_config.egeria_view_server
|
|
154
|
+
url = args.url if args.url is not None else app_config.egeria_platform_url
|
|
161
155
|
userid = args.userid if args.userid is not None else EGERIA_USER
|
|
162
156
|
password = args.password if args.password is not None else EGERIA_USER_PASSWORD
|
|
163
157
|
|
|
@@ -13,27 +13,23 @@ from rich.table import Table
|
|
|
13
13
|
|
|
14
14
|
from pyegeria import (
|
|
15
15
|
EgeriaTech,
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
print_basic_exception,
|
|
17
|
+
PyegeriaException,
|
|
18
|
+
settings, load_app_config, pretty_print_config,
|
|
19
|
+
config_logging,
|
|
20
|
+
save_mermaid_html,
|
|
20
21
|
)
|
|
21
22
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
|
|
26
|
-
EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
|
|
27
|
-
EGERIA_VIEW_SERVER_URL = os.environ.get(
|
|
28
|
-
"EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
|
|
29
|
-
)
|
|
30
|
-
EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
|
|
31
|
-
EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
|
|
32
|
-
EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
|
|
23
|
+
app_config = settings.Environment
|
|
24
|
+
config_path = os.path.join(app_config.pyegeria_config_directory, app_config.pyegeria_config_file)
|
|
25
|
+
|
|
33
26
|
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
34
27
|
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
35
|
-
|
|
36
|
-
|
|
28
|
+
EGERIA_MERMAID_FOLDER = os.path.join(app_config.pyegeria_root, app_config.egeria_mermaid_folder)
|
|
29
|
+
conf = load_app_config(config_path)
|
|
30
|
+
# print(f"Loading config from {config_path} and mermaid folder is {EGERIA_MERMAID_FOLDER}")
|
|
31
|
+
console = Console(width=app_config.console_width)
|
|
32
|
+
config_logging()
|
|
37
33
|
|
|
38
34
|
|
|
39
35
|
def find_elements_by_prop_value_x(
|
|
@@ -44,8 +40,8 @@ def find_elements_by_prop_value_x(
|
|
|
44
40
|
url: str,
|
|
45
41
|
username: str,
|
|
46
42
|
password: str,
|
|
47
|
-
jupyter: bool =
|
|
48
|
-
width: int =
|
|
43
|
+
jupyter: bool = app_config.egeria_jupyter,
|
|
44
|
+
width: int = app_config.console_width,
|
|
49
45
|
):
|
|
50
46
|
c_client = EgeriaTech(server, url, user_id=username, user_pwd=password)
|
|
51
47
|
token = c_client.create_egeria_bearer_token()
|
|
@@ -158,11 +154,9 @@ def find_elements_by_prop_value_x(
|
|
|
158
154
|
console.print(generate_table())
|
|
159
155
|
|
|
160
156
|
except (
|
|
161
|
-
|
|
162
|
-
PropertyServerException,
|
|
163
|
-
UserNotAuthorizedException,
|
|
157
|
+
PyegeriaException,
|
|
164
158
|
) as e:
|
|
165
|
-
|
|
159
|
+
print_basic_exception(e)
|
|
166
160
|
print("\n\nPerhaps the type name isn't known")
|
|
167
161
|
finally:
|
|
168
162
|
c_client.close_session()
|
|
@@ -177,8 +171,8 @@ def main():
|
|
|
177
171
|
|
|
178
172
|
args = parser.parse_args()
|
|
179
173
|
|
|
180
|
-
server = args.server if args.server is not None else
|
|
181
|
-
url = args.url if args.url is not None else
|
|
174
|
+
server = args.server if args.server is not None else app_config.egeria_view_server
|
|
175
|
+
url = args.url if args.url is not None else app_config.egeria_platform_url
|
|
182
176
|
userid = args.userid if args.userid is not None else EGERIA_USER
|
|
183
177
|
password = args.password if args.password is not None else EGERIA_USER_PASSWORD
|
|
184
178
|
|
|
@@ -190,9 +184,7 @@ def main():
|
|
|
190
184
|
property_names = Prompt.ask(
|
|
191
185
|
"Enter a comma seperated list of properties to search"
|
|
192
186
|
)
|
|
193
|
-
find_elements_by_prop_value_x(
|
|
194
|
-
om_type, property_value, [property_names], server, url, userid, password
|
|
195
|
-
)
|
|
187
|
+
find_elements_by_prop_value_x(om_type, property_value, [property_names], server, url, userid, password)
|
|
196
188
|
except KeyboardInterrupt:
|
|
197
189
|
pass
|
|
198
190
|
|
|
@@ -5,7 +5,6 @@ import os
|
|
|
5
5
|
import sys
|
|
6
6
|
import time
|
|
7
7
|
|
|
8
|
-
from jedi import Project
|
|
9
8
|
from rich import box
|
|
10
9
|
from rich.console import Console
|
|
11
10
|
from rich.markdown import Markdown
|
|
@@ -14,50 +13,40 @@ from rich.table import Table
|
|
|
14
13
|
|
|
15
14
|
from pyegeria import (
|
|
16
15
|
EgeriaTech,
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
print_exception_response,
|
|
16
|
+
print_basic_exception,
|
|
17
|
+
PyegeriaException,
|
|
18
|
+
settings, load_app_config, config_logging,
|
|
21
19
|
)
|
|
22
20
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
|
|
27
|
-
EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
|
|
28
|
-
EGERIA_VIEW_SERVER_URL = os.environ.get(
|
|
29
|
-
"EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
|
|
30
|
-
)
|
|
31
|
-
EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
|
|
32
|
-
EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
|
|
33
|
-
EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
|
|
21
|
+
app_config = settings.Environment
|
|
22
|
+
config_path = os.path.join(app_config.pyegeria_config_directory, app_config.pyegeria_config_file)
|
|
23
|
+
|
|
34
24
|
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
35
25
|
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
username: str,
|
|
46
|
-
password: str,
|
|
47
|
-
jupyter: bool = EGERIA_JUPYTER,
|
|
48
|
-
width: int = EGERIA_WIDTH,
|
|
49
|
-
):
|
|
26
|
+
EGERIA_MERMAID_FOLDER = os.path.join(app_config.pyegeria_root, app_config.egeria_mermaid_folder)
|
|
27
|
+
conf = load_app_config(config_path)
|
|
28
|
+
# print(f"Loading config from {config_path} and mermaid folder is {EGERIA_MERMAID_FOLDER}")
|
|
29
|
+
console = Console(width=app_config.console_width)
|
|
30
|
+
config_logging()
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
def list_classified_elements(om_type: str, classification: str, server: str, url: str, username: str, password: str,
|
|
34
|
+
jupyter: bool = app_config.egeria_jupyter, width: int = app_config.console_width):
|
|
50
35
|
c_client = EgeriaTech(server, url, user_id=username, user_pwd=password)
|
|
51
36
|
token = c_client.create_egeria_bearer_token()
|
|
52
37
|
|
|
53
38
|
om_typedef = c_client.get_typedef_by_name(om_type)
|
|
54
39
|
if type(om_typedef) is str:
|
|
55
|
-
print(
|
|
56
|
-
f"The type name '{om_type}' is not known to the Egeria platform at {url} - {server}"
|
|
57
|
-
)
|
|
40
|
+
print(f"The type name '{om_type}' is not known to the Egeria platform at {url} - {server}")
|
|
58
41
|
sys.exit(1)
|
|
59
|
-
|
|
60
|
-
|
|
42
|
+
try:
|
|
43
|
+
elements = c_client.get_elements_by_classification(classification, om_type)
|
|
44
|
+
except PyegeriaException as e:
|
|
45
|
+
if e.response_egeria_msg_id == "OMAG-COMMON-400-018":
|
|
46
|
+
print(f"\n ===> Looks like the classification {classification} isn't known...\n")
|
|
47
|
+
sys.exit(1)
|
|
48
|
+
else:
|
|
49
|
+
print_basic_exception(e)
|
|
61
50
|
|
|
62
51
|
def generate_table() -> Table:
|
|
63
52
|
"""Make a new table."""
|
|
@@ -135,11 +124,9 @@ def list_classified_elements(
|
|
|
135
124
|
console.print(generate_table())
|
|
136
125
|
|
|
137
126
|
except (
|
|
138
|
-
|
|
139
|
-
PropertyServerException,
|
|
140
|
-
UserNotAuthorizedException,
|
|
127
|
+
PyegeriaException,
|
|
141
128
|
) as e:
|
|
142
|
-
|
|
129
|
+
print_basic_exception(e)
|
|
143
130
|
print("\n\nPerhaps the type name isn't known")
|
|
144
131
|
finally:
|
|
145
132
|
c_client.close_session()
|
|
@@ -154,8 +141,8 @@ def main():
|
|
|
154
141
|
|
|
155
142
|
args = parser.parse_args()
|
|
156
143
|
|
|
157
|
-
server = args.server if args.server is not None else
|
|
158
|
-
url = args.url if args.url is not None else
|
|
144
|
+
server = args.server if args.server is not None else app_config.egeria_view_server
|
|
145
|
+
url = args.url if args.url is not None else app_config.egeria_platform_url
|
|
159
146
|
userid = args.userid if args.userid is not None else EGERIA_USER
|
|
160
147
|
password = args.password if args.password is not None else EGERIA_USER_PASSWORD
|
|
161
148
|
|
|
@@ -19,27 +19,18 @@ from rich.table import Table
|
|
|
19
19
|
|
|
20
20
|
from pyegeria import (
|
|
21
21
|
EgeriaTech,
|
|
22
|
-
|
|
23
|
-
PropertyServerException,
|
|
24
|
-
UserNotAuthorizedException,
|
|
22
|
+
PyegeriaException,
|
|
25
23
|
ValidMetadataManager,
|
|
26
|
-
|
|
24
|
+
print_basic_exception,
|
|
25
|
+
settings,
|
|
26
|
+
config_logging
|
|
27
27
|
)
|
|
28
|
-
|
|
29
|
-
EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
|
|
30
|
-
EGERIA_KAFKA_ENDPOINT = os.environ.get("KAFKA_ENDPOINT", "localhost:9092")
|
|
31
|
-
EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
|
|
32
|
-
EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
|
|
33
|
-
EGERIA_VIEW_SERVER_URL = os.environ.get(
|
|
34
|
-
"EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
|
|
35
|
-
)
|
|
36
|
-
EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
|
|
37
|
-
EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
|
|
38
|
-
EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
|
|
39
28
|
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
40
29
|
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
41
|
-
|
|
42
|
-
|
|
30
|
+
|
|
31
|
+
app_config = settings.Environment
|
|
32
|
+
config_logging()
|
|
33
|
+
console = Console(width = app_config.console_width)
|
|
43
34
|
|
|
44
35
|
|
|
45
36
|
def display_gov_processes(
|
|
@@ -48,8 +39,8 @@ def display_gov_processes(
|
|
|
48
39
|
url: str,
|
|
49
40
|
username: str,
|
|
50
41
|
user_pass: str,
|
|
51
|
-
jupyter: bool =
|
|
52
|
-
width: int =
|
|
42
|
+
jupyter: bool = app_config.egeria_jupyter,
|
|
43
|
+
width: int = app_config.console_width,
|
|
53
44
|
) -> Table:
|
|
54
45
|
p_client = EgeriaTech(server, url, user_id=username, user_pwd=user_pass)
|
|
55
46
|
token = p_client.create_egeria_bearer_token(username, user_pass)
|
|
@@ -80,7 +71,7 @@ def display_gov_processes(
|
|
|
80
71
|
)
|
|
81
72
|
table.add_column("Description")
|
|
82
73
|
|
|
83
|
-
process_list = p_client.
|
|
74
|
+
process_list = p_client.find_governance_definitions(search_string = type_name, metadata_element_subtypes=["GovernanceActionProcess"])
|
|
84
75
|
|
|
85
76
|
if type(process_list) is str:
|
|
86
77
|
print("No Governance Processes found matching the type name\n")
|
|
@@ -88,7 +79,7 @@ def display_gov_processes(
|
|
|
88
79
|
|
|
89
80
|
for proc in process_list:
|
|
90
81
|
guid = proc["elementHeader"]["guid"]
|
|
91
|
-
props = proc["
|
|
82
|
+
props = proc["properties"]
|
|
92
83
|
name = props[("displayName" "")]
|
|
93
84
|
qualified_name = props["qualifiedName"]
|
|
94
85
|
description = props.get("description", "---")
|
|
@@ -104,15 +95,13 @@ def display_gov_processes(
|
|
|
104
95
|
console.print(generate_table(type_name))
|
|
105
96
|
|
|
106
97
|
except (
|
|
107
|
-
|
|
108
|
-
PropertyServerException,
|
|
109
|
-
UserNotAuthorizedException,
|
|
98
|
+
PyegeriaException,
|
|
110
99
|
ValueError,
|
|
111
100
|
) as e:
|
|
112
101
|
if type(e) is str:
|
|
113
102
|
print(e)
|
|
114
103
|
else:
|
|
115
|
-
|
|
104
|
+
print_basic_exception(e)
|
|
116
105
|
|
|
117
106
|
|
|
118
107
|
def main():
|
|
@@ -125,8 +114,8 @@ def main():
|
|
|
125
114
|
|
|
126
115
|
args = parser.parse_args()
|
|
127
116
|
|
|
128
|
-
server = args.server if args.server is not None else
|
|
129
|
-
url = args.url if args.url is not None else
|
|
117
|
+
server = args.server if args.server is not None else app_config.egeria_view_server
|
|
118
|
+
url = args.url if args.url is not None else app_config.egeria_view_server_url
|
|
130
119
|
userid = args.userid if args.userid is not None else EGERIA_USER
|
|
131
120
|
user_pass = args.password if args.password is not None else EGERIA_USER_PASSWORD
|
|
132
121
|
type_name = Prompt.ask("Enter the Type Name to retrieve:", default="*")
|