pyegeria 0.5.5.25__tar.gz → 0.5.6.1__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.
Files changed (69) hide show
  1. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/PKG-INFO +1 -1
  2. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/catalog_user/list_assets.py +34 -18
  3. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/operational/refresh_integration_daemon.py +1 -1
  4. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/operational/view_asset_events.py +2 -2
  5. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/operational/view_integ_daemon_status.py +8 -7
  6. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/operational/view_platform_status.py +3 -4
  7. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/__init__.py +10 -11
  8. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/_client.py +1 -1
  9. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/asset_catalog_omvs.py +7 -7
  10. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/automated_curation_omvs.py +4 -4
  11. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/create_tech_guid_lists.py +1 -0
  12. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/server_operations.py +7 -5
  13. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyproject.toml +1 -1
  14. pyegeria-0.5.5.25/pyegeria/tech_guids_22-07-2024 13:22.py +0 -55
  15. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/LICENSE +0 -0
  16. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/README.md +0 -0
  17. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/doc_samples/Create_Collection_Sample.py +0 -0
  18. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/doc_samples/Create_Sustainability_Collection_Sample.py +0 -0
  19. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/catalog_user/README.md +0 -0
  20. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/catalog_user/__init__.py +0 -0
  21. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/catalog_user/view_asset_graph.py +0 -0
  22. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/catalog_user/view_collection.py +0 -0
  23. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/catalog_user/view_glossary.py +0 -0
  24. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/developer/README.md +0 -0
  25. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/developer/__init__.py +0 -0
  26. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/developer/get_guid_info.py +0 -0
  27. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/developer/get_tech_details.py +0 -0
  28. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/developer/list_asset_types.py +0 -0
  29. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/developer/list_registered_services.py +0 -0
  30. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/developer/list_relationship_types.py +0 -0
  31. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/developer/list_tech_templates.py +0 -0
  32. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/developer/list_tech_types.py +0 -0
  33. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/developer/list_valid_metadata_values.py +0 -0
  34. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/operational/README.md +0 -0
  35. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/operational/__init__.py +0 -0
  36. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/operational/get_tech_type_elements.py +0 -0
  37. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/operational/get_tech_type_template.py +0 -0
  38. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/operational/view_coco_status.py +0 -0
  39. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/operational/view_eng_action_status.py +0 -0
  40. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/operational/view_gov_eng_status.py +0 -0
  41. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/operational/view_server_list.py +0 -0
  42. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/operational/view_server_status.py +0 -0
  43. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/personal_organizer/README.md +0 -0
  44. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/personal_organizer/__init__.py +0 -0
  45. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/personal_organizer/get_my_profile.py +0 -0
  46. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/personal_organizer/list_projects.py +0 -0
  47. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/personal_organizer/list_todos.py +0 -0
  48. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/personal_organizer/view_my_todos.py +0 -0
  49. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/examples/widgets/personal_organizer/view_open_todos.py +0 -0
  50. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/Xfeedback_manager_omvs.py +0 -0
  51. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/Xloaded_resources_omvs.py +0 -0
  52. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/_deprecated_gov_engine.py +0 -0
  53. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/_exceptions.py +0 -0
  54. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/_globals.py +0 -0
  55. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/_validators.py +0 -0
  56. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/action_author_omvs.py +0 -0
  57. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/collection_manager_omvs.py +0 -0
  58. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/core_guids.py +0 -0
  59. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/core_omag_server_config.py +0 -0
  60. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/full_omag_server_config.py +0 -0
  61. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/glossary_browser_omvs.py +0 -0
  62. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/glossary_manager_omvs.py +0 -0
  63. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/my_profile_omvs.py +0 -0
  64. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/platform_services.py +0 -0
  65. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/project_manager_omvs.py +0 -0
  66. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/registered_info.py +0 -0
  67. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/runtime_manager_omvs.py +0 -0
  68. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/utils.py +0 -0
  69. {pyegeria-0.5.5.25 → pyegeria-0.5.6.1}/pyegeria/valid_metadata_omvs.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pyegeria
3
- Version: 0.5.5.25
3
+ Version: 0.5.6.1
4
4
  Summary: A python client for Egeria
5
5
  Home-page: https://github.com/odpi/egeria-python
6
6
  License: Apache 2.0
@@ -38,7 +38,7 @@ EGERIA_USER_PASSWORD = os.environ.get('EGERIA_USER_PASSWORD', 'secret')
38
38
 
39
39
  disable_ssl_warnings = True
40
40
 
41
- def display_assets(search_string: str, guid: str, server: str, url: str, username: str, user_password: str):
41
+ def display_assets(search_string: str, server: str, url: str, username: str, user_password: str, time_out: int = 60):
42
42
 
43
43
  g_client = AssetCatalog(server, url, username)
44
44
  token = g_client.create_egeria_bearer_token(username, user_password)
