pyegeria 5.3.9.9.3__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/__init__.py +1 -17
- commands/cat/collection_actions.py +197 -0
- commands/cat/dr_egeria_command_help.py +372 -0
- commands/cat/dr_egeria_jupyter.py +7 -7
- commands/cat/dr_egeria_md.py +27 -182
- 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 +46 -138
- 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/run_report_orig.py +528 -0
- commands/cli/egeria.py +222 -247
- commands/cli/egeria_cat.py +68 -81
- commands/cli/egeria_my.py +13 -0
- commands/cli/egeria_ops.py +69 -74
- commands/cli/egeria_tech.py +17 -93
- commands/cli/ops_config.py +3 -6
- commands/{cat/list_categories.py → deprecated/list_data_designer.py} +53 -64
- commands/{cat/list_data_structures.py → 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 +35 -26
- 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 +90 -0
- 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 +17568 -0
- md_processing/data/commands_working.json +30641 -0
- 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/__init__.py +3 -0
- md_processing/md_commands/data_designer_commands.py +1276 -0
- 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 +684 -0
- md_processing/md_commands/governance_officer_commands.py +600 -0
- md_processing/md_commands/product_manager_commands.py +1266 -0
- md_processing/md_commands/project_commands.py +383 -0
- md_processing/md_commands/solution_architect_commands.py +1184 -0
- md_processing/md_commands/view_commands.py +295 -0
- md_processing/md_processing_utils/__init__.py +4 -0
- md_processing/md_processing_utils/common_md_proc_utils.py +1249 -0
- md_processing/md_processing_utils/common_md_utils.py +578 -0
- md_processing/md_processing_utils/determine_width.py +103 -0
- md_processing/md_processing_utils/extraction_utils.py +547 -0
- md_processing/md_processing_utils/gen_report_specs.py +643 -0
- md_processing/md_processing_utils/generate_dr_help.py +193 -0
- md_processing/md_processing_utils/generate_md_cmd_templates.py +144 -0
- md_processing/md_processing_utils/generate_md_templates.py +83 -0
- md_processing/md_processing_utils/md_processing_constants.py +1228 -0
- md_processing/md_processing_utils/message_constants.py +19 -0
- pyegeria/__init__.py +201 -443
- pyegeria/core/__init__.py +40 -0
- pyegeria/core/_base_platform_client.py +574 -0
- pyegeria/core/_base_server_client.py +573 -0
- pyegeria/core/_exceptions.py +457 -0
- pyegeria/core/_globals.py +60 -0
- pyegeria/core/_server_client.py +6073 -0
- pyegeria/core/_validators.py +257 -0
- 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/core/logging_configuration.py +207 -0
- pyegeria/core/mcp_adapter.py +144 -0
- pyegeria/core/mcp_server.py +212 -0
- pyegeria/core/utils.py +405 -0
- pyegeria/deprecated/__init__.py +0 -0
- pyegeria/{_client.py → deprecated/_client.py} +62 -24
- pyegeria/{_deprecated_gov_engine.py → deprecated/_deprecated_gov_engine.py} +16 -16
- pyegeria/{classification_manager_omvs.py → deprecated/classification_manager_omvs.py} +1988 -1878
- pyegeria/deprecated/output_formatter_with_machine_keys.py +1127 -0
- pyegeria/{runtime_manager_omvs.py → deprecated/runtime_manager_omvs.py} +216 -229
- 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 +25 -51
- pyegeria/egeria_client.py +140 -98
- pyegeria/egeria_config_client.py +48 -24
- pyegeria/egeria_tech_client.py +170 -83
- pyegeria/models/__init__.py +150 -0
- pyegeria/models/collection_models.py +168 -0
- pyegeria/models/models.py +654 -0
- 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/omvs/collection_manager.py +5780 -0
- 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_omvs.py → omvs/data_designer.py} +1991 -1691
- 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/omvs/glossary_manager.py +3231 -0
- pyegeria/omvs/governance_officer.py +3009 -0
- 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/omvs/solution_architect.py +6490 -0
- 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/view/_output_format_models.py +514 -0
- 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.3.9.9.3.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/README.md +0 -16
- commands/cli/txt_custom_v2.tcss +0 -19
- commands/my/README.md +0 -17
- commands/ops/README.md +0 -24
- commands/ops/monitor_asset_events.py +0 -108
- commands/tech/README.md +0 -24
- pyegeria/.DS_Store +0 -0
- pyegeria/README.md +0 -35
- pyegeria/_globals.py +0 -47
- pyegeria/_validators.py +0 -385
- pyegeria/asset_catalog_omvs.py +0 -864
- pyegeria/automated_curation_omvs.py +0 -3765
- pyegeria/collection_manager_omvs.py +0 -2744
- pyegeria/dr.egeria spec.md +0 -9
- pyegeria/egeria_my_client.py +0 -56
- pyegeria/feedback_manager_omvs.py +0 -4573
- pyegeria/glossary_browser_omvs.py +0 -3728
- pyegeria/glossary_manager_omvs.py +0 -2440
- pyegeria/m_test.py +0 -118
- 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/output_formatter.py +0 -389
- pyegeria/project_manager_omvs.py +0 -1933
- pyegeria/registered_info.py +0 -167
- pyegeria/solution_architect_omvs.py +0 -2156
- pyegeria/template_manager_omvs.py +0 -1414
- pyegeria/utils.py +0 -197
- pyegeria-5.3.9.9.3.dist-info/METADATA +0 -72
- pyegeria-5.3.9.9.3.dist-info/RECORD +0 -143
- pyegeria-5.3.9.9.3.dist-info/entry_points.txt +0 -99
- /pyegeria/{_exceptions.py → deprecated/_exceptions.py} +0 -0
- {pyegeria-5.3.9.9.3.dist-info → pyegeria-5.5.3.3.dist-info/licenses}/LICENSE +0 -0
commands/cli/egeria_cat.py
CHANGED
|
@@ -13,10 +13,13 @@ import os
|
|
|
13
13
|
|
|
14
14
|
import click
|
|
15
15
|
from trogon import tui
|
|
16
|
+
from pyegeria import settings
|
|
17
|
+
from loguru import logger
|
|
16
18
|
|
|
19
|
+
from commands.cat.run_report import list_generic
|
|
17
20
|
from commands.cat.dr_egeria_md import process_markdown_file
|
|
18
|
-
from commands.cat.
|
|
19
|
-
from commands.cat.
|
|
21
|
+
from commands.cat.old_get_asset_graph import asset_viewer
|
|
22
|
+
from commands.cat.get_collection_tree import collection_viewer
|
|
20
23
|
from commands.cat.get_project_dependencies import project_dependency_viewer
|
|
21
24
|
from commands.cat.get_project_structure import project_structure_viewer
|
|
22
25
|
from commands.cat.get_tech_type_elements import tech_viewer
|
|
@@ -33,7 +36,7 @@ from commands.cat.glossary_actions import (
|
|
|
33
36
|
add_term_to_category,
|
|
34
37
|
remove_term_from_category)
|
|
35
38
|
from commands.cat.list_assets import display_assets
|
|
36
|
-
|
|
39
|
+
|
|
37
40
|
from commands.cat.list_cert_types import display_certifications
|
|
38
41
|
from commands.cat.list_collections import display_collections
|
|
39
42
|
from commands.cat.list_deployed_catalogs import list_deployed_catalogs
|
|
@@ -58,110 +61,112 @@ from commands.my.todo_actions import (
|
|
|
58
61
|
)
|
|
59
62
|
from commands.tech.list_asset_types import display_asset_types
|
|
60
63
|
|
|
64
|
+
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
65
|
+
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
66
|
+
app_settings = settings
|
|
67
|
+
|
|
68
|
+
app_config = app_settings.Environment
|
|
69
|
+
# config_logging()
|
|
70
|
+
|
|
61
71
|
|
|
62
72
|
# @tui
|
|
63
73
|
# @tui('menu','menu','A textual object_action line interface')
|
|
64
74
|
@tui()
|
|
65
|
-
@
|
|
75
|
+
# @tui('menu', 'menu', 'A textual object_action line interface')
|
|
76
|
+
@click.version_option("5.4 ", prog_name="hey_egeria")
|
|
66
77
|
@click.group()
|
|
67
78
|
@click.option(
|
|
68
79
|
"--server",
|
|
69
|
-
default=
|
|
80
|
+
default=app_config.egeria_metadata_store,
|
|
70
81
|
help="Egeria metadata store to work with",
|
|
71
82
|
)
|
|
72
83
|
@click.option(
|
|
73
84
|
"--url",
|
|
74
|
-
default=
|
|
85
|
+
default=app_config.egeria_platform_url,
|
|
75
86
|
help="URL of Egeria metadata store platform to connect to",
|
|
76
87
|
)
|
|
77
88
|
@click.option(
|
|
78
89
|
"--integration_daemon",
|
|
79
|
-
default=
|
|
90
|
+
default=app_config.egeria_integration_daemon,
|
|
80
91
|
help="Egeria integration daemon to work with",
|
|
81
92
|
)
|
|
82
93
|
@click.option(
|
|
83
94
|
"--integration_daemon_url",
|
|
84
|
-
default=
|
|
95
|
+
default=app_config.egeria_integration_daemon_url,
|
|
85
96
|
help="URL of Egeria integration daemon platform to connect to",
|
|
86
97
|
)
|
|
87
98
|
@click.option(
|
|
88
99
|
"--view_server",
|
|
89
|
-
default=
|
|
100
|
+
default=app_config.egeria_view_server,
|
|
90
101
|
help="Egeria view server to work with",
|
|
91
102
|
)
|
|
92
103
|
@click.option(
|
|
93
104
|
"--view_server_url",
|
|
94
|
-
default=
|
|
105
|
+
default=app_config.egeria_view_server_url,
|
|
95
106
|
help="URL of Egeria view server platform to connect to",
|
|
96
107
|
)
|
|
97
108
|
@click.option(
|
|
98
109
|
"--engine_host",
|
|
99
|
-
default=
|
|
110
|
+
default=app_config.egeria_engine_host,
|
|
100
111
|
help="Egeria engine host to work with",
|
|
101
112
|
)
|
|
102
113
|
@click.option(
|
|
103
114
|
"--engine_host_url",
|
|
104
|
-
default=
|
|
115
|
+
default=app_config.egeria_engine_host_url,
|
|
105
116
|
help="URL of Egeria engine host platform to connect to",
|
|
106
117
|
)
|
|
107
|
-
|
|
108
|
-
"--admin_user",
|
|
109
|
-
default=os.environ.get("EGERIA_ADMIN_USER", "garygeeke"),
|
|
110
|
-
help="Egeria admin user",
|
|
111
|
-
)
|
|
112
|
-
@click.option(
|
|
113
|
-
"--admin_user_password",
|
|
114
|
-
default=os.environ.get("EGERIA_ADMIN_PASSWORD", "secret"),
|
|
115
|
-
help="Egeria admin password",
|
|
116
|
-
)
|
|
118
|
+
|
|
117
119
|
@click.option(
|
|
118
120
|
"--userid",
|
|
119
|
-
default=
|
|
121
|
+
default=EGERIA_USER,
|
|
120
122
|
help="Egeria user",
|
|
121
123
|
)
|
|
122
124
|
@click.option(
|
|
123
125
|
"--password",
|
|
124
|
-
default=
|
|
125
|
-
help="Egeria user password"
|
|
126
|
+
default=EGERIA_USER_PASSWORD,
|
|
127
|
+
help="Egeria user password"
|
|
126
128
|
)
|
|
129
|
+
|
|
127
130
|
@click.option("--timeout", default=60, help="Number of seconds to wait")
|
|
131
|
+
|
|
128
132
|
@click.option(
|
|
129
133
|
"--jupyter",
|
|
130
134
|
is_flag=True,
|
|
131
|
-
|
|
135
|
+
type=bool,
|
|
136
|
+
default=app_config.egeria_jupyter,
|
|
132
137
|
help="Enable for rendering in a Jupyter terminal",
|
|
133
138
|
)
|
|
134
139
|
@click.option(
|
|
135
140
|
"--width",
|
|
136
|
-
default=
|
|
141
|
+
default=app_config.console_width,
|
|
137
142
|
type=int,
|
|
138
143
|
help="Screen width, in characters, to use",
|
|
139
144
|
)
|
|
140
145
|
@click.option(
|
|
141
|
-
"--
|
|
142
|
-
default=
|
|
143
|
-
help="Glossary
|
|
146
|
+
"--home_glossary_name",
|
|
147
|
+
default=app_settings.User_Profile.egeria_home_glossary_name,
|
|
148
|
+
help="Glossary name to use as the home glossary",
|
|
144
149
|
)
|
|
145
150
|
@click.option(
|
|
146
151
|
"--glossary_path",
|
|
147
|
-
default=
|
|
152
|
+
default=app_config.egeria_glossary_path,
|
|
148
153
|
help="Path to glossary import/export files",
|
|
149
154
|
)
|
|
150
155
|
|
|
151
156
|
@click.option(
|
|
152
157
|
"--root_path",
|
|
153
|
-
default=
|
|
158
|
+
default=app_config.pyegeria_root,
|
|
154
159
|
help="Root path to use for file operations",
|
|
155
160
|
)
|
|
156
161
|
|
|
157
162
|
@click.option(
|
|
158
163
|
"--inbox_path",
|
|
159
|
-
default=
|
|
164
|
+
default=app_config.dr_egeria_inbox,
|
|
160
165
|
help="Path to inbox files",
|
|
161
166
|
)
|
|
162
167
|
@click.option(
|
|
163
168
|
"--outbox_path",
|
|
164
|
-
default=
|
|
169
|
+
default=app_config.dr_egeria_outbox,
|
|
165
170
|
help="Path to outbox files",
|
|
166
171
|
)
|
|
167
172
|
|
|
@@ -176,14 +181,12 @@ def cli(
|
|
|
176
181
|
integration_daemon_url,
|
|
177
182
|
engine_host,
|
|
178
183
|
engine_host_url,
|
|
179
|
-
admin_user,
|
|
180
|
-
admin_user_password,
|
|
181
184
|
userid,
|
|
182
185
|
password,
|
|
183
186
|
timeout,
|
|
184
187
|
jupyter,
|
|
185
188
|
width,
|
|
186
|
-
|
|
189
|
+
home_glossary_name,
|
|
187
190
|
glossary_path,
|
|
188
191
|
root_path,
|
|
189
192
|
inbox_path,
|
|
@@ -199,14 +202,12 @@ def cli(
|
|
|
199
202
|
integration_daemon_url,
|
|
200
203
|
engine_host,
|
|
201
204
|
engine_host_url,
|
|
202
|
-
admin_user,
|
|
203
|
-
admin_user_password,
|
|
204
205
|
userid,
|
|
205
206
|
password,
|
|
206
207
|
timeout,
|
|
207
208
|
jupyter,
|
|
208
209
|
width,
|
|
209
|
-
|
|
210
|
+
home_glossary_name,
|
|
210
211
|
glossary_path,
|
|
211
212
|
root_path,
|
|
212
213
|
inbox_path,
|
|
@@ -229,15 +230,29 @@ def info(ctx):
|
|
|
229
230
|
pass
|
|
230
231
|
|
|
231
232
|
|
|
233
|
+
@info.command("Run Report")
|
|
234
|
+
@click.option("--report", help="Report to output", default="Digital-Products")
|
|
235
|
+
@click.option("--output-format", default = "TABLE", help="Output format type")
|
|
236
|
+
@click.option('--search-string', default="*", help="Search string")
|
|
237
|
+
@click.pass_context
|
|
238
|
+
def show_format_set(ctx, report, output_format, search_string):
|
|
239
|
+
"""Dynamically generate output based on a format set"""
|
|
240
|
+
c = ctx.obj
|
|
241
|
+
logger.info(f"Hey Egeria: view server @ {c.view_server_url}")
|
|
242
|
+
execute_format_set_action(
|
|
243
|
+
report, c.view_server, c.view_server_url,
|
|
244
|
+
c.userid, c.password, output_format, search_string = search_string
|
|
245
|
+
)
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
|
|
232
249
|
@info.command("tech-types")
|
|
233
250
|
@click.option("--tech_type", default="*", help="Tech type to search for")
|
|
234
251
|
@click.pass_context
|
|
235
252
|
def show_tech_types(ctx, tech_type):
|
|
236
253
|
"""List deployed technology types"""
|
|
237
254
|
c = ctx.obj
|
|
238
|
-
display_tech_types(
|
|
239
|
-
tech_type, c.view_server, c.view_server_url, c.userid, c.password
|
|
240
|
-
)
|
|
255
|
+
display_tech_types(tech_type, c.view_server, c.view_server_url, c.userid, c.password)
|
|
241
256
|
|
|
242
257
|
|
|
243
258
|
@info.command("collections")
|
|
@@ -357,7 +372,7 @@ def glossary_group(ctx):
|
|
|
357
372
|
)
|
|
358
373
|
@click.option(
|
|
359
374
|
"--output-format",
|
|
360
|
-
|
|
375
|
+
type_name = click.Choice(["FORM", "REPORT", "TABLE"]),
|
|
361
376
|
default="TABLE",
|
|
362
377
|
help="Display on screen as table, or as FORM or REPORT file",
|
|
363
378
|
)
|
|
@@ -365,24 +380,14 @@ def glossary_group(ctx):
|
|
|
365
380
|
def show_terms(ctx, search_string, glossary_guid, glossary_name, output_format):
|
|
366
381
|
"""Find and display glossary terms"""
|
|
367
382
|
c = ctx.obj
|
|
368
|
-
display_glossary_terms(
|
|
369
|
-
|
|
370
|
-
glossary_guid,
|
|
371
|
-
glossary_name,
|
|
372
|
-
c.view_server,
|
|
373
|
-
c.view_server_url,
|
|
374
|
-
c.userid,
|
|
375
|
-
c.password,
|
|
376
|
-
c.jupyter,
|
|
377
|
-
c.width,
|
|
378
|
-
output_format,
|
|
379
|
-
)
|
|
383
|
+
display_glossary_terms(search_string, glossary_guid, glossary_name, c.view_server, c.view_server_url, c.userid,
|
|
384
|
+
c.password, c.jupyter, c.width, output_format)
|
|
380
385
|
|
|
381
386
|
@glossary_group.command("glossaries")
|
|
382
387
|
@click.option("--search_string", default="*", help="Name to search for glossaries")
|
|
383
388
|
@click.option(
|
|
384
389
|
"--output-format",
|
|
385
|
-
|
|
390
|
+
type_name = click.Choice(["FORM", "REPORT", "TABLE"]),
|
|
386
391
|
default="TABLE",
|
|
387
392
|
help="Display on screen as table, or as FORM or REPORT file",
|
|
388
393
|
)
|
|
@@ -404,7 +409,7 @@ def glossaries(ctx, search_string, output_format):
|
|
|
404
409
|
@click.option("--search_string", default="*", help="Name to search for categories")
|
|
405
410
|
@click.option(
|
|
406
411
|
"--output-format",
|
|
407
|
-
|
|
412
|
+
type_name = click.Choice(["FORM", "REPORT", "TABLE"]),
|
|
408
413
|
default="TABLE",
|
|
409
414
|
help="Display on screen as table, or as FORM or REPORT file",
|
|
410
415
|
)
|
|
@@ -478,16 +483,7 @@ def show_projects(ctx, search_string):
|
|
|
478
483
|
def show_certification_types(ctx, search_string):
|
|
479
484
|
"""Show certification types"""
|
|
480
485
|
c = ctx.obj
|
|
481
|
-
display_certifications(
|
|
482
|
-
search_string,
|
|
483
|
-
c.view_server,
|
|
484
|
-
c.view_server_url,
|
|
485
|
-
c.userid,
|
|
486
|
-
c.password,
|
|
487
|
-
c.timeout,
|
|
488
|
-
c.jupyter,
|
|
489
|
-
c.width,
|
|
490
|
-
)
|
|
486
|
+
display_certifications(search_string, c.view_server, c.view_server_url, c.userid, c.password, c.timeout, c.jupyter)
|
|
491
487
|
|
|
492
488
|
|
|
493
489
|
@projects.command("project-structure")
|
|
@@ -538,7 +534,7 @@ def show_project_dependencies(ctx, project):
|
|
|
538
534
|
@click.option("--search-string", default="*", help="View the list of To-Do items")
|
|
539
535
|
@click.option(
|
|
540
536
|
"--status",
|
|
541
|
-
|
|
537
|
+
type_name = click.Choice(
|
|
542
538
|
["OPEN", "IN_PROGRESS", "WAITING", "COMPLETE", "ABANDONED", "None"],
|
|
543
539
|
case_sensitive=False,
|
|
544
540
|
),
|
|
@@ -599,15 +595,8 @@ def deployed_data(ctx):
|
|
|
599
595
|
def show_deployed_servers(ctx, search_string):
|
|
600
596
|
"""Display deployed servers"""
|
|
601
597
|
c = ctx.obj
|
|
602
|
-
display_servers_by_dep_imp(
|
|
603
|
-
|
|
604
|
-
c.view_server,
|
|
605
|
-
c.view_server_url,
|
|
606
|
-
c.userid,
|
|
607
|
-
c.password,
|
|
608
|
-
c.jupyter,
|
|
609
|
-
c.width,
|
|
610
|
-
)
|
|
598
|
+
display_servers_by_dep_imp(search_string, c.view_server, c.view_server_url, c.userid, c.password, c.jupyter,
|
|
599
|
+
c.width)
|
|
611
600
|
|
|
612
601
|
|
|
613
602
|
@deployed_data.command("deployed-schemas")
|
|
@@ -649,9 +638,7 @@ def list_catalogs(ctx, search_server):
|
|
|
649
638
|
def list_databases(ctx):
|
|
650
639
|
"""Display deployed databases"""
|
|
651
640
|
c = ctx.obj
|
|
652
|
-
list_deployed_databases(
|
|
653
|
-
c.view_server, c.view_server_url, c.userid, c.password, c.jupyter, c.width
|
|
654
|
-
)
|
|
641
|
+
list_deployed_databases(c.view_server, c.view_server_url, c.userid, c.password, c.jupyter, c.width)
|
|
655
642
|
|
|
656
643
|
|
|
657
644
|
#
|
commands/cli/egeria_my.py
CHANGED
|
@@ -14,6 +14,7 @@ import os
|
|
|
14
14
|
import click
|
|
15
15
|
from trogon import tui
|
|
16
16
|
|
|
17
|
+
from commands.cat.my_reports import start_exp2
|
|
17
18
|
from commands.cli.ops_config import Config
|
|
18
19
|
from commands.my.list_my_profile import display_my_profile
|
|
19
20
|
from commands.my.list_my_roles import display_my_roles
|
|
@@ -178,6 +179,18 @@ def show(ctx):
|
|
|
178
179
|
"""Display an Egeria Object"""
|
|
179
180
|
pass
|
|
180
181
|
|
|
182
|
+
@show.command("my-reports")
|
|
183
|
+
@click.pass_context
|
|
184
|
+
def show_my_reports(ctx):
|
|
185
|
+
"""Display my profiles
|
|
186
|
+
|
|
187
|
+
Usage: show my-profile
|
|
188
|
+
|
|
189
|
+
"""
|
|
190
|
+
c = ctx.obj
|
|
191
|
+
start_exp2(
|
|
192
|
+
# c.view_server, c.view_server_url, c.userid, c.password, c.jupyter, c.width
|
|
193
|
+
)
|
|
181
194
|
|
|
182
195
|
@show.command("my-profile")
|
|
183
196
|
@click.pass_context
|
commands/cli/egeria_ops.py
CHANGED
|
@@ -13,6 +13,8 @@ import os
|
|
|
13
13
|
|
|
14
14
|
import click
|
|
15
15
|
from trogon import tui
|
|
16
|
+
from loguru import logger
|
|
17
|
+
from pyegeria import config_logging, settings
|
|
16
18
|
|
|
17
19
|
# from pyegeria import ServerOps
|
|
18
20
|
from commands.cli.ops_config import Config
|
|
@@ -27,10 +29,10 @@ from commands.ops.gov_server_actions import (
|
|
|
27
29
|
from commands.ops.list_archives import display_archive_list
|
|
28
30
|
from commands.ops.list_catalog_targets import display_catalog_targets
|
|
29
31
|
from commands.ops.load_archive import load_archive
|
|
30
|
-
from commands.ops.
|
|
31
|
-
from commands.ops.
|
|
32
|
-
from commands.ops.
|
|
33
|
-
from commands.ops.
|
|
32
|
+
from commands.ops.monitor_active_engine_activity import display_engine_activity
|
|
33
|
+
from commands.ops.monitor_engine_activity import display_engine_activity_c
|
|
34
|
+
from commands.ops.monitor_engine_status import display_gov_eng_status
|
|
35
|
+
from commands.ops.monitor_daemon_status import (
|
|
34
36
|
display_integration_daemon_status,
|
|
35
37
|
)
|
|
36
38
|
from commands.ops.monitor_platform_status import (
|
|
@@ -43,106 +45,109 @@ from commands.ops.monitor_server_status import (
|
|
|
43
45
|
from commands.ops.refresh_integration_daemon import refresh_connector
|
|
44
46
|
from commands.ops.restart_integration_daemon import restart_connector
|
|
45
47
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
#
|
|
51
|
-
# self.userid = userid
|
|
52
|
-
# self.password = password
|
|
53
|
-
# self.timeout = timeout
|
|
54
|
-
# self.paging = paging
|
|
55
|
-
#
|
|
56
|
-
#
|
|
57
|
-
# pass_config = click.make_pass_decorator(Config)
|
|
58
|
-
|
|
48
|
+
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
49
|
+
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
50
|
+
app_settings = settings
|
|
51
|
+
app_config = app_settings.Environment
|
|
52
|
+
# config_logging()
|
|
59
53
|
|
|
60
54
|
@tui()
|
|
61
55
|
# @tui('menu', 'menu', 'A textual object_action line interface')
|
|
62
|
-
@click.version_option("
|
|
56
|
+
@click.version_option("5.4 ", prog_name="hey_egeria")
|
|
63
57
|
@click.group()
|
|
64
58
|
@click.option(
|
|
65
59
|
"--server",
|
|
66
|
-
default=
|
|
60
|
+
default=app_config.egeria_metadata_store,
|
|
67
61
|
help="Egeria metadata store to work with",
|
|
68
62
|
)
|
|
69
63
|
@click.option(
|
|
70
64
|
"--url",
|
|
71
|
-
default=
|
|
65
|
+
default=app_config.egeria_platform_url,
|
|
72
66
|
help="URL of Egeria metadata store platform to connect to",
|
|
73
67
|
)
|
|
74
68
|
@click.option(
|
|
75
69
|
"--integration_daemon",
|
|
76
|
-
default=
|
|
70
|
+
default=app_config.egeria_integration_daemon,
|
|
77
71
|
help="Egeria integration daemon to work with",
|
|
78
72
|
)
|
|
79
73
|
@click.option(
|
|
80
74
|
"--integration_daemon_url",
|
|
81
|
-
default=
|
|
75
|
+
default=app_config.egeria_integration_daemon_url,
|
|
82
76
|
help="URL of Egeria integration daemon platform to connect to",
|
|
83
77
|
)
|
|
84
78
|
@click.option(
|
|
85
79
|
"--view_server",
|
|
86
|
-
default=
|
|
80
|
+
default=app_config.egeria_view_server,
|
|
87
81
|
help="Egeria view server to work with",
|
|
88
82
|
)
|
|
89
83
|
@click.option(
|
|
90
84
|
"--view_server_url",
|
|
91
|
-
default=
|
|
85
|
+
default=app_config.egeria_view_server_url,
|
|
92
86
|
help="URL of Egeria view server platform to connect to",
|
|
93
87
|
)
|
|
94
88
|
@click.option(
|
|
95
89
|
"--engine_host",
|
|
96
|
-
default=
|
|
90
|
+
default=app_config.egeria_engine_host,
|
|
97
91
|
help="Egeria engine host to work with",
|
|
98
92
|
)
|
|
99
93
|
@click.option(
|
|
100
94
|
"--engine_host_url",
|
|
101
|
-
default=
|
|
95
|
+
default=app_config.egeria_engine_host_url,
|
|
102
96
|
help="URL of Egeria engine host platform to connect to",
|
|
103
97
|
)
|
|
104
|
-
|
|
105
|
-
"--admin_user",
|
|
106
|
-
default=os.environ.get("EGERIA_ADMIN_USER", "garygeeke"),
|
|
107
|
-
help="Egeria admin user",
|
|
108
|
-
)
|
|
109
|
-
@click.option(
|
|
110
|
-
"--admin_user_password",
|
|
111
|
-
default=os.environ.get("EGERIA_ADMIN_PASSWORD", "secret"),
|
|
112
|
-
help="Egeria admin password",
|
|
113
|
-
)
|
|
98
|
+
|
|
114
99
|
@click.option(
|
|
115
100
|
"--userid",
|
|
116
|
-
default=
|
|
101
|
+
default=EGERIA_USER,
|
|
117
102
|
help="Egeria user",
|
|
118
103
|
)
|
|
119
104
|
@click.option(
|
|
120
105
|
"--password",
|
|
121
|
-
default=
|
|
106
|
+
default=EGERIA_USER_PASSWORD,
|
|
122
107
|
help="Egeria user password",
|
|
123
108
|
)
|
|
124
109
|
@click.option("--timeout", default=60, help="Number of seconds to wait")
|
|
125
110
|
@click.option(
|
|
126
111
|
"--jupyter",
|
|
127
112
|
is_flag=True,
|
|
128
|
-
|
|
113
|
+
type=bool,
|
|
114
|
+
default=app_config.egeria_jupyter,
|
|
129
115
|
help="Enable for rendering in a Jupyter terminal",
|
|
130
116
|
)
|
|
131
117
|
@click.option(
|
|
132
118
|
"--width",
|
|
133
|
-
default=
|
|
119
|
+
default=app_config.console_width,
|
|
120
|
+
type=int,
|
|
134
121
|
help="Screen width, in characters, to use",
|
|
135
122
|
)
|
|
136
123
|
@click.option(
|
|
137
|
-
"--
|
|
138
|
-
default=
|
|
139
|
-
help="Glossary
|
|
124
|
+
"--home_glossary_name",
|
|
125
|
+
default=app_settings.User_Profile.egeria_home_glossary_name,
|
|
126
|
+
help="Glossary name to use as the home glossary",
|
|
140
127
|
)
|
|
141
128
|
@click.option(
|
|
142
129
|
"--glossary_path",
|
|
143
|
-
default=
|
|
130
|
+
default=app_config.egeria_glossary_path,
|
|
144
131
|
help="Path to glossary import/export files",
|
|
145
132
|
)
|
|
133
|
+
|
|
134
|
+
@click.option(
|
|
135
|
+
"--root_path",
|
|
136
|
+
default=app_config.pyegeria_root,
|
|
137
|
+
help="Root path to use for file operations",
|
|
138
|
+
)
|
|
139
|
+
|
|
140
|
+
@click.option(
|
|
141
|
+
"--inbox_path",
|
|
142
|
+
default=app_config.dr_egeria_inbox,
|
|
143
|
+
help="Path to inbox files",
|
|
144
|
+
)
|
|
145
|
+
@click.option(
|
|
146
|
+
"--outbox_path",
|
|
147
|
+
default=app_config.dr_egeria_outbox,
|
|
148
|
+
help="Path to outbox files",
|
|
149
|
+
)
|
|
150
|
+
|
|
146
151
|
@click.pass_context
|
|
147
152
|
def cli(
|
|
148
153
|
ctx,
|
|
@@ -154,15 +159,16 @@ def cli(
|
|
|
154
159
|
integration_daemon_url,
|
|
155
160
|
engine_host,
|
|
156
161
|
engine_host_url,
|
|
157
|
-
admin_user,
|
|
158
|
-
admin_user_password,
|
|
159
162
|
userid,
|
|
160
163
|
password,
|
|
161
164
|
timeout,
|
|
162
165
|
jupyter,
|
|
163
166
|
width,
|
|
164
|
-
|
|
167
|
+
home_glossary_name,
|
|
165
168
|
glossary_path,
|
|
169
|
+
root_path,
|
|
170
|
+
inbox_path,
|
|
171
|
+
outbox_path,
|
|
166
172
|
):
|
|
167
173
|
"""An Egeria Command Line interface for Operations"""
|
|
168
174
|
ctx.obj = Config(
|
|
@@ -174,20 +180,22 @@ def cli(
|
|
|
174
180
|
integration_daemon_url,
|
|
175
181
|
engine_host,
|
|
176
182
|
engine_host_url,
|
|
177
|
-
admin_user,
|
|
178
|
-
admin_user_password,
|
|
179
183
|
userid,
|
|
180
184
|
password,
|
|
181
185
|
timeout,
|
|
182
186
|
jupyter,
|
|
183
187
|
width,
|
|
184
|
-
|
|
188
|
+
home_glossary_name,
|
|
185
189
|
glossary_path,
|
|
190
|
+
root_path,
|
|
191
|
+
inbox_path,
|
|
192
|
+
outbox_path
|
|
186
193
|
)
|
|
187
|
-
ctx.max_content_width =
|
|
194
|
+
ctx.max_content_width = 300
|
|
188
195
|
ctx.ensure_object(Config)
|
|
189
196
|
|
|
190
197
|
|
|
198
|
+
|
|
191
199
|
@cli.group("show")
|
|
192
200
|
@click.pass_context
|
|
193
201
|
def show(ctx):
|
|
@@ -208,7 +216,7 @@ def show_platform_status(ctx):
|
|
|
208
216
|
"""Display a live status view of known platforms"""
|
|
209
217
|
c = ctx.obj
|
|
210
218
|
p_display_status(
|
|
211
|
-
c.view_server, c.view_server_url, c.
|
|
219
|
+
c.view_server, c.view_server_url, c.userid, c.password
|
|
212
220
|
)
|
|
213
221
|
|
|
214
222
|
|
|
@@ -311,7 +319,7 @@ def gov_eng_status(ctx, engine_list, list):
|
|
|
311
319
|
)
|
|
312
320
|
|
|
313
321
|
|
|
314
|
-
@engine_host.command("activity")
|
|
322
|
+
@engine_host.command("current-activity")
|
|
315
323
|
@click.option(
|
|
316
324
|
"--rowlimit",
|
|
317
325
|
default=0,
|
|
@@ -319,13 +327,7 @@ def gov_eng_status(ctx, engine_list, list):
|
|
|
319
327
|
show_default=True,
|
|
320
328
|
help="If non-zero, limit the number of rows returned",
|
|
321
329
|
)
|
|
322
|
-
|
|
323
|
-
"--compressed",
|
|
324
|
-
is_flag=True,
|
|
325
|
-
default=False,
|
|
326
|
-
show_default=True,
|
|
327
|
-
help="Compressed combines some attributes into a single column",
|
|
328
|
-
)
|
|
330
|
+
|
|
329
331
|
@click.option(
|
|
330
332
|
"--list",
|
|
331
333
|
is_flag=True,
|
|
@@ -334,16 +336,17 @@ def gov_eng_status(ctx, engine_list, list):
|
|
|
334
336
|
help="If True, a paged list will be shown",
|
|
335
337
|
)
|
|
336
338
|
@click.pass_context
|
|
337
|
-
def
|
|
339
|
+
def current_eng_activity_status(ctx, rowlimit: int, list: bool):
|
|
338
340
|
"""Show Governance Activity in engine-host"""
|
|
339
341
|
c = ctx.obj
|
|
342
|
+
compressed = False
|
|
340
343
|
if compressed:
|
|
341
344
|
display_engine_activity_c(
|
|
342
345
|
rowlimit,
|
|
343
346
|
c.view_server,
|
|
344
347
|
c.view_server_url,
|
|
345
|
-
c.
|
|
346
|
-
c.
|
|
348
|
+
c.userid,
|
|
349
|
+
c.password,
|
|
347
350
|
list,
|
|
348
351
|
c.jupyter,
|
|
349
352
|
c.width,
|
|
@@ -353,8 +356,8 @@ def eng_activity_status(ctx, rowlimit: int, list: bool, compressed: bool):
|
|
|
353
356
|
rowlimit,
|
|
354
357
|
c.view_server,
|
|
355
358
|
c.view_server_url,
|
|
356
|
-
c.
|
|
357
|
-
c.
|
|
359
|
+
c.userid,
|
|
360
|
+
c.password,
|
|
358
361
|
list,
|
|
359
362
|
c.jupyter,
|
|
360
363
|
c.width,
|
|
@@ -401,15 +404,7 @@ def integrations_status(ctx, connector_list, list):
|
|
|
401
404
|
def integrations_status(ctx, connector):
|
|
402
405
|
"""Display Catalog Targets for a connector"""
|
|
403
406
|
c = ctx.obj
|
|
404
|
-
display_catalog_targets(
|
|
405
|
-
connector,
|
|
406
|
-
c.view_server,
|
|
407
|
-
c.view_server_url,
|
|
408
|
-
c.userid,
|
|
409
|
-
c.password,
|
|
410
|
-
c.jupyter,
|
|
411
|
-
c.width,
|
|
412
|
-
)
|
|
407
|
+
display_catalog_targets(connector, c.view_server, c.view_server_url, c.userid, c.password, c.jupyter, c.width)
|
|
413
408
|
|
|
414
409
|
|
|
415
410
|
#
|