pyegeria 0.4.1__tar.gz → 0.5.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pyegeria-0.4.1/src/pyegeria.egg-info → pyegeria-0.5.0}/PKG-INFO +16 -16
- pyegeria-0.5.0/examples/widgets/catalog_user/__init__.py +10 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/catalog_user/view_asset_graph.py +10 -11
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/operational/view_server_status.py +2 -4
- pyegeria-0.5.0/pyproject.toml +57 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/automated_curation_omvs.py +6 -6
- pyegeria-0.5.0/src/pyegeria/config.toml +11 -0
- pyegeria-0.5.0/src/pyegeria/core_guids.py +121 -0
- pyegeria-0.4.1/MANIFEST.in +0 -1
- pyegeria-0.4.1/PKG-INFO +0 -62
- pyegeria-0.4.1/examples/.DS_Store +0 -0
- pyegeria-0.4.1/examples/Coco_config/README.md +0 -19
- pyegeria-0.4.1/examples/Coco_config/__init__.py +0 -4
- pyegeria-0.4.1/examples/Coco_config/__pycache__/globals.cpython-312.pyc +0 -0
- pyegeria-0.4.1/examples/Coco_config/config_cocoMDS1.py +0 -107
- pyegeria-0.4.1/examples/Coco_config/config_cocoMDS2.py +0 -109
- pyegeria-0.4.1/examples/Coco_config/config_cocoMDS3.py +0 -104
- pyegeria-0.4.1/examples/Coco_config/config_cocoMDS4.py +0 -95
- pyegeria-0.4.1/examples/Coco_config/config_cocoMDS5.py +0 -97
- pyegeria-0.4.1/examples/Coco_config/config_cocoMDS6.py +0 -112
- pyegeria-0.4.1/examples/Coco_config/config_cocoMDSx.py +0 -114
- pyegeria-0.4.1/examples/Coco_config/config_cocoView1.py +0 -158
- pyegeria-0.4.1/examples/Coco_config/config_exchangeDL01.py +0 -104
- pyegeria-0.4.1/examples/Coco_config/config_governDL01.py +0 -79
- pyegeria-0.4.1/examples/Coco_config/config_monitorDev01.py +0 -58
- pyegeria-0.4.1/examples/Coco_config/config_monitorGov01.py +0 -217
- pyegeria-0.4.1/examples/Coco_config/globals.py +0 -153
- pyegeria-0.4.1/examples/Coco_config/start_all_coco.py +0 -9
- pyegeria-0.4.1/examples/Doc_Samples/Create_Collection_Sample.py +0 -292
- pyegeria-0.4.1/examples/Doc_Samples/Create_Sustainability_Collection_Sample.py +0 -115
- pyegeria-0.4.1/examples/Jupyter Notebooks/P-egeria-server-config.ipynb +0 -2137
- pyegeria-0.4.1/examples/Jupyter Notebooks/README.md +0 -2
- pyegeria-0.4.1/examples/Jupyter Notebooks/common/P-environment-check.ipynb +0 -115
- pyegeria-0.4.1/examples/Jupyter Notebooks/common/__init__.py +0 -15
- pyegeria-0.4.1/examples/Jupyter Notebooks/common/common-functions.ipynb +0 -4694
- pyegeria-0.4.1/examples/Jupyter Notebooks/common/environment-check.ipynb +0 -53
- pyegeria-0.4.1/examples/Jupyter Notebooks/common/globals.ipynb +0 -184
- pyegeria-0.4.1/examples/Jupyter Notebooks/common/globals.py +0 -153
- pyegeria-0.4.1/examples/Jupyter Notebooks/common/orig_globals.py +0 -151
- pyegeria-0.4.1/examples/__init__.py +0 -4
- pyegeria-0.4.1/examples/__pycache__/__init__.cpython-312.pyc +0 -0
- pyegeria-0.4.1/examples/widgets/.DS_Store +0 -0
- pyegeria-0.4.1/examples/widgets/README.md +0 -34
- pyegeria-0.4.1/examples/widgets/__init__.py +0 -4
- pyegeria-0.4.1/examples/widgets/__pycache__/__init__.cpython-312.pyc +0 -0
- pyegeria-0.4.1/examples/widgets/__pycache__/server_status_widget.cpython-312-pytest-7.4.4.pyc +0 -0
- pyegeria-0.4.1/examples/widgets/personal_organizer/__init__.py +0 -0
- pyegeria-0.4.1/pyproject.toml +0 -42
- pyegeria-0.4.1/setup.cfg +0 -4
- pyegeria-0.4.1/setup.py +0 -83
- pyegeria-0.4.1/src/pyegeria/core_guids.py +0 -128
- pyegeria-0.4.1/src/pyegeria.egg-info/SOURCES.txt +0 -125
- pyegeria-0.4.1/src/pyegeria.egg-info/dependency_links.txt +0 -1
- pyegeria-0.4.1/src/pyegeria.egg-info/requires.txt +0 -9
- pyegeria-0.4.1/src/pyegeria.egg-info/top_level.txt +0 -1
- pyegeria-0.4.1/tests/test_Xglossary_manager_omvs.py +0 -273
- pyegeria-0.4.1/tests/test_asset_catalog_omvs.py +0 -247
- pyegeria-0.4.1/tests/test_automated_curation_omvs.py +0 -1062
- pyegeria-0.4.1/tests/test_client.py +0 -97
- pyegeria-0.4.1/tests/test_collection_manager_omvs.py +0 -1193
- pyegeria-0.4.1/tests/test_core_omag_server_config.py +0 -1622
- pyegeria-0.4.1/tests/test_full_omag_server_config.py +0 -334
- pyegeria-0.4.1/tests/test_glossary_omvs.py +0 -261
- pyegeria-0.4.1/tests/test_loaded_resources.py +0 -78
- pyegeria-0.4.1/tests/test_my_profile_omvs.py +0 -281
- pyegeria-0.4.1/tests/test_platform_services.py +0 -854
- pyegeria-0.4.1/tests/test_project_manager_omvs.py +0 -704
- pyegeria-0.4.1/tests/test_registered_info.py +0 -151
- pyegeria-0.4.1/tests/test_runtime_manager.py +0 -226
- pyegeria-0.4.1/tests/test_server_operations.py +0 -194
- pyegeria-0.4.1/tests/test_util_exp.py +0 -213
- pyegeria-0.4.1/tests/test_valid_metadata_omvs.py +0 -390
- pyegeria-0.4.1/tests/test_validators.py +0 -219
- {pyegeria-0.4.1 → pyegeria-0.5.0}/LICENSE +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/README.md +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/catalog_user/README.md +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/catalog_user/list_assets.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/catalog_user/view_collection.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/catalog_user/view_glossary.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/developer/README.md +0 -0
- {pyegeria-0.4.1/examples/widgets/catalog_user → pyegeria-0.5.0/examples/widgets/developer}/__init__.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/developer/get_guid_info.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/developer/get_tech_details.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/developer/list_asset_types.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/developer/list_registered_services.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/developer/list_relationship_types.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/developer/list_tech_templates.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/developer/list_tech_types.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/developer/list_valid_metadata_values.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/operational/README.md +0 -0
- {pyegeria-0.4.1/examples/widgets/developer → pyegeria-0.5.0/examples/widgets/operational}/__init__.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/operational/get_tech_type_elements.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/operational/get_tech_type_template.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/operational/view_asset_events.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/operational/view_coco_status.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/operational/view_eng_action_status.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/operational/view_gov_eng_status.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/operational/view_integ_daemon_status.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/operational/view_platform_status.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/operational/view_server_list.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/personal_organizer/README.md +0 -0
- {pyegeria-0.4.1/examples/widgets/operational → pyegeria-0.5.0/examples/widgets/personal_organizer}/__init__.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/personal_organizer/get_my_profile.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/personal_organizer/list_projects.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/personal_organizer/list_todos.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/personal_organizer/view_my_todos.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/examples/widgets/personal_organizer/view_open_todos.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/Xfeedback_manager_omvs.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/Xloaded_resources_omvs.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/__init__.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/_client.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/_deprecated_gov_engine.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/_exceptions.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/_globals.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/_validators.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/action_author_omvs.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/asset_catalog_omvs.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/collection_manager_omvs.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/core_omag_server_config.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/full_omag_server_config.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/glossary_browser_omvs.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/glossary_manager_omvs.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/my_profile_omvs.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/platform_services.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/project_manager_omvs.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/registered_info.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/runtime_manager_omvs.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/server_operations.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/utils.py +0 -0
- {pyegeria-0.4.1 → pyegeria-0.5.0}/src/pyegeria/valid_metadata_omvs.py +0 -0
@@ -1,27 +1,27 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: pyegeria
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.5.0
|
4
4
|
Summary: A python client for Egeria
|
5
|
-
Home-page: https://
|
6
|
-
|
7
|
-
Author-email: Dan Wolfson <dan.wolfson@pdr-associates.com>
|
8
|
-
Project-URL: Homepage, https://github.com/odpi/egeria-python
|
9
|
-
Project-URL: Issues, https://github.com/odpi/egeria-python/issues
|
5
|
+
Home-page: https://github.com/odpi/egeria-python
|
6
|
+
License: Apache 2.0
|
10
7
|
Keywords: egeria,metadata,governance
|
8
|
+
Author: Dan Wolfson
|
9
|
+
Author-email: dan.wolfson@pdr-associates.com
|
10
|
+
Requires-Python: >=3.10,<4.0
|
11
11
|
Classifier: License :: OSI Approved :: Apache Software License
|
12
|
+
Classifier: License :: Other/Proprietary License
|
12
13
|
Classifier: Programming Language :: Python
|
13
14
|
Classifier: Programming Language :: Python :: 3
|
14
|
-
|
15
|
+
Classifier: Programming Language :: Python :: 3.10
|
16
|
+
Classifier: Programming Language :: Python :: 3.11
|
17
|
+
Classifier: Programming Language :: Python :: 3.12
|
18
|
+
Requires-Dist: httpx (>=0.26.0,<0.27.0)
|
19
|
+
Requires-Dist: pytest (>=8.0.0,<9.0.0)
|
20
|
+
Requires-Dist: rich (>=13.7.0,<14.0.0)
|
21
|
+
Requires-Dist: setuptools (>=69.0.3,<70.0.0)
|
22
|
+
Requires-Dist: validators (>=0.22.0,<0.23.0)
|
23
|
+
Project-URL: Repository, https://github.com/odpi/egeria-python
|
15
24
|
Description-Content-Type: text/markdown
|
16
|
-
License-File: LICENSE
|
17
|
-
Requires-Dist: requests~=2.31.0
|
18
|
-
Requires-Dist: validators~=0.22.0
|
19
|
-
Requires-Dist: pytest~=7.4.2
|
20
|
-
Requires-Dist: urllib3~=1.26.15
|
21
|
-
Requires-Dist: rich~=13.7.1
|
22
|
-
Requires-Dist: httpx~=0.26.0
|
23
|
-
Provides-Extra: tests
|
24
|
-
Requires-Dist: pytest; extra == "tests"
|
25
25
|
|
26
26
|
<!-- SPDX-License-Identifier: CC-BY-4.0 -->
|
27
27
|
<!-- Copyright Contributors to the ODPi Egeria project. -->
|
@@ -40,7 +40,7 @@ guid_list = []
|
|
40
40
|
|
41
41
|
def asset_viewer(asset_guid: str, server_name:str, platform_url:str, user:str):
|
42
42
|
|
43
|
-
def build_classifications(classification: dict) ->
|
43
|
+
def build_classifications(classification: dict) -> str:
|
44
44
|
|
45
45
|
class_md = ""
|
46
46
|
for c in classification:
|
@@ -49,7 +49,7 @@ def asset_viewer(asset_guid: str, server_name:str, platform_url:str, user:str):
|
|
49
49
|
continue
|
50
50
|
class_md += f"* Classification: {c_type}\n"
|
51
51
|
class_props = c.get("classificationProperties","---")
|
52
|
-
if type(class_props) is
|
52
|
+
if type(class_props) is dict:
|
53
53
|
for prop in class_props.keys():
|
54
54
|
class_md += f"\t* {prop}: {class_props[prop]}\n"
|
55
55
|
if class_md == "":
|
@@ -125,7 +125,6 @@ def asset_viewer(asset_guid: str, server_name:str, platform_url:str, user:str):
|
|
125
125
|
asset_relationships = asset_graph["relationships"]
|
126
126
|
asset_class_md = build_classifications(asset_classifications)
|
127
127
|
|
128
|
-
|
129
128
|
asset_properties = asset_graph["extendedProperties"]
|
130
129
|
prop_md = "\n* Extended Properties:\n"
|
131
130
|
for prop in asset_properties:
|
@@ -190,24 +189,24 @@ def asset_viewer(asset_guid: str, server_name:str, platform_url:str, user:str):
|
|
190
189
|
f"* Created by: {relationship_created_by} at time {relationship_creation_time}\n"
|
191
190
|
)
|
192
191
|
rel_end1_md = (
|
193
|
-
f"
|
194
|
-
f"\t* Type: {rel_end1_type}\n"
|
192
|
+
f"\n**End1:**\n"
|
193
|
+
f"\n\t* Type: {rel_end1_type}\n"
|
195
194
|
f"\t* GUID: {rel_end1_guid}\n"
|
196
195
|
f"\t* Unique Name: {rel_end1_unique_name}\n"
|
197
196
|
)
|
198
197
|
|
199
|
-
if rel_end1_class_md is not None:
|
200
|
-
|
198
|
+
# if rel_end1_class_md is not None:
|
199
|
+
# rel_end1_md = rel_end1_md + rel_end1_class_md
|
201
200
|
|
202
201
|
rel_end2_md = (
|
203
|
-
f"
|
204
|
-
f"\t* Type: {rel_end2_type}\n"
|
202
|
+
f"\n**End2:**\n"
|
203
|
+
f"\n\t* Type: {rel_end2_type}\n"
|
205
204
|
f"\t* GUID: {rel_end2_guid}\n"
|
206
205
|
f"\t* Unique Name: {rel_end2_unique_name}\n"
|
207
206
|
)
|
208
207
|
|
209
|
-
if rel_end2_class_md is not None:
|
210
|
-
|
208
|
+
# if rel_end2_class_md is not None:
|
209
|
+
# rel_end1_md = rel_end1_md + rel_end2_class_md
|
211
210
|
#
|
212
211
|
# for prop in relationship_properties.keys():
|
213
212
|
# relationship_md += f"* {prop}: {relationship_properties[prop]}\n"
|
@@ -11,18 +11,16 @@ A simple server status display
|
|
11
11
|
|
12
12
|
import time
|
13
13
|
import argparse
|
14
|
-
|
15
|
-
from pyegeria._exceptions import (
|
14
|
+
from pyegeria import (
|
16
15
|
InvalidParameterException,
|
17
16
|
PropertyServerException,
|
18
17
|
UserNotAuthorizedException,
|
19
18
|
print_exception_response,
|
19
|
+
ServerOps
|
20
20
|
)
|
21
21
|
from rich.table import Table
|
22
22
|
from rich.live import Live
|
23
23
|
|
24
|
-
from pyegeria.server_operations import ServerOps
|
25
|
-
|
26
24
|
|
27
25
|
def test_display_status(server: str, url: str , username: str ):
|
28
26
|
p_client = ServerOps(server, url, username)
|
@@ -0,0 +1,57 @@
|
|
1
|
+
|
2
|
+
# SPDX-License-Identifier: Apache-2.0
|
3
|
+
# Copyright Contributors to the ODPi Egeria project.
|
4
|
+
[build-system]
|
5
|
+
#requires = ["setuptools", "wheel"]
|
6
|
+
requires = ["poetry-core"]
|
7
|
+
#build-backend = "setuptools.build_meta"
|
8
|
+
build-backend = "poetry.core.masonry.api"
|
9
|
+
|
10
|
+
[tool.poetry]
|
11
|
+
name = "pyegeria"
|
12
|
+
version = "0.5.0"
|
13
|
+
license = 'Apache 2.0'
|
14
|
+
authors = ["Dan Wolfson <dan.wolfson@pdr-associates.com>"]
|
15
|
+
readme = "README.md"
|
16
|
+
description = "A python client for Egeria"
|
17
|
+
keywords = ["egeria", "metadata", "governance"]
|
18
|
+
homepage = "https://github.com/odpi/egeria-python"
|
19
|
+
|
20
|
+
repository = "https://github.com/odpi/egeria-python"
|
21
|
+
classifiers = [
|
22
|
+
"License :: OSI Approved :: Apache Software License",
|
23
|
+
"Programming Language :: Python",
|
24
|
+
"Programming Language :: Python :: 3",
|
25
|
+
]
|
26
|
+
packages = [
|
27
|
+
{ include = "src/pyegeria"},
|
28
|
+
{ include = "examples/widgets/catalog_user" },
|
29
|
+
{ include = "examples/widgets/developer" },
|
30
|
+
{ include = "examples/widgets/operational"},
|
31
|
+
{ include = "examples/widgets/personal_organizer"}
|
32
|
+
]
|
33
|
+
|
34
|
+
[tool.poetry.dependencies]
|
35
|
+
python = "^3.10"
|
36
|
+
validators = "^0.22.0"
|
37
|
+
pytest = "^8.0.0"
|
38
|
+
rich = "^13.7.0"
|
39
|
+
httpx = "^0.26.0"
|
40
|
+
setuptools = "^69.0.3"
|
41
|
+
|
42
|
+
[tool.poetry.group.test]
|
43
|
+
optional = true
|
44
|
+
|
45
|
+
[tool.poetry.group.test.dependencies]
|
46
|
+
pytest = "^8.0.0"
|
47
|
+
|
48
|
+
|
49
|
+
[tool.poetry.scripts]
|
50
|
+
view_server_status = "examples.widgets.operational.view_server_status:main"
|
51
|
+
view_my_todos = "examples.widgets.personal_organizer.view_my_todos:main"
|
52
|
+
list_asset_types = "examples.widgets.developer.list_asset_types:main"
|
53
|
+
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
|
@@ -13,9 +13,9 @@ from httpx import Response
|
|
13
13
|
from pyegeria import Client, max_paging_size, body_slimmer
|
14
14
|
from pyegeria._exceptions import (InvalidParameterException, PropertyServerException, UserNotAuthorizedException)
|
15
15
|
from ._validators import validate_name, validate_guid, validate_search_string
|
16
|
-
from .core_guids import (
|
17
|
-
|
18
|
-
|
16
|
+
from .core_guids import (FILEFOLDER_TEMPLATE_GUID,
|
17
|
+
POSTGRESQL_SERVER_TEMPLATE_GUID,
|
18
|
+
APACHE_KAFKA_SERVER_TEMPLATE_GUID,
|
19
19
|
)
|
20
20
|
|
21
21
|
|
@@ -169,7 +169,7 @@ class AutomatedCuration(Client):
|
|
169
169
|
The GUID of the Kafka server element.
|
170
170
|
"""
|
171
171
|
|
172
|
-
body = {"templateGUID":
|
172
|
+
body = {"templateGUID":APACHE_KAFKA_SERVER_TEMPLATE_GUID, "isOwnAnchor": 'true',
|
173
173
|
"placeholderPropertyValues": {"serverName": kafka_server, "hostIdentifier": host_name,
|
174
174
|
"portNumber": port, "description": description}}
|
175
175
|
body_s = body_slimmer(body)
|
@@ -241,7 +241,7 @@ class AutomatedCuration(Client):
|
|
241
241
|
str
|
242
242
|
The GUID of the Postgres server element.
|
243
243
|
"""
|
244
|
-
body = {"templateGUID":
|
244
|
+
body = {"templateGUID":POSTGRESQL_SERVER_TEMPLATE_GUID, "isOwnAnchor": 'true',
|
245
245
|
"placeholderPropertyValues": {"serverName": postgres_server, "hostIdentifier": host_name,
|
246
246
|
"portNumber": port, "databaseUserId": db_user, "description": description,
|
247
247
|
"databasePassword": db_pwd}}
|
@@ -319,7 +319,7 @@ class AutomatedCuration(Client):
|
|
319
319
|
str
|
320
320
|
The GUID of the File Folder element.
|
321
321
|
"""
|
322
|
-
body = {"templateGUID":
|
322
|
+
body = {"templateGUID": FILEFOLDER_TEMPLATE_GUID,
|
323
323
|
"isOwnAnchor": 'true',
|
324
324
|
"placeholderPropertyValues": {
|
325
325
|
"directoryPathName": path_name,
|
@@ -0,0 +1,121 @@
|
|
1
|
+
"""
|
2
|
+
SPDX-License-Identifier: Apache-2.0
|
3
|
+
Copyright Contributors to the ODPi Egeria project.
|
4
|
+
|
5
|
+
Useful from core content archive
|
6
|
+
"""
|
7
|
+
|
8
|
+
#
|
9
|
+
# Template guids
|
10
|
+
#
|
11
|
+
|
12
|
+
CSV_DATA_FILE_TEMPLATE_GUID = '13770F93-13C8-42BE-9BB8-E0B1B1E52B1F'
|
13
|
+
|
14
|
+
KEYSTORE_FILE_TEMPLATE_GUID = 'FBCFCC0C-1652-421F-B49B-C3E1C108768F'
|
15
|
+
|
16
|
+
OSS_UNITY_CATALOG_FUNCTION_TEMPLATE_GUID = '4AE9F6DF-4678-4B0A-A492-4A982C8397FD'
|
17
|
+
|
18
|
+
DATA_FILE_TEMPLATE_GUID = '66D8DDA9-00CF-4E59-938C-4B0583596B1E'
|
19
|
+
|
20
|
+
VIEW_SERVER_TEMPLATE_GUID = 'FD61CA01-390D-4AA2-A55D-426826AA4E1B'
|
21
|
+
|
22
|
+
ARCHIVE_FILE_TEMPLATE_GUID = '7578E504-D00F-406D-A194-3FC0A351CDF9'
|
23
|
+
|
24
|
+
POSTGRESQL_RELATIONAL_DATABASE_TEMPLATE_GUID = '3D398B3F-7AE6-4713-952A-409F3DEA8520'
|
25
|
+
|
26
|
+
OSS_UNITY_CATALOG_VOLUME_TEMPLATE_GUID = '384386BA-83C0-4981-8553-4306AECE440F'
|
27
|
+
|
28
|
+
PROGRAM_FILE_TEMPLATE_GUID = '32D27E9C-1FDF-455A-AD2A-42B4D7D99108'
|
29
|
+
|
30
|
+
FILEFOLDER_TEMPLATE_GUID = 'FBDD8EFD-1B69-474C-BB6D-0A304B394146'
|
31
|
+
|
32
|
+
OSS_UNITY_CATALOG_CATALOG_TEMPLATE_GUID = 'F7B05A3E-913C-497D-96F5-ACDEB2EC897E'
|
33
|
+
|
34
|
+
POSTGRESQL_SERVER_TEMPLATE_GUID = '542134E6-B9CE-4DCE-8AEF-22E8DAF34FDB'
|
35
|
+
|
36
|
+
AUDIO_DATA_FILE_TEMPLATE_GUID = '39B4B670-7F15-4744-A5BA-62E8EDAFBCEE'
|
37
|
+
|
38
|
+
DOCUMENT_FILE_TEMPLATE_GUID = 'EB6F728D-FA54-4350-9807-1199CBF96851'
|
39
|
+
|
40
|
+
INTEGRATION_DAEMON_TEMPLATE_GUID = '6B3516F0-DD13-4786-9601-07215F995197'
|
41
|
+
|
42
|
+
XML_DATA_FILE_TEMPLATE_GUID = 'EA67AE71-C674-473E-B38B-689879D2A7D9'
|
43
|
+
|
44
|
+
PARQUET_DATA_FILE_TEMPLATE_GUID = '7F6CD744-79C3-4D25-A056-EEB1A91574C3'
|
45
|
+
|
46
|
+
THREED_IMAGE_DATA_FILE_TEMPLATE_GUID = '0059EA2B-6292-4CAC-AA6F-A80A605F1114'
|
47
|
+
|
48
|
+
YAML_FILE_TEMPLATE_GUID = '2221855B-2B64-4B45-A2EE-C40ADC5E2A64'
|
49
|
+
|
50
|
+
METADATA_ACCESS_SERVER_TEMPLATE_GUID = 'BD8DE890-FA79-4C24-AAB8-20B41B5893DD'
|
51
|
+
|
52
|
+
PROPERTIES_FILE_TEMPLATE_GUID = '3B281111-A0EF-4FC4-99E7-9A0EF84A7636'
|
53
|
+
|
54
|
+
VECTOR_DATA_FILE_TEMPLATE_GUID = 'DB1BEC7F-55A9-40D3-91C0-A57B76D422E2'
|
55
|
+
|
56
|
+
APACHE_KAFKA_SERVER_TEMPLATE_GUID = '5E1FF810-5418-43F7-B7C4-E6E062F9AFF7'
|
57
|
+
|
58
|
+
OSS_UNITY_CATALOG_SCHEMA_TEMPLATE_GUID = 'A75CFB07-31FE-457E-9298-BE145DC93071'
|
59
|
+
|
60
|
+
EXECUTABLE_FILE_TEMPLATE_GUID = '3D99A163-7A13-4576-A212-784010A8302A'
|
61
|
+
|
62
|
+
JSON_DATA_FILE_TEMPLATE_GUID = 'C4836635-7E9E-446A-83B5-15E206B1AFF3'
|
63
|
+
|
64
|
+
FILE_SYSTEM_TEMPLATE_GUID = '522F228C-097C-4F90-9EFC-26C1F2696F87'
|
65
|
+
|
66
|
+
SOURCE_CODE_FILE_TEMPLATE_GUID = '9C7013EF-F29B-4B01-A8EA-5EA14F64C67A'
|
67
|
+
|
68
|
+
OSS_UNITY_CATALOG_SERVER_TEMPLATE_GUID = '1077A346-7A50-4CB0-A795-B219BAFAABF6'
|
69
|
+
|
70
|
+
APPLE_MACBOOK_PRO_TEMPLATE_GUID = '32A9FD56-85C9-47FE-A211-9DA3871BF4DA'
|
71
|
+
|
72
|
+
BUILD_INSTRUCTION_FILE_TEMPLATE_GUID = 'FBB2FA2E-8BCB-402E-9BE7-5C6DB9F2C504'
|
73
|
+
|
74
|
+
SPREADSHEET_DATA_FILE_TEMPLATE_GUID = 'E4FABFF5-2BA9-4050-9076-6ED917970B4C'
|
75
|
+
|
76
|
+
UNIX_FILE_SYSTEM_TEMPLATE_GUID = '27117270-8667-41D0-A99A-9118F9B60199'
|
77
|
+
|
78
|
+
VIDEO_DATA_FILE_TEMPLATE_GUID = '93B2B722-EC0F-4DA4-960A-B8D4922F8BF5'
|
79
|
+
|
80
|
+
POSTGRESQL_RELATIONAL_DATABASE_SCHEMA_TEMPLATE_GUID = '82A5417C-D882-4271-8444-4C6A996A8BFC'
|
81
|
+
|
82
|
+
ENGINE_HOST_TEMPLATE_GUID = '1764A891-4234-45F1-8CC3-536AF40C790D'
|
83
|
+
|
84
|
+
AVRO_DATA_FILE_TEMPLATE_GUID = '9F5BE428-058E-41DD-B506-3A222283B579'
|
85
|
+
|
86
|
+
OSS_UNITY_CATALOG_TABLE_TEMPLATE_GUID = 'F5B12348-92AC-4A52-B8E0-B06CF215484E'
|
87
|
+
|
88
|
+
FILE_TEMPLATE_GUID = 'AE3067C7-CC72-4A18-88E1-746803C2C86F'
|
89
|
+
|
90
|
+
APACHE_KAFKA_TOPIC_TEMPLATE_GUID = 'EA8F81C9-C59C-47DE-9525-7CC59D1251E5'
|
91
|
+
|
92
|
+
SCRIPT_FILE_TEMPLATE_GUID = 'DBD5E6BB-1FF8-46F4-A007-FB0485F68C92'
|
93
|
+
|
94
|
+
APACHE_ATLAS_SERVER_TEMPLATE_GUID = 'FE6DCE45-A978-4417-AB55-17F05B8BCEA7'
|
95
|
+
|
96
|
+
RASTER_DATA_FILE_TEMPLATE_GUID = '47211156-F03F-4881-8526-015E695A3DAC'
|
97
|
+
|
98
|
+
DATA_FOLDER_TEMPLATE_GUID = '372A0379-7060-4C9D-8D84-BC709B31794C'
|
99
|
+
|
100
|
+
OMAG_SERVER_PLATFORM_TEMPLATE_GUID = '9B06C4DC-DDC8-47AE-B56B-28775D3A96F0'
|
101
|
+
|
102
|
+
#
|
103
|
+
# Integration Connector GUIDS
|
104
|
+
#
|
105
|
+
|
106
|
+
PostgreSQL_Relational_Database_Integration_Connector_GUID = '70dcd0b7-9f06-48ad-ad44-ae4d7a7762aa'
|
107
|
+
|
108
|
+
Landing_Area_File_Monitor_Integration_Connector_GUID = '1b98cdac-dd0a-4621-93db-99ef5a1098bc'
|
109
|
+
|
110
|
+
FileFolder_Integration_Connector_GUID = 'cd6479e1-2fe7-4426-b358-8a0cf70be117'
|
111
|
+
|
112
|
+
OSS_Unity_Catalog_Catalog_Integration_Connector_GUID = '74dde22f-2249-4ea3-af2b-b39e73f79b81'
|
113
|
+
|
114
|
+
PostgreSQL_Server_Integration_Connector_GUID = '36f69fd0-54ba-4f59-8a44-11ccf2687a34'
|
115
|
+
|
116
|
+
Apache_Kafka_Server_Integration_Connector_GUID = 'fa1f711c-0b34-4b57-8e6e-16162b132b0c'
|
117
|
+
|
118
|
+
Software_Server_Integration_Connector_GUID = 'b89d9a5a-2ea6-49bc-a4fc-e7df9f3ca93e'
|
119
|
+
|
120
|
+
OSS_Unity_Catalog_Server_Integration_Connector_GUID = '06d068d9-9e08-4e67-8c59-073bbf1013af'
|
121
|
+
|
pyegeria-0.4.1/MANIFEST.in
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
recursive-include examples *
|
pyegeria-0.4.1/PKG-INFO
DELETED
@@ -1,62 +0,0 @@
|
|
1
|
-
Metadata-Version: 2.1
|
2
|
-
Name: pyegeria
|
3
|
-
Version: 0.4.1
|
4
|
-
Summary: A python client for Egeria
|
5
|
-
Home-page: https://egeria-project.org/egeria-python
|
6
|
-
Author: Dan Wolfson
|
7
|
-
Author-email: Dan Wolfson <dan.wolfson@pdr-associates.com>
|
8
|
-
Project-URL: Homepage, https://github.com/odpi/egeria-python
|
9
|
-
Project-URL: Issues, https://github.com/odpi/egeria-python/issues
|
10
|
-
Keywords: egeria,metadata,governance
|
11
|
-
Classifier: License :: OSI Approved :: Apache Software License
|
12
|
-
Classifier: Programming Language :: Python
|
13
|
-
Classifier: Programming Language :: Python :: 3
|
14
|
-
Requires-Python: >=3.10
|
15
|
-
Description-Content-Type: text/markdown
|
16
|
-
License-File: LICENSE
|
17
|
-
Requires-Dist: requests~=2.31.0
|
18
|
-
Requires-Dist: validators~=0.22.0
|
19
|
-
Requires-Dist: pytest~=7.4.2
|
20
|
-
Requires-Dist: urllib3~=1.26.15
|
21
|
-
Requires-Dist: rich~=13.7.1
|
22
|
-
Requires-Dist: httpx~=0.26.0
|
23
|
-
Provides-Extra: tests
|
24
|
-
Requires-Dist: pytest; extra == "tests"
|
25
|
-
|
26
|
-
<!-- SPDX-License-Identifier: CC-BY-4.0 -->
|
27
|
-
<!-- Copyright Contributors to the ODPi Egeria project. -->
|
28
|
-
|
29
|
-

|
30
|
-
|
31
|
-
[](LICENSE)
|
32
|
-
|
33
|
-
|
34
|
-
# pyegeria: a python client for Egeria
|
35
|
-
|
36
|
-
This is an experimental package for easily using the Egeria
|
37
|
-
open metadata environment from python. Details about the
|
38
|
-
open source Egeria project can be found at [Egeria Project](https://egeria-project.org).
|
39
|
-
|
40
|
-
This package is in active development. There is initial
|
41
|
-
support for many of Egeria's services including configuration and operation. This client depends on
|
42
|
-
Egeria 4.4 Snapshot and above - although most of the functions may work on earlier versions of Egeria as well.
|
43
|
-
|
44
|
-
The code is organized to mimic the existing Egeria Java Client structure.
|
45
|
-
|
46
|
-
A new examples folder holds some useful text widgets that help to visualize the status of an Egeria deployment.
|
47
|
-
|
48
|
-
WARNING: files that start with "X" are in-progress placeholders that are not meant to be used..they will mature and
|
49
|
-
evolve.
|
50
|
-
|
51
|
-
All feedback is welcome. Please engage via our [community](http://egeria-project.org/guides/community/),
|
52
|
-
team calls, or via github issues in this repo. If interested in contributing,
|
53
|
-
you can engage via the community or directly reach out to
|
54
|
-
[dan.wolfson\@pdr-associates.com](mailto:dan.wolfson@pdr-associates.com?subject=pyegeria).
|
55
|
-
|
56
|
-
This is a learning experience.
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
----
|
61
|
-
License: [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/),
|
62
|
-
Copyright Contributors to the ODPi Egeria project.
|
Binary file
|
@@ -1,19 +0,0 @@
|
|
1
|
-
# pyegeria: Coco Pharmaceuticals Lab Configurations
|
2
|
-
|
3
|
-
This is an experimental package that demonstrates how we can configure the servers used in the
|
4
|
-
Egeria Jupyter Labs [Egeria Project - Open metadata and governance for enterprises](https://egeria-project.org/guides/operations/kubernetes/charts/lab/?h=coco)
|
5
|
-
using the new pyegeria client.
|
6
|
-
|
7
|
-
This package will evolve with planned enhancements to the Coco Pharmaceuticals Jupyter Labs.
|
8
|
-
|
9
|
-
All feedback is welcome. Please engage via our [community](http://egeria-project.org/guides/community/),
|
10
|
-
team calls, or via github issues in this repo. If interested in contributing,
|
11
|
-
you can engage via the community or directly reach out to
|
12
|
-
[dan.wolfson\@pdr-associates.com](mailto:dan.wolfson@pdr-associates.com?subject=pyegeria).
|
13
|
-
|
14
|
-
This is a learning experience.
|
15
|
-
|
16
|
-
|
17
|
-
----
|
18
|
-
License: [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/),
|
19
|
-
Copyright Contributors to the ODPi Egeria project.
|
Binary file
|
@@ -1,107 +0,0 @@
|
|
1
|
-
"""
|
2
|
-
SPDX-License-Identifier: Apache-2.0
|
3
|
-
Copyright Contributors to the ODPi Egeria project.
|
4
|
-
|
5
|
-
Egeria Coco Pharmaceutical demonstration labs.
|
6
|
-
|
7
|
-
Configuring cocoMDS1 - Data Lake Operations metadata server
|
8
|
-
|
9
|
-
"""
|
10
|
-
|
11
|
-
|
12
|
-
import json
|
13
|
-
|
14
|
-
from globals import (adminUserId, cocoMDS1Name, dataLakePlatformURL, cocoCohort)
|
15
|
-
from pyegeria import CoreServerConfig, Platform
|
16
|
-
from pyegeria import (
|
17
|
-
print_exception_response,
|
18
|
-
)
|
19
|
-
|
20
|
-
mdr_server = cocoMDS1Name
|
21
|
-
platform_url = dataLakePlatformURL
|
22
|
-
admin_user = adminUserId
|
23
|
-
mdr_server_user_id = "cocoMDS1npa"
|
24
|
-
mdr_server_password = "cocoMDS1passw0rd"
|
25
|
-
metadataCollectionId = f"{mdr_server}-e915f2fa-aa3g-4396-8bde-bcd65e642b1d"
|
26
|
-
metadataCollectionName = "Data Lake Catalog"
|
27
|
-
|
28
|
-
max_page_size = 600
|
29
|
-
|
30
|
-
print("Configuring " + mdr_server + "..." + " @ " + platform_url)
|
31
|
-
|
32
|
-
try:
|
33
|
-
o_client = CoreServerConfig(mdr_server, platform_url, admin_user)
|
34
|
-
|
35
|
-
o_client.set_basic_server_properties("Data lake operations",
|
36
|
-
"Coco Pharmaceuticals",
|
37
|
-
platform_url,
|
38
|
-
mdr_server_user_id, mdr_server_password,
|
39
|
-
max_page_size, mdr_server)
|
40
|
-
|
41
|
-
# Can also inherit event bus config from application properties
|
42
|
-
|
43
|
-
event_bus_config = {
|
44
|
-
"producer": {
|
45
|
-
"bootstrap.servers": "{{kafkaEndpoint}}"
|
46
|
-
},
|
47
|
-
"consumer": {
|
48
|
-
"bootstrap.servers": "{{kafkaEndpoint}}"
|
49
|
-
}
|
50
|
-
}
|
51
|
-
|
52
|
-
o_client.set_event_bus(event_bus_config)
|
53
|
-
|
54
|
-
security_connection_body = {
|
55
|
-
"class": "Connection",
|
56
|
-
"connectorType": {
|
57
|
-
"class": "ConnectorType",
|
58
|
-
"connectorProviderClassName":
|
59
|
-
"org.odpi.openmetadata.metadatasecurity.samples.CocoPharmaServerSecurityProvider"
|
60
|
-
}
|
61
|
-
}
|
62
|
-
o_client.set_xtdb_local_kv_repository()
|
63
|
-
# o_client.set_in_mem_local_repository()
|
64
|
-
o_client.add_default_log_destinations()
|
65
|
-
o_client.set_server_security_connection(security_connection_body)
|
66
|
-
o_client.set_local_metadata_collection_name(metadataCollectionName)
|
67
|
-
o_client.set_local_metadata_collection_id(metadataCollectionId)
|
68
|
-
|
69
|
-
o_client.add_cohort_registration(cocoCohort)
|
70
|
-
|
71
|
-
print(f"Configuring {mdr_server} Access Services (OMAS)....")
|
72
|
-
|
73
|
-
# o_client.configure_all_access_services()
|
74
|
-
access_service_options = {
|
75
|
-
"SupportedZones": ["quarantine", "clinical-trials", "research", "data-lake", "trash-can"]
|
76
|
-
}
|
77
|
-
|
78
|
-
# o_client.configure_access_service("asset-catalog", access_service_options)
|
79
|
-
o_client.configure_access_service("asset-consumer", access_service_options)
|
80
|
-
|
81
|
-
access_service_options["DefaultZones"] = ["quarantine"]
|
82
|
-
access_service_options["PublishZones"] = ["data-lake"]
|
83
|
-
|
84
|
-
# print(f"Access Service Options: {access_service_options}")
|
85
|
-
|
86
|
-
o_client.configure_access_service("asset-manager", access_service_options)
|
87
|
-
o_client.configure_access_service("asset-owner", access_service_options)
|
88
|
-
o_client.configure_access_service("community-profile",
|
89
|
-
{"KarmaPointPlateau": "500"})
|
90
|
-
# o_client.configure_access_service("glossary-view", {})
|
91
|
-
# o_client.configure_access_service("data-engine", access_service_options)
|
92
|
-
o_client.configure_access_service("data-manager", access_service_options)
|
93
|
-
o_client.configure_access_service("digital-architecture", access_service_options)
|
94
|
-
o_client.configure_access_service("governance-engine", access_service_options)
|
95
|
-
o_client.configure_access_service("governance-server", access_service_options)
|
96
|
-
o_client.configure_access_service("asset-lineage", access_service_options)
|
97
|
-
|
98
|
-
print(f"Activating {mdr_server}")
|
99
|
-
p_client = Platform(mdr_server, platform_url, admin_user)
|
100
|
-
p_client.activate_server_stored_config()
|
101
|
-
|
102
|
-
config = o_client.get_stored_configuration()
|
103
|
-
print(f"\n\n\tConfiguration of {mdr_server} is complete.")
|
104
|
-
print(f"\nThe server stored configuration is:\n {json.dumps(config, indent=4)}")
|
105
|
-
|
106
|
-
except Exception as e:
|
107
|
-
print_exception_response(e)
|