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
|
@@ -16,11 +16,8 @@ from rich.live import Live
|
|
|
16
16
|
from rich.table import Table
|
|
17
17
|
|
|
18
18
|
from pyegeria import (
|
|
19
|
-
InvalidParameterException,
|
|
20
|
-
PropertyServerException,
|
|
21
19
|
ServerOps,
|
|
22
|
-
|
|
23
|
-
print_exception_response,
|
|
20
|
+
PyegeriaException, print_basic_exception,
|
|
24
21
|
)
|
|
25
22
|
|
|
26
23
|
EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
|
|
@@ -31,8 +28,7 @@ EGERIA_VIEW_SERVER_URL = os.environ.get(
|
|
|
31
28
|
"EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
|
|
32
29
|
)
|
|
33
30
|
EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
|
|
34
|
-
|
|
35
|
-
EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
|
|
31
|
+
|
|
36
32
|
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
37
33
|
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
38
34
|
EGERIA_JUPYTER = bool(os.environ.get("EGERIA_JUPYTER", "False"))
|
|
@@ -42,12 +38,13 @@ EGERIA_WIDTH = int(os.environ.get("EGERIA_WIDTH", "220"))
|
|
|
42
38
|
def display_startup_status(
|
|
43
39
|
server: str,
|
|
44
40
|
url: str,
|
|
45
|
-
username: str,
|
|
41
|
+
username: str = EGERIA_USER,
|
|
46
42
|
password: str = EGERIA_USER_PASSWORD,
|
|
47
43
|
jupyter: bool = EGERIA_JUPYTER,
|
|
48
44
|
width: int = EGERIA_WIDTH,
|
|
49
45
|
):
|
|
50
46
|
p_client = ServerOps(server, url, username)
|
|
47
|
+
token = p_client.create_egeria_bearer_token(username, password)
|
|
51
48
|
|
|
52
49
|
def generate_table() -> Table:
|
|
53
50
|
"""Make a new table."""
|
|
@@ -91,11 +88,9 @@ def display_startup_status(
|
|
|
91
88
|
# service_status = service['serviceStatus']
|
|
92
89
|
|
|
93
90
|
except (
|
|
94
|
-
|
|
95
|
-
PropertyServerException,
|
|
96
|
-
UserNotAuthorizedException,
|
|
91
|
+
PyegeriaException
|
|
97
92
|
) as e:
|
|
98
|
-
|
|
93
|
+
print_basic_exception(e)
|
|
99
94
|
assert e.related_http_code != "200", "Invalid parameters"
|
|
100
95
|
|
|
101
96
|
|
|
@@ -22,11 +22,9 @@ from rich.live import Live
|
|
|
22
22
|
from rich.table import Table
|
|
23
23
|
|
|
24
24
|
from pyegeria import (
|
|
25
|
-
|
|
26
|
-
PropertyServerException,
|
|
25
|
+
PyegeriaException, print_basic_exception,
|
|
27
26
|
RuntimeManager,
|
|
28
|
-
|
|
29
|
-
print_exception_response,
|
|
27
|
+
print_exception_table,
|
|
30
28
|
)
|
|
31
29
|
|
|
32
30
|
EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
|
|
@@ -88,9 +86,9 @@ def display_status(
|
|
|
88
86
|
sys.exit(1)
|
|
89
87
|
|
|
90
88
|
for platform in platform_list:
|
|
91
|
-
platform_name = platform
|
|
92
|
-
platform_guid = platform
|
|
93
|
-
platform_desc = platform
|
|
89
|
+
platform_name = platform.get("display_name", platform.get("properties", {}).get("displayName", "---"))
|
|
90
|
+
platform_guid = platform.get("guid", platform.get("elementHeader", {}).get("guid"))
|
|
91
|
+
platform_desc = platform.get("description", platform.get("properties", {}).get("resourceDescription", "---"))
|
|
94
92
|
p_server_list = ""
|
|
95
93
|
|
|
96
94
|
platform_report = p_client.get_platform_report(platform_guid)
|
|
@@ -154,11 +152,9 @@ def display_status(
|
|
|
154
152
|
live.update(generate_table())
|
|
155
153
|
|
|
156
154
|
except (
|
|
157
|
-
|
|
158
|
-
PropertyServerException,
|
|
159
|
-
UserNotAuthorizedException,
|
|
155
|
+
PyegeriaException
|
|
160
156
|
) as e:
|
|
161
|
-
|
|
157
|
+
print_basic_exception(e)
|
|
162
158
|
except KeyboardInterrupt:
|
|
163
159
|
pass
|
|
164
160
|
finally:
|
|
@@ -15,14 +15,14 @@ import time
|
|
|
15
15
|
from rich.live import Live
|
|
16
16
|
from rich.table import Table
|
|
17
17
|
|
|
18
|
-
from pyegeria._exceptions import (
|
|
19
|
-
|
|
20
|
-
PropertyServerException,
|
|
21
|
-
UserNotAuthorizedException,
|
|
22
|
-
print_exception_response,
|
|
18
|
+
from pyegeria.core._exceptions import (
|
|
19
|
+
PyegeriaInvalidParameterException,
|
|
20
|
+
PyegeriaAPIException as PropertyServerException,
|
|
21
|
+
PyegeriaUnauthorizedException as UserNotAuthorizedException,
|
|
22
|
+
print_basic_exception as print_exception_response,
|
|
23
23
|
)
|
|
24
|
-
from pyegeria.core_omag_server_config import CoreServerConfig
|
|
25
|
-
from pyegeria.server_operations import ServerOps
|
|
24
|
+
from pyegeria.omvs.core_omag_server_config import CoreServerConfig
|
|
25
|
+
from pyegeria.omvs.server_operations import ServerOps
|
|
26
26
|
|
|
27
27
|
disable_ssl_warnings = True
|
|
28
28
|
|
|
@@ -107,7 +107,7 @@ def display_status(
|
|
|
107
107
|
live.update(generate_table())
|
|
108
108
|
|
|
109
109
|
except (
|
|
110
|
-
|
|
110
|
+
PyegeriaInvalidParameterException,
|
|
111
111
|
PropertyServerException,
|
|
112
112
|
UserNotAuthorizedException,
|
|
113
113
|
) as e:
|
|
@@ -16,11 +16,7 @@ from rich.live import Live
|
|
|
16
16
|
from rich.table import Table
|
|
17
17
|
|
|
18
18
|
from pyegeria import (
|
|
19
|
-
|
|
20
|
-
PropertyServerException,
|
|
21
|
-
ServerOps,
|
|
22
|
-
UserNotAuthorizedException,
|
|
23
|
-
print_exception_response,
|
|
19
|
+
PyegeriaAPIException, PyegeriaClientException, print_basic_exception, print_exception_table ServerOps
|
|
24
20
|
)
|
|
25
21
|
|
|
26
22
|
EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
|
|
@@ -12,10 +12,10 @@ import argparse
|
|
|
12
12
|
import os
|
|
13
13
|
|
|
14
14
|
from pyegeria import EgeriaTech
|
|
15
|
-
from pyegeria._exceptions import (
|
|
16
|
-
|
|
17
|
-
PropertyServerException,
|
|
18
|
-
print_exception_response,
|
|
15
|
+
from pyegeria.core._exceptions import (
|
|
16
|
+
PyegeriaInvalidParameterException,
|
|
17
|
+
PyegeriaAPIException as PropertyServerException,
|
|
18
|
+
print_basic_exception as print_exception_response,
|
|
19
19
|
)
|
|
20
20
|
|
|
21
21
|
EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "qs-metadata-store")
|
|
@@ -52,7 +52,7 @@ def refresh_connector(
|
|
|
52
52
|
|
|
53
53
|
print(f"\n===> Integration Daemon '{server}' refreshed {statement}.")
|
|
54
54
|
|
|
55
|
-
except (
|
|
55
|
+
except (PyegeriaInvalidParameterException, PropertyServerException) as e:
|
|
56
56
|
print_exception_response(e)
|
|
57
57
|
|
|
58
58
|
|
|
@@ -12,10 +12,10 @@ import argparse
|
|
|
12
12
|
import os
|
|
13
13
|
|
|
14
14
|
from pyegeria import EgeriaTech
|
|
15
|
-
from pyegeria._exceptions import (
|
|
16
|
-
|
|
17
|
-
PropertyServerException,
|
|
18
|
-
print_exception_response,
|
|
15
|
+
from pyegeria.core._exceptions import (
|
|
16
|
+
PyegeriaInvalidParameterException,
|
|
17
|
+
PyegeriaAPIException as PropertyServerException,
|
|
18
|
+
print_basic_exception as print_exception_response,
|
|
19
19
|
)
|
|
20
20
|
|
|
21
21
|
EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "qs-metadata-store")
|
|
@@ -51,7 +51,7 @@ def restart_connector(
|
|
|
51
51
|
|
|
52
52
|
print(f"\n===> Integration Daemon '{server}' restarted {statement}.")
|
|
53
53
|
|
|
54
|
-
except (
|
|
54
|
+
except (PyegeriaInvalidParameterException, PropertyServerException) as e:
|
|
55
55
|
print_exception_response(e)
|
|
56
56
|
|
|
57
57
|
|
|
@@ -18,11 +18,11 @@ from rich.table import Table
|
|
|
18
18
|
from textual.widgets import DataTable
|
|
19
19
|
|
|
20
20
|
from pyegeria import EgeriaTech
|
|
21
|
-
from pyegeria._exceptions import (
|
|
22
|
-
|
|
23
|
-
PropertyServerException,
|
|
24
|
-
UserNotAuthorizedException,
|
|
25
|
-
print_exception_response,
|
|
21
|
+
from pyegeria.core._exceptions import (
|
|
22
|
+
PyegeriaInvalidParameterException,
|
|
23
|
+
PyegeriaAPIException as PropertyServerException,
|
|
24
|
+
PyegeriaUnauthorizedException as UserNotAuthorizedException,
|
|
25
|
+
print_basic_exception as print_exception_response,
|
|
26
26
|
)
|
|
27
27
|
|
|
28
28
|
EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "qs-metadata-store")
|
|
@@ -224,7 +224,7 @@ def display_integration_daemon_status(
|
|
|
224
224
|
return generate_table()
|
|
225
225
|
|
|
226
226
|
except (
|
|
227
|
-
|
|
227
|
+
PyegeriaInvalidParameterException,
|
|
228
228
|
PropertyServerException,
|
|
229
229
|
UserNotAuthorizedException,
|
|
230
230
|
) as e:
|
commands/ops/x_engine_actions.py
CHANGED
|
@@ -12,10 +12,10 @@ import click
|
|
|
12
12
|
|
|
13
13
|
# from ops_config import Config, pass_config
|
|
14
14
|
from pyegeria import EgeriaTech
|
|
15
|
-
from pyegeria._exceptions import (
|
|
16
|
-
|
|
17
|
-
PropertyServerException,
|
|
18
|
-
print_exception_response,
|
|
15
|
+
from pyegeria.core._exceptions import (
|
|
16
|
+
PyegeriaInvalidParameterException,
|
|
17
|
+
PyegeriaAPIException as PropertyServerException,
|
|
18
|
+
print_basic_exception as print_exception_response,
|
|
19
19
|
)
|
|
20
20
|
|
|
21
21
|
|
|
@@ -32,7 +32,7 @@ def stop_server(ctx, server):
|
|
|
32
32
|
|
|
33
33
|
p_client.shutdown_server(server_guid)
|
|
34
34
|
click.echo(f"Stopped server {server}")
|
|
35
|
-
except (
|
|
35
|
+
except (PyegeriaInvalidParameterException, PropertyServerException) as e:
|
|
36
36
|
print_exception_response(e)
|
|
37
37
|
finally:
|
|
38
38
|
p_client.close_session()
|
|
@@ -51,7 +51,7 @@ def start_server(ctx, server):
|
|
|
51
51
|
|
|
52
52
|
click.echo(f"Started server {server}")
|
|
53
53
|
|
|
54
|
-
except (
|
|
54
|
+
except (PyegeriaInvalidParameterException, PropertyServerException) as e:
|
|
55
55
|
print_exception_response(e)
|
|
56
56
|
finally:
|
|
57
57
|
p_client.close_session()
|
|
@@ -70,7 +70,7 @@ def refresh(ctx):
|
|
|
70
70
|
|
|
71
71
|
click.echo(f"Refreshed server {c.engine_host}")
|
|
72
72
|
|
|
73
|
-
except (
|
|
73
|
+
except (PyegeriaInvalidParameterException, PropertyServerException) as e:
|
|
74
74
|
print_exception_response(e)
|
|
75
75
|
finally:
|
|
76
76
|
p_client.close_session()
|
commands/tech/__init__.py
CHANGED
|
@@ -8,21 +8,16 @@ Execute Generic actions.
|
|
|
8
8
|
|
|
9
9
|
"""
|
|
10
10
|
|
|
11
|
-
import csv
|
|
12
|
-
import json
|
|
13
11
|
import os
|
|
14
|
-
import sys
|
|
15
|
-
import time
|
|
16
|
-
from datetime import datetime
|
|
17
12
|
|
|
18
13
|
import click
|
|
19
14
|
|
|
20
15
|
|
|
21
|
-
from pyegeria import EgeriaTech
|
|
22
|
-
from pyegeria._exceptions import (
|
|
23
|
-
|
|
24
|
-
PropertyServerException,
|
|
25
|
-
print_exception_response,
|
|
16
|
+
from pyegeria import EgeriaTech
|
|
17
|
+
from pyegeria.core._exceptions import (
|
|
18
|
+
PyegeriaInvalidParameterException,
|
|
19
|
+
PyegeriaAPIException as PropertyServerException,
|
|
20
|
+
print_basic_exception as print_exception_response,
|
|
26
21
|
)
|
|
27
22
|
|
|
28
23
|
EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
|
|
@@ -66,7 +61,7 @@ def delete_element(cascade, server, url, userid, password, timeout, element_guid
|
|
|
66
61
|
|
|
67
62
|
click.echo(f"Deleted element: {element_guid}")
|
|
68
63
|
|
|
69
|
-
except (
|
|
64
|
+
except (PyegeriaInvalidParameterException, PropertyServerException) as e:
|
|
70
65
|
print_exception_response(e)
|
|
71
66
|
finally:
|
|
72
67
|
m_client.close_session()
|
|
@@ -22,26 +22,18 @@ from rich.tree import Tree
|
|
|
22
22
|
|
|
23
23
|
from pyegeria import (
|
|
24
24
|
ClassificationManager,
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
PyegeriaException,
|
|
26
|
+
print_basic_exception,
|
|
27
|
+
settings,
|
|
28
|
+
config_logging, PyegeriaAPIException, print_exception_table
|
|
29
29
|
)
|
|
30
30
|
|
|
31
|
-
EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
|
|
32
|
-
EGERIA_KAFKA_ENDPOINT = os.environ.get("KAFKA_ENDPOINT", "localhost:9092")
|
|
33
|
-
EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
|
|
34
|
-
EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
|
|
35
|
-
EGERIA_VIEW_SERVER_URL = os.environ.get(
|
|
36
|
-
"EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
|
|
37
|
-
)
|
|
38
|
-
EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
|
|
39
|
-
EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
|
|
40
|
-
EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
|
|
41
31
|
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
42
32
|
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
43
|
-
|
|
44
|
-
|
|
33
|
+
|
|
34
|
+
app_config = settings.Environment
|
|
35
|
+
config_logging()
|
|
36
|
+
console = Console(width=app_config.console_width)
|
|
45
37
|
|
|
46
38
|
|
|
47
39
|
def display_elements(
|
|
@@ -50,8 +42,8 @@ def display_elements(
|
|
|
50
42
|
url: str,
|
|
51
43
|
username: str,
|
|
52
44
|
user_password: str,
|
|
53
|
-
jupyter: bool =
|
|
54
|
-
width: int =
|
|
45
|
+
jupyter: bool = app_config.egeria_jupyter,
|
|
46
|
+
width: int = app_config.console_width,
|
|
55
47
|
):
|
|
56
48
|
c = ClassificationManager(server, url, user_id=username, user_pwd=user_password)
|
|
57
49
|
|
|
@@ -101,17 +93,16 @@ def display_elements(
|
|
|
101
93
|
|
|
102
94
|
c.close_session()
|
|
103
95
|
|
|
104
|
-
except
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
UserNotAuthorizedException,
|
|
108
|
-
ValueError,
|
|
109
|
-
) as e:
|
|
110
|
-
if type(e) is str:
|
|
111
|
-
console.print_exception()
|
|
96
|
+
except PyegeriaAPIException as e:
|
|
97
|
+
if e.response_egeria_msg_id == "OMAG-COMMON-400-018":
|
|
98
|
+
console.print(f"\n ===> Looks like the type {om_type} isn't known...\n")
|
|
112
99
|
else:
|
|
113
|
-
|
|
100
|
+
print_basic_exception(e)
|
|
101
|
+
except PyegeriaException as e:
|
|
102
|
+
if e.response_egeria_msg_id == "OMAG-COMMON-400-018":
|
|
114
103
|
console.print(f"\n ===> Looks like the type {om_type} isn't known...\n")
|
|
104
|
+
else:
|
|
105
|
+
print_basic_exception(e)
|
|
115
106
|
|
|
116
107
|
|
|
117
108
|
def main():
|
|
@@ -124,8 +115,8 @@ def main():
|
|
|
124
115
|
# parser.add_argument("--sponsor", help="Name of sponsor to search")
|
|
125
116
|
args = parser.parse_args()
|
|
126
117
|
|
|
127
|
-
server = args.server if args.server is not None else
|
|
128
|
-
url = args.url if args.url is not None else
|
|
118
|
+
server = args.server if args.server is not None else app_config.egeria_view_server
|
|
119
|
+
url = args.url if args.url is not None else app_config.egeria_view_server_url
|
|
129
120
|
userid = args.userid if args.userid is not None else EGERIA_USER
|
|
130
121
|
user_pass = args.password if args.password is not None else EGERIA_USER_PASSWORD
|
|
131
122
|
|
commands/tech/get_guid_info.py
CHANGED
|
@@ -21,27 +21,19 @@ from rich.text import Text
|
|
|
21
21
|
from rich.tree import Tree
|
|
22
22
|
|
|
23
23
|
from pyegeria import (
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
24
|
+
ServerClient,
|
|
25
|
+
PyegeriaException,
|
|
26
|
+
print_basic_exception,
|
|
27
|
+
settings,
|
|
28
|
+
config_logging
|
|
29
29
|
)
|
|
30
30
|
|
|
31
|
-
EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
|
|
32
|
-
EGERIA_KAFKA_ENDPOINT = os.environ.get("KAFKA_ENDPOINT", "localhost:9092")
|
|
33
|
-
EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
|
|
34
|
-
EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
|
|
35
|
-
EGERIA_VIEW_SERVER_URL = os.environ.get(
|
|
36
|
-
"EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
|
|
37
|
-
)
|
|
38
|
-
EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
|
|
39
|
-
EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
|
|
40
|
-
EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
|
|
41
31
|
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
42
32
|
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
43
|
-
|
|
44
|
-
|
|
33
|
+
|
|
34
|
+
app_config = settings.Environment
|
|
35
|
+
config_logging()
|
|
36
|
+
console = Console(width=app_config.console_width)
|
|
45
37
|
|
|
46
38
|
|
|
47
39
|
def display_guid(
|
|
@@ -50,34 +42,25 @@ def display_guid(
|
|
|
50
42
|
url: str,
|
|
51
43
|
username: str,
|
|
52
44
|
user_password: str,
|
|
53
|
-
jupyter: bool =
|
|
54
|
-
width: int =
|
|
45
|
+
jupyter: bool = app_config.egeria_jupyter,
|
|
46
|
+
width: int = app_config.console_width,
|
|
55
47
|
):
|
|
56
|
-
c =
|
|
57
|
-
url = (
|
|
58
|
-
f"{url}/servers/{server}/open-metadata/repository-services/users/{username}/"
|
|
59
|
-
f"instances/entity/{guid}"
|
|
60
|
-
)
|
|
61
|
-
# c = ClassificationManager(server, url)
|
|
62
|
-
|
|
48
|
+
c = ServerClient(server, url, user_id=username)
|
|
63
49
|
bearer_token = c.create_egeria_bearer_token(username, user_password)
|
|
64
50
|
|
|
65
51
|
try:
|
|
66
52
|
console = Console(
|
|
67
53
|
width=width, force_terminal=not jupyter, style="bold white on black"
|
|
68
54
|
)
|
|
69
|
-
r = c.
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
p = e["properties"]["instanceProperties"]
|
|
75
|
-
|
|
76
|
-
type_name = Text(f"Type is: {e['type']['typeDefName']}")
|
|
55
|
+
r = c._get_element_by_guid_(guid)
|
|
56
|
+
el = r["elementHeader"]
|
|
57
|
+
p = r["properties"]
|
|
58
|
+
|
|
59
|
+
type_name = Text(f"Type is: {el['type']['typeName']}")
|
|
77
60
|
metadataCollection = Text(
|
|
78
|
-
f"Metadadata Collection: {
|
|
61
|
+
f"Metadadata Collection: {el['origin']['homeMetadataCollectionName']}"
|
|
79
62
|
)
|
|
80
|
-
created = Text(f"Created at: {
|
|
63
|
+
created = Text(f"Created at: {el['versions']['createTime']}")
|
|
81
64
|
details = Text(f"Details: {json.dumps(p, indent=2)}")
|
|
82
65
|
|
|
83
66
|
tree = Tree(
|
|
@@ -95,9 +78,7 @@ def display_guid(
|
|
|
95
78
|
c.close_session()
|
|
96
79
|
|
|
97
80
|
except (
|
|
98
|
-
|
|
99
|
-
PropertyServerException,
|
|
100
|
-
UserNotAuthorizedException,
|
|
81
|
+
PyegeriaException,
|
|
101
82
|
ValueError,
|
|
102
83
|
) as e:
|
|
103
84
|
if type(e) is str:
|
|
@@ -117,14 +98,14 @@ def main():
|
|
|
117
98
|
# parser.add_argument("--sponsor", help="Name of sponsor to search")
|
|
118
99
|
args = parser.parse_args()
|
|
119
100
|
|
|
120
|
-
server = args.server if args.server is not None else
|
|
121
|
-
url = args.url if args.url is not None else
|
|
101
|
+
server = args.server if args.server is not None else app_config.egeria_view_server
|
|
102
|
+
url = args.url if args.url is not None else app_config.egeria_view_server_url
|
|
122
103
|
userid = args.userid if args.userid is not None else EGERIA_USER
|
|
123
104
|
user_pass = args.password if args.password is not None else EGERIA_USER_PASSWORD
|
|
124
105
|
|
|
125
106
|
try:
|
|
126
107
|
guid = Prompt.ask("Enter the GUID to retrieve", default=None)
|
|
127
|
-
display_guid(guid, server, url, userid, user_pass)
|
|
108
|
+
display_guid(guid.strip(), server, url, userid, user_pass)
|
|
128
109
|
except KeyboardInterrupt:
|
|
129
110
|
pass
|
|
130
111
|
|
|
@@ -20,30 +20,19 @@ from rich.tree import Tree
|
|
|
20
20
|
|
|
21
21
|
from pyegeria import (
|
|
22
22
|
AutomatedCuration,
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
PyegeriaException,
|
|
24
|
+
print_basic_exception,
|
|
25
|
+
settings,
|
|
26
|
+
config_logging
|
|
26
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")
|
|
28
|
+
|
|
39
29
|
EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
|
|
40
30
|
EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
|
|
41
|
-
EGERIA_JUPYTER = bool(os.environ.get("EGERIA_JUPYTER", "False"))
|
|
42
|
-
EGERIA_WIDTH = int(os.environ.get("EGERIA_WIDTH", "200"))
|
|
43
31
|
|
|
44
|
-
|
|
32
|
+
app_config = settings.Environment
|
|
33
|
+
config_logging()
|
|
34
|
+
console = Console(width = app_config.console_width)
|
|
45
35
|
|
|
46
|
-
disable_ssl_warnings = True
|
|
47
36
|
|
|
48
37
|
|
|
49
38
|
def tech_details_viewer(
|
|
@@ -52,20 +41,18 @@ def tech_details_viewer(
|
|
|
52
41
|
platform_url: str,
|
|
53
42
|
user: str,
|
|
54
43
|
user_password: str,
|
|
55
|
-
jupyter: bool =
|
|
56
|
-
width: int =
|
|
44
|
+
jupyter: bool = app_config.egeria_jupyter,
|
|
45
|
+
width: int = app_config.console_width,
|
|
57
46
|
):
|
|
58
47
|
console = Console(width=width, force_terminal=not jupyter)
|
|
59
48
|
|
|
60
|
-
# print(f"tech is {tech} of type {type(tech)}")
|
|
61
|
-
# sys.exit(0)
|
|
62
49
|
def view_tech_details(
|
|
63
50
|
a_client: AutomatedCuration, root_collection_name: str, tree: Tree
|
|
64
51
|
) -> Tree:
|
|
65
52
|
l2: Tree = None
|
|
66
|
-
tech_details = a_client.
|
|
53
|
+
tech_details = a_client.get_tech_type_detail(tech)
|
|
67
54
|
if (type(tech_details) is dict) and (len(tech_details) > 0):
|
|
68
|
-
name = tech_details.get("
|
|
55
|
+
name = tech_details.get("displayName", "---")
|
|
69
56
|
qualified_name = tech_details.get("qualifiedName", "---")
|
|
70
57
|
category = tech_details.get("category", "---")
|
|
71
58
|
description = tech_details.get("description", "---")
|
|
@@ -95,16 +82,16 @@ def tech_details_viewer(
|
|
|
95
82
|
f"[bold bright_white]{resource.get('resourceUse', '---')}"
|
|
96
83
|
)
|
|
97
84
|
resource_use_description = Text(
|
|
98
|
-
f"[bold bright_white]{resource.get('
|
|
85
|
+
f"[bold bright_white]{resource.get('description', '---')}"
|
|
99
86
|
)
|
|
100
87
|
type_name = Text(
|
|
101
|
-
f"[bold bright_white]{resource['relatedElement']['type'].get('typeName', '---')}"
|
|
88
|
+
f"[bold bright_white]{resource['relatedElement']['elementHeader']['type'].get('typeName', '---')}"
|
|
102
89
|
)
|
|
103
90
|
unique_name = Text(
|
|
104
|
-
f"[bold bright_white]{resource['relatedElement'].get('
|
|
91
|
+
f"[bold bright_white]{resource['relatedElement']['properties'].get('qualifiedName', '---')}"
|
|
105
92
|
)
|
|
106
93
|
related_guid = Text(
|
|
107
|
-
f"[bold bright_white]{resource['relatedElement'].get('guid', '---')}"
|
|
94
|
+
f"[bold bright_white]{resource['relatedElement']['elementHeader'].get('guid', '---')}"
|
|
108
95
|
)
|
|
109
96
|
resource_text = (
|
|
110
97
|
f"[bold red]Resource\n"
|
|
@@ -139,11 +126,9 @@ def tech_details_viewer(
|
|
|
139
126
|
print(tree)
|
|
140
127
|
|
|
141
128
|
except (
|
|
142
|
-
|
|
143
|
-
PropertyServerException,
|
|
144
|
-
UserNotAuthorizedException,
|
|
129
|
+
PyegeriaException,
|
|
145
130
|
) as e:
|
|
146
|
-
|
|
131
|
+
print_basic_exception(e)
|
|
147
132
|
|
|
148
133
|
|
|
149
134
|
def main():
|
|
@@ -155,8 +140,8 @@ def main():
|
|
|
155
140
|
parser.add_argument("--password", help="User Password")
|
|
156
141
|
args = parser.parse_args()
|
|
157
142
|
|
|
158
|
-
server = args.server if args.server is not None else
|
|
159
|
-
url = args.url if args.url is not None else
|
|
143
|
+
server = args.server if args.server is not None else app_config.egeria_view_server
|
|
144
|
+
url = args.url if args.url is not None else app_config.egeria_view_server_url
|
|
160
145
|
userid = args.userid if args.userid is not None else EGERIA_USER
|
|
161
146
|
user_pass = args.password if args.password is not None else EGERIA_USER_PASSWORD
|
|
162
147
|
try:
|