@@ -47,7 +47,7 @@ def display_assets(search_string: str, guid: str, server: str, url: str, usernam
47
47
  def generate_table(search_string:str = 'Enter Your Tech Type') -> Table:
48
48
  """Make a new table."""
49
49
  table = Table(
50
- title=f"Asset Definitions containing the string {search_string} @ {time.asctime()}",
50
+ title=f"Assets containing the string {search_string} @ {time.asctime()}",
51
51
  header_style="white on dark_blue",
52
52
  style="bold white on black",
53
53
  row_styles=["bold white on black"],
@@ -62,31 +62,48 @@ def display_assets(search_string: str, guid: str, server: str, url: str, usernam
62
62
  table.add_column("Type Name")
63
63
  table.add_column("GUID", no_wrap=True)
64
64
  table.add_column("Technology Type")
65
- table.add_column("Path")
66
- table.add_column("Qualified Name")
65
+ # table.add_column("Qualified Name",max_width=15)
66
+ table.add_column("Matching Elements")
67
67
 
68
68
 
69
69
  assets = g_client.find_assets_in_domain(search_string, starts_with=True,
70
- ends_with=False, ignore_case=True, page_size=10)
70
+ ends_with=False, ignore_case=True, page_size=100, time_out=time_out)
71
71
  if type(assets) is str:
72
72
  return table
73
73
 
74
74
  for element in assets:
75
75
  display_name = element.get("resourceName",'---')
76
- qualified_name = element["qualifiedName"]
76
+ # qualified_name = element["qualifiedName"] # we decided that qualified name wasn't useful
77
77
  type_name = element["type"]["typeName"]
78
78
  tech_type = element.get("deployedImplementationType",'---')
79
79
  guid = element["guid"]
80
- path_name = element.get("extendedProperties", None)
81
- if path_name:
82
- path = path_name.get("pathName"," ")
83
- else:
84
- path = " "
85
-
80
+ #### We decided that path wasn't useful
81
+ # path_name = element.get("extendedProperties", None)
82
+ # if path_name:
83
+ # path = path_name.get("pathName"," ")
84
+ # else:
85
+ # path = " "
86
+ matches = element['matchingElements']
87
+ match_md = ""
88
+
89
+ match_tab = Table(expand=True)
90
+ match_tab.add_column("Type Name")
91
+ match_tab.add_column("GUID", no_wrap=True, width=36)
92
+ match_tab.add_column("Properties")
93
+
94
+ for match in matches:
95
+ match_type_name = match['type']['typeName']
96
+ matching_guid = match['guid']
97
+ match_props = match['properties']
98
+ match_details_md = ""
99
+ for key in match_props.keys():
100
+ match_details_md += f"{key}: {match_props[key]}\n"
101
+
102
+ match_tab.add_row(match_type_name, matching_guid, match_details_md)
86
103
 
87
104
 
88
105
  table.add_row(
89
- display_name, type_name,guid, tech_type, path, qualified_name
106
+ display_name, type_name,guid, tech_type, match_tab
90
107
  )
91
108
 
92
109
  g_client.close_session()
@@ -108,24 +125,23 @@ def display_assets(search_string: str, guid: str, server: str, url: str, usernam
108
125
 
109
126
 
110
127
  def main():
111
- sus_guid = "f9b78b26-6025-43fa-9299-a905cc6d1575"
112
128
  parser = argparse.ArgumentParser()
113
129
  parser.add_argument("--server", help="Name of the server to display status for")
114
130
  parser.add_argument("--url", help="URL Platform to connect to")
115
131
  parser.add_argument("--userid", help="User Id")
116
132
  parser.add_argument("--password", help="User Password")
133
+ parser.add_argument("--time_out", help="Time Out")
117
134
 
118
- parser.add_argument("--guid", help="GUID of glossary to search")
119
135
  args = parser.parse_args()
120
136
 
121
137
  server = args.server if args.server is not None else EGERIA_VIEW_SERVER
122
138
  url = args.url if args.url is not None else EGERIA_PLATFORM_URL
123
139
  userid = args.userid if args.userid is not None else EGERIA_USER
124
140
  user_pass = args.password if args.password is not None else EGERIA_USER_PASSWORD
125
- guid = args.guid if args.guid is not None else None
141
+ time_out = args.time_out if args.time_out is not None else 60
126
142
 
127
- search_string = Prompt.ask("Enter a search string:", default="")
128
- display_assets(search_string, guid,server, url, userid, user_pass)
143
+ search_string = Prompt.ask("Enter an asset search string:", default="")
144
+ display_assets(search_string, server, url, userid, user_pass, time_out)
129
145
 
130
146
  if __name__ == "__main__":
131
147
  main()
@@ -51,7 +51,7 @@ def main():
51
51
 
52
52
  s_client = ServerOps(server, url, userid)
53
53
 
54
- s_client.refresh_integration_connectors(None, server)
54
+ s_client.refresh_integration_connectors(None, server, time_out = 60)
55
55
 
56
56
  print(f"\n===> Integration Daemon: \'{server}\' was refreshed.")
57
57
 
@@ -18,7 +18,7 @@ from rich.markdown import Markdown
18
18
  from confluent_kafka import Consumer, KafkaException
19
19
 
20
20
  EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
21
- EGERIA_KAFKA_ENDPOINT = os.environ.get('KAFKA_ENDPOINT', 'localhost:9092')
21
+ EGERIA_KAFKA_ENDPOINT = os.environ.get('KAFKA_ENDPOINT', 'localhost:9192')
22
22
  EGERIA_PLATFORM_URL = os.environ.get('EGERIA_PLATFORM_URL', 'https://localhost:9443')
23
23
  EGERIA_VIEW_SERVER = os.environ.get('VIEW_SERVER', 'view-server')
24
24
  EGERIA_VIEW_SERVER_URL = os.environ.get('EGERIA_VIEW_SERVER_URL', 'https://localhost:9443')
@@ -29,7 +29,7 @@ EGERIA_USER = os.environ.get('EGERIA_USER', 'erinoverview')
29
29
  EGERIA_USER_PASSWORD = os.environ.get('EGERIA_USER_PASSWORD', 'secret')
30
30
 
31
31
 
32
- def main(ep: str):
32
+ def main(ep: str = EGERIA_KAFKA_ENDPOINT):
33
33
 
34
34
  disable_ssl_warnings = True
35
35
  console = Console(width=200)
@@ -14,6 +14,7 @@ assume that the user password is always "secret".
14
14
  import os
15
15
  import argparse
16
16
  import time
17
+ from datetime import datetime
17
18
 
18
19
  from rich import box
19
20
  from rich.live import Live
@@ -61,13 +62,13 @@ def display_integration_daemon_status(integ_server: str, integ_url: str,
61
62
  caption=f"Integration Daemon Status for Server '{integ_server}' @ Platform - {integ_url}",
62
63
  expand=True
63
64
  )
64
- table.add_column("Connector Name")
65
- table.add_column("Connector Status")
65
+ table.add_column("Connector Name", min_width = 15)
66
+ table.add_column("Status", max_width=6)
66
67
 
67
- table.add_column("Last Refresh Time")
68
- table.add_column("Min Refresh (mins)")
69
- table.add_column("Target Element")
70
- table.add_column("Exception Message")
68
+ table.add_column("Last Refresh Time", min_width = 12)
69
+ table.add_column("Min Refresh (mins)", max_width=6)
70
+ table.add_column("Target Element", min_width=20)
71
+ table.add_column("Exception Message",min_width=10)
71
72
 
72
73
  daemon_status = s_client.get_integration_daemon_status()
73
74
  connector_reports = daemon_status["integrationConnectorReports"]
@@ -75,7 +76,7 @@ def display_integration_daemon_status(integ_server: str, integ_url: str,
75
76
  connector_name = connector.get("connectorName", "---")
76
77
  connector_status = connector.get("connectorStatus", "---")
77
78
  connector_guid = connector.get("connectorGUID","---")
78
- last_refresh_time = connector.get("lastRefreshTime", "---")
79
+ last_refresh_time = connector.get("lastRefreshTime", "---")[:-10]
79
80
  refresh_interval = str(connector.get("minMinutesBetweenRefresh", "---"))
80
81
  exception_msg = " "
81
82
  if connector_guid != '---':
@@ -44,7 +44,7 @@ def display_status(server: str, url: str, username: str, user_pass:str):
44
44
  """Make a new table."""
45
45
  table = Table(
46
46
  title=f"Server Status for Platform - {time.asctime()}",
47
- style="bold white on black",
47
+ # style="bold white on black",
48
48
  row_styles=["bold white on black"],
49
49
  header_style="white on dark_blue",
50
50
  title_style="bold white on black",
@@ -98,15 +98,14 @@ def display_status(server: str, url: str, username: str, user_pass:str):
98
98
  serv = f"{status_flag}{server_types[server_type]}: {server_name}\n"
99
99
  server_list = server_list + serv
100
100
 
101
+ table.add_row(platform_name, platform_url, platform_origin, platform_desc,
102
+ platform_started, server_list, style = "bold white on black")
101
103
  except (Exception) as e:
102
104
  # console.print_exception(e)
103
105
  platform_url = " "
104
106
  platform_origin = " "
105
107
  platform_started = " "
106
108
 
107
- table.add_row(platform_name, platform_url, platform_origin, platform_desc,
108
- platform_started, server_list)
109
-
110
109
 
111
110
  return table
112
111
 
@@ -64,57 +64,56 @@ global TEMPLATE_GUIDS, INTEGRATION_GUIDS
64
64
 
65
65
  TEMPLATE_GUIDS['CSV Data File template'] = '13770f93-13c8-42be-9bb8-e0b1b1e52b1f'
66
66
  TEMPLATE_GUIDS['Keystore File template'] = 'fbcfcc0c-1652-421f-b49b-c3e1c108768f'
67
+ TEMPLATE_GUIDS['Unity Catalog Server template'] = 'dcca9788-b30f-4007-b1ac-ec634aff6879'
68
+ INTEGRATION_GUIDS['Unity Catalog Server'] = '74dde22f-2249-4ea3-af2b-b39e73f79b81'
69
+ INTEGRATION_GUIDS['Unity Catalog Server'] = '06d068d9-9e08-4e67-8c59-073bbf1013af'
67
70
  INTEGRATION_GUIDS['JDBC Relational Database'] = '70dcd0b7-9f06-48ad-ad44-ae4d7a7762aa'
68
71
  TEMPLATE_GUIDS['Data File template'] = '66d8dda9-00cf-4e59-938c-4b0583596b1e'
69
72
  TEMPLATE_GUIDS['View Server template'] = 'fd61ca01-390d-4aa2-a55d-426826aa4e1b'
70
73
  TEMPLATE_GUIDS['Archive File template'] = '7578e504-d00f-406d-a194-3fc0a351cdf9'
71
- TEMPLATE_GUIDS['OSS Unity Catalog Volume template'] = '92d2d2dc-0798-41f0-9512-b10548d312b7'
74
+ TEMPLATE_GUIDS['Unity Catalog Catalog template'] = '5ee006aa-a6d6-411b-9b8d-5f720c079cae'
72
75
  TEMPLATE_GUIDS['PostgreSQL Relational Database template'] = '3d398b3f-7ae6-4713-952a-409f3dea8520'
73
76
  INTEGRATION_GUIDS['PostgreSQL Relational Database'] = '70dcd0b7-9f06-48ad-ad44-ae4d7a7762aa'
74
77
  TEMPLATE_GUIDS['Program File template'] = '32d27e9c-1fdf-455a-ad2a-42b4d7d99108'
75
78
  TEMPLATE_GUIDS['FileFolder template'] = 'fbdd8efd-1b69-474c-bb6d-0a304b394146'
76
- INTEGRATION_GUIDS['FileFolder'] = 'cd6479e1-2fe7-4426-b358-8a0cf70be117'
77
79
  INTEGRATION_GUIDS['FileFolder'] = '1b98cdac-dd0a-4621-93db-99ef5a1098bc'
80
+ INTEGRATION_GUIDS['FileFolder'] = 'cd6479e1-2fe7-4426-b358-8a0cf70be117'
78
81
  TEMPLATE_GUIDS['PostgreSQL Server template'] = '542134e6-b9ce-4dce-8aef-22e8daf34fdb'
79
82
  INTEGRATION_GUIDS['PostgreSQL Server'] = '36f69fd0-54ba-4f59-8a44-11ccf2687a34'
80
83
  TEMPLATE_GUIDS['Audio Data File template'] = '39b4b670-7f15-4744-a5ba-62e8edafbcee'
81
84
  TEMPLATE_GUIDS['Document File template'] = 'eb6f728d-fa54-4350-9807-1199cbf96851'
82
85
  TEMPLATE_GUIDS['Integration Daemon template'] = '6b3516f0-dd13-4786-9601-07215f995197'
83
86
  TEMPLATE_GUIDS['XML Data File template'] = 'ea67ae71-c674-473e-b38b-689879d2a7d9'
87
+ TEMPLATE_GUIDS['Unity Catalog Schema template'] = '5bf92b0f-3970-41ea-b0a3-aacfbf6fd92e'
84
88
  TEMPLATE_GUIDS['Parquet Data File template'] = '7f6cd744-79c3-4d25-a056-eeb1a91574c3'
85
89
  TEMPLATE_GUIDS['3D Image Data File template'] = '0059ea2b-6292-4cac-aa6f-a80a605f1114'
86
90
  TEMPLATE_GUIDS['YAML File template'] = '2221855b-2b64-4b45-a2ee-c40adc5e2a64'
87
91
  TEMPLATE_GUIDS['Metadata Access Server template'] = 'bd8de890-fa79-4c24-aab8-20b41b5893dd'
88
92
  TEMPLATE_GUIDS['Properties File template'] = '3b281111-a0ef-4fc4-99e7-9a0ef84a7636'
89
93
  TEMPLATE_GUIDS['Vector Data File template'] = 'db1bec7f-55a9-40d3-91c0-a57b76d422e2'
90
- TEMPLATE_GUIDS['OSS Unity Catalog Schema template'] = '5bf92b0f-3970-41ea-b0a3-aacfbf6fd92e'
91
- TEMPLATE_GUIDS['OSS Unity Catalog Table template'] = '6cc1e5f5-4c1e-4290-a80e-e06643ffb13d'
92
94
  TEMPLATE_GUIDS['Apache Kafka Server template'] = '5e1ff810-5418-43f7-b7c4-e6e062f9aff7'
93
95
  INTEGRATION_GUIDS['Apache Kafka Server'] = 'fa1f711c-0b34-4b57-8e6e-16162b132b0c'
94
96
  TEMPLATE_GUIDS['Executable File template'] = '3d99a163-7a13-4576-a212-784010a8302a'
97
+ TEMPLATE_GUIDS['Unity Catalog Table template'] = '6cc1e5f5-4c1e-4290-a80e-e06643ffb13d'
95
98
  TEMPLATE_GUIDS['JSON Data File template'] = 'c4836635-7e9e-446a-83b5-15e206b1aff3'
96
- TEMPLATE_GUIDS['OSS Unity Catalog Function template'] = 'a490ba65-6104-4213-9be9-524e16fed8aa'
97
99
  TEMPLATE_GUIDS['File System template'] = '522f228c-097c-4f90-9efc-26c1f2696f87'
98
100
  TEMPLATE_GUIDS['Source Code File template'] = '9c7013ef-f29b-4b01-a8ea-5ea14f64c67a'
99
- INTEGRATION_GUIDS['Software Server'] = 'b89d9a5a-2ea6-49bc-a4fc-e7df9f3ca93e'
100
101
  TEMPLATE_GUIDS['Apple MacBook Pro template'] = '32a9fd56-85c9-47fe-a211-9da3871bf4da'
101
102
  TEMPLATE_GUIDS['Build Instruction File template'] = 'fbb2fa2e-8bcb-402e-9be7-5c6db9f2c504'
102
103
  TEMPLATE_GUIDS['Spreadsheet Data File template'] = 'e4fabff5-2ba9-4050-9076-6ed917970b4c'
103
104
  TEMPLATE_GUIDS['UNIX File System template'] = '27117270-8667-41d0-a99a-9118f9b60199'
104
105
  TEMPLATE_GUIDS['Video Data File template'] = '93b2b722-ec0f-4da4-960a-b8d4922f8bf5'
106
+ TEMPLATE_GUIDS['Unity Catalog Function template'] = 'a490ba65-6104-4213-9be9-524e16fed8aa'
105
107
  TEMPLATE_GUIDS['PostgreSQL Relational Database Schema template'] = '82a5417c-d882-4271-8444-4c6a996a8bfc'
106
- TEMPLATE_GUIDS['OSS Unity Catalog Server template'] = 'dcca9788-b30f-4007-b1ac-ec634aff6879'
107
- INTEGRATION_GUIDS['OSS Unity Catalog Server'] = '06d068d9-9e08-4e67-8c59-073bbf1013af'
108
108
  TEMPLATE_GUIDS['Engine Host template'] = '1764a891-4234-45f1-8cc3-536af40c790d'
109
109
  TEMPLATE_GUIDS['Avro Data File template'] = '9f5be428-058e-41dd-b506-3a222283b579'
110
+ TEMPLATE_GUIDS['Unity Catalog Volume template'] = '92d2d2dc-0798-41f0-9512-b10548d312b7'
110
111
  TEMPLATE_GUIDS['File template'] = 'ae3067c7-cc72-4a18-88e1-746803c2c86f'
111
112
  TEMPLATE_GUIDS['Apache Kafka Topic template'] = 'ea8f81c9-c59c-47de-9525-7cc59d1251e5'
112
113
  TEMPLATE_GUIDS['Script File template'] = 'dbd5e6bb-1ff8-46f4-a007-fb0485f68c92'
113
114
  TEMPLATE_GUIDS['Apache Atlas Server template'] = 'fe6dce45-a978-4417-ab55-17f05b8bcea7'
114
115
  TEMPLATE_GUIDS['Raster Data File template'] = '47211156-f03f-4881-8526-015e695a3dac'
115
116
  TEMPLATE_GUIDS['Data Folder template'] = '372a0379-7060-4c9d-8d84-bc709b31794c'
116
- TEMPLATE_GUIDS['OSS Unity Catalog Catalog template'] = '5ee006aa-a6d6-411b-9b8d-5f720c079cae'
117
- INTEGRATION_GUIDS['OSS Unity Catalog Catalog'] = '74dde22f-2249-4ea3-af2b-b39e73f79b81'
118
117
  TEMPLATE_GUIDS['OMAG Server Platform template'] = '9b06c4dc-ddc8-47ae-b56b-28775d3a96f0'
119
-
118
+ INTEGRATION_GUIDS['OMAG Server Platform'] = 'b89d9a5a-2ea6-49bc-a4fc-e7df9f3ca93e'
120
119
 
@@ -18,7 +18,7 @@ from pyegeria._exceptions import (
18
18
  InvalidParameterException,
19
19
  PropertyServerException,
20
20
  UserNotAuthorizedException )
21
- from pyegeria._globals import max_paging_size, TEMPLATE_GUIDS,INTEGRATION_GUIDS
21
+ from pyegeria._globals import max_paging_size, TEMPLATE_GUIDS, INTEGRATION_GUIDS
22
22
  from pyegeria._validators import (
23
23
  validate_name,
24
24
  validate_server_name,
@@ -14,7 +14,7 @@ import json
14
14
 
15
15
  from httpx import Response
16
16
 
17
- from pyegeria import Client, max_paging_size, body_slimmer
17
+ from pyegeria import Client, max_paging_size, body_slimmer, TEMPLATE_GUIDS, INTEGRATION_GUIDS
18
18
  from pyegeria._exceptions import (
19
19
  InvalidParameterException,
20
20
  )
@@ -180,7 +180,7 @@ class AssetCatalog(Client):
180
180
  """
181
181
 
182
182
  body = {
183
- "templateGUID": "5e1ff810-5418-43f7-b7c4-e6e062f9aff7",
183
+ "templateGUID": TEMPLATE_GUIDS['Apache Kafka Server template'],
184
184
  "isOwnAnchor": 'true',
185
185
  "placeholderPropertyValues": {
186
186
  "serverName": kafka_server,
@@ -250,7 +250,7 @@ class AssetCatalog(Client):
250
250
  The GUID of the Kafka server element.
251
251
  """
252
252
  body = {
253
- "templateGUID": "542134e6-b9ce-4dce-8aef-22e8daf34fdb",
253
+ "templateGUID": TEMPLATE_GUIDS['PostgreSQL Server template'],
254
254
  "isOwnAnchor": 'true',
255
255
  "placeholderPropertyValues": {
256
256
  "serverName": postgres_server,
@@ -306,7 +306,7 @@ class AssetCatalog(Client):
306
306
  async def _async_find_assets_in_domain(self, search_string: str, start_from: int = 0,
307
307
  page_size: int = max_paging_size, starts_with: bool = True,
308
308
  ends_with: bool = False, ignore_case: bool = True,
309
- server: str = None) -> list | str:
309
+ server: str = None, time_out:int = 60) -> list | str:
310
310
  """ Retrieve the list of engine action metadata elements that contain the search string. Async Version.
311
311
  Parameters
312
312
  ----------
@@ -362,13 +362,13 @@ class AssetCatalog(Client):
362
362
  body = {
363
363
  "filter": search_string
364
364
  }
365
- response = await self._async_make_request("POST", url, body)
365
+ response = await self._async_make_request("POST", url, body, time_out=time_out)
366
366
  return response.json().get("searchMatches", "no assets found")
367
367
 
368
368
  def find_assets_in_domain(self, search_string: str, start_from: int = 0,
369
369
  page_size: int = max_paging_size, starts_with: bool = True,
370
370
  ends_with: bool = False, ignore_case: bool = True,
371
- server: str = None) -> list | str:
371
+ server: str = None, time_out:int = 60) -> list | str:
372
372
  """ Retrieve the list of engine action metadata elements that contain the search string. Async Version.
373
373
  Parameters
374
374
  ----------
@@ -412,7 +412,7 @@ class AssetCatalog(Client):
412
412
  loop = asyncio.get_event_loop()
413
413
  response = loop.run_until_complete(
414
414
  self._async_find_assets_in_domain(search_string, start_from,page_size,
415
- starts_with, ends_with, ignore_case, server)
415
+ starts_with, ends_with, ignore_case, server, time_out)
416
416
  )
417
417
  return response
418
418
 
@@ -961,7 +961,7 @@ class AutomatedCuration(Client):
961
961
 
962
962
  url = (f"{self.platform_url}/servers/{server}/api/open-metadata/automated-curation/governance-action-processes/"
963
963
  f"by-name?startFrom={start_from}&pageSize={page_size}")
964
- body = {"class": "NameRequestBody", "name": name}
964
+ body = {"filter": name}
965
965
  response = await self._async_make_request("POST", url, body)
966
966
  return response.json().get("elements", "no actions")
967
967
 
@@ -1274,7 +1274,7 @@ class AutomatedCuration(Client):
1274
1274
  url = (f"{self.platform_url}/servers/{server}/api/open-metadata/automated-curation/"
1275
1275
  f"governance-action-types/by-name?startFrom={start_from}&pageSize={page_size}")
1276
1276
 
1277
- body = {"class": "NameRequestBody", "name": action_type_name}
1277
+ body = {"filter": action_type_name}
1278
1278
 
1279
1279
  response = await self._async_make_request("POST", url, body)
1280
1280
  return response.json().get("elements", "no actions")
@@ -1360,7 +1360,7 @@ class AutomatedCuration(Client):
1360
1360
  url = (f"{self.platform_url}/servers/{server}/api/open-metadata/automated-curation/governance-action-types/"
1361
1361
  f"by-search-string?startFrom={start_from}&pageSize={page_size}&startsWith={starts_with_s}&"
1362
1362
  f"endsWith={ends_with_s}&ignoreCase={ignore_case_s}")
1363
- body = {"class": "SearchStringRequestBody", "name": search_string}
1363
+ body = {"filter": search_string}
1364
1364
  response = await self._async_make_request("POST", url, body)
1365
1365
  return response.json().get("elements", "no action types")
1366
1366
 
@@ -1588,7 +1588,7 @@ class AutomatedCuration(Client):
1588
1588
  return response.json().get("guid", "Action not initiated")
1589
1589
 
1590
1590
  def initiate_file_folder_survey(self, file_folder_guid: str,
1591
- survey_name: str = "Egeria:GovernanceActionType:AssetSurvey:survey-folder",
1591
+ survey_name: str = "AssetSurvey:survey-folder",
1592
1592
  server: str = None) -> str:
1593
1593
  """ Initiate a file folder survey - async version
1594
1594
 
@@ -3,6 +3,7 @@ SPDX-License-Identifier: Apache-2.0
3
3
  Copyright Contributors to the ODPi Egeria project.
4
4
 
5
5
  Script to create a new file to initiate tech guids.
6
+ These GUIDS should be copied into the __init__.py.
6
7
 
7
8
  """
8
9
  import json
@@ -393,7 +393,8 @@ class ServerOps(Platform):
393
393
  server))
394
394
  return response
395
395
 
396
- async def _async_refresh_integration_connectors(self, connector_name: str = None, server: str = None) -> None:
396
+ async def _async_refresh_integration_connectors(self, connector_name: str = None, server: str = None,
397
+ time_out: int = 60) -> None:
397
398
  """ Issue a refresh request to all connectors running in the integration daemon, or a specific connector
398
399
  if one is specified - async version"""
399
400
  if server is None:
@@ -406,16 +407,17 @@ class ServerOps(Platform):
406
407
  "class": "NameRequestBody",
407
408
  "name": connector_name
408
409
  }
409
- await self._async_make_request("POST", url, body)
410
+ await self._async_make_request("POST", url, body, time_out=time_out
411
+ )
410
412
  else:
411
- await self._async_make_request("POST", url)
413
+ await self._async_make_request("POST", url, time_out= time_out)
412
414
 
413
415
  return
414
416
 
415
- def refresh_integration_connectors(self, connector_name: str, server: str = None) -> None:
417
+ def refresh_integration_connectors(self, connector_name: str, server: str = None, time_out: int = 60) -> None:
416
418
  """ Restart the integration Connector specified by connector_name"""
417
419
  loop = asyncio.get_event_loop()
418
- loop.run_until_complete(self._async_refresh_integration_connectors(connector_name, server))
420
+ loop.run_until_complete(self._async_refresh_integration_connectors(connector_name, server, time_out))
419
421
 
420
422
 
421
423
  if __name__ == "__main__":
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "pyegeria"
3
- version = "0.5.5.25"
3
+ version = "0.5.6.1"
4
4
  license = 'Apache 2.0'
5
5
  authors = ["Dan Wolfson <dan.wolfson@pdr-associates.com>"]
6
6
  readme = "README.md"
@@ -1,55 +0,0 @@
1
- global template_guids, integration_guids
2
- TEMPLATE_GUIDS['CSV Data File template'] = '13770f93-13c8-42be-9bb8-e0b1b1e52b1f'
3
- TEMPLATE_GUIDS['Keystore File template'] = 'fbcfcc0c-1652-421f-b49b-c3e1c108768f'
4
- INTEGRATION_GUIDS['JDBC Relational Database'] = '70dcd0b7-9f06-48ad-ad44-ae4d7a7762aa'
5
- TEMPLATE_GUIDS['Data File template'] = '66d8dda9-00cf-4e59-938c-4b0583596b1e'
6
- TEMPLATE_GUIDS['View Server template'] = 'fd61ca01-390d-4aa2-a55d-426826aa4e1b'
7
- TEMPLATE_GUIDS['Archive File template'] = '7578e504-d00f-406d-a194-3fc0a351cdf9'
8
- TEMPLATE_GUIDS['OSS Unity Catalog Volume template'] = '92d2d2dc-0798-41f0-9512-b10548d312b7'
9
- TEMPLATE_GUIDS['PostgreSQL Relational Database template'] = '3d398b3f-7ae6-4713-952a-409f3dea8520'
10
- INTEGRATION_GUIDS['PostgreSQL Relational Database'] = '70dcd0b7-9f06-48ad-ad44-ae4d7a7762aa'
11
- TEMPLATE_GUIDS['Program File template'] = '32d27e9c-1fdf-455a-ad2a-42b4d7d99108'
12
- TEMPLATE_GUIDS['FileFolder template'] = 'fbdd8efd-1b69-474c-bb6d-0a304b394146'
13
- INTEGRATION_GUIDS['FileFolder'] = 'cd6479e1-2fe7-4426-b358-8a0cf70be117'
14
- INTEGRATION_GUIDS['FileFolder'] = '1b98cdac-dd0a-4621-93db-99ef5a1098bc'
15
- TEMPLATE_GUIDS['PostgreSQL Server template'] = '542134e6-b9ce-4dce-8aef-22e8daf34fdb'
16
- INTEGRATION_GUIDS['PostgreSQL Server'] = '36f69fd0-54ba-4f59-8a44-11ccf2687a34'
17
- TEMPLATE_GUIDS['Audio Data File template'] = '39b4b670-7f15-4744-a5ba-62e8edafbcee'
18
- TEMPLATE_GUIDS['Document File template'] = 'eb6f728d-fa54-4350-9807-1199cbf96851'
19
- TEMPLATE_GUIDS['Integration Daemon template'] = '6b3516f0-dd13-4786-9601-07215f995197'
20
- TEMPLATE_GUIDS['XML Data File template'] = 'ea67ae71-c674-473e-b38b-689879d2a7d9'
21
- TEMPLATE_GUIDS['Parquet Data File template'] = '7f6cd744-79c3-4d25-a056-eeb1a91574c3'
22
- TEMPLATE_GUIDS['3D Image Data File template'] = '0059ea2b-6292-4cac-aa6f-a80a605f1114'
23
- TEMPLATE_GUIDS['YAML File template'] = '2221855b-2b64-4b45-a2ee-c40adc5e2a64'
24
- TEMPLATE_GUIDS['Metadata Access Server template'] = 'bd8de890-fa79-4c24-aab8-20b41b5893dd'
25
- TEMPLATE_GUIDS['Properties File template'] = '3b281111-a0ef-4fc4-99e7-9a0ef84a7636'
26
- TEMPLATE_GUIDS['Vector Data File template'] = 'db1bec7f-55a9-40d3-91c0-a57b76d422e2'
27
- TEMPLATE_GUIDS['OSS Unity Catalog Schema template'] = '5bf92b0f-3970-41ea-b0a3-aacfbf6fd92e'
28
- TEMPLATE_GUIDS['OSS Unity Catalog Table template'] = '6cc1e5f5-4c1e-4290-a80e-e06643ffb13d'
29
- TEMPLATE_GUIDS['Apache Kafka Server template'] = '5e1ff810-5418-43f7-b7c4-e6e062f9aff7'
30
- INTEGRATION_GUIDS['Apache Kafka Server'] = 'fa1f711c-0b34-4b57-8e6e-16162b132b0c'
31
- TEMPLATE_GUIDS['Executable File template'] = '3d99a163-7a13-4576-a212-784010a8302a'
32
- TEMPLATE_GUIDS['JSON Data File template'] = 'c4836635-7e9e-446a-83b5-15e206b1aff3'
33
- TEMPLATE_GUIDS['OSS Unity Catalog Function template'] = 'a490ba65-6104-4213-9be9-524e16fed8aa'
34
- TEMPLATE_GUIDS['File System template'] = '522f228c-097c-4f90-9efc-26c1f2696f87'
35
- TEMPLATE_GUIDS['Source Code File template'] = '9c7013ef-f29b-4b01-a8ea-5ea14f64c67a'
36
- INTEGRATION_GUIDS['Software Server'] = 'b89d9a5a-2ea6-49bc-a4fc-e7df9f3ca93e'
37
- TEMPLATE_GUIDS['Apple MacBook Pro template'] = '32a9fd56-85c9-47fe-a211-9da3871bf4da'
38
- TEMPLATE_GUIDS['Build Instruction File template'] = 'fbb2fa2e-8bcb-402e-9be7-5c6db9f2c504'
39
- TEMPLATE_GUIDS['Spreadsheet Data File template'] = 'e4fabff5-2ba9-4050-9076-6ed917970b4c'
40
- TEMPLATE_GUIDS['UNIX File System template'] = '27117270-8667-41d0-a99a-9118f9b60199'
41
- TEMPLATE_GUIDS['Video Data File template'] = '93b2b722-ec0f-4da4-960a-b8d4922f8bf5'
42
- TEMPLATE_GUIDS['PostgreSQL Relational Database Schema template'] = '82a5417c-d882-4271-8444-4c6a996a8bfc'
43
- TEMPLATE_GUIDS['OSS Unity Catalog Server template'] = 'dcca9788-b30f-4007-b1ac-ec634aff6879'
44
- INTEGRATION_GUIDS['OSS Unity Catalog Server'] = '06d068d9-9e08-4e67-8c59-073bbf1013af'
45
- TEMPLATE_GUIDS['Engine Host template'] = '1764a891-4234-45f1-8cc3-536af40c790d'
46
- TEMPLATE_GUIDS['Avro Data File template'] = '9f5be428-058e-41dd-b506-3a222283b579'
47
- TEMPLATE_GUIDS['File template'] = 'ae3067c7-cc72-4a18-88e1-746803c2c86f'
48
- TEMPLATE_GUIDS['Apache Kafka Topic template'] = 'ea8f81c9-c59c-47de-9525-7cc59d1251e5'
49
- TEMPLATE_GUIDS['Script File template'] = 'dbd5e6bb-1ff8-46f4-a007-fb0485f68c92'
50
- TEMPLATE_GUIDS['Apache Atlas Server template'] = 'fe6dce45-a978-4417-ab55-17f05b8bcea7'
51
- TEMPLATE_GUIDS['Raster Data File template'] = '47211156-f03f-4881-8526-015e695a3dac'
52
- TEMPLATE_GUIDS['Data Folder template'] = '372a0379-7060-4c9d-8d84-bc709b31794c'
53
- TEMPLATE_GUIDS['OSS Unity Catalog Catalog template'] = '5ee006aa-a6d6-411b-9b8d-5f720c079cae'
54
- INTEGRATION_GUIDS['OSS Unity Catalog Catalog'] = '74dde22f-2249-4ea3-af2b-b39e73f79b81'
55
- TEMPLATE_GUIDS['OMAG Server Platform template'] = '9b06c4dc-ddc8-47ae-b56b-28775d3a96f0'
File without changes
File without changes