pyegeria 0.8.4.26__tar.gz → 0.8.4.28__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 (100) hide show
  1. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/PKG-INFO +1 -1
  2. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cli/__init__.py +1 -1
  3. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cli/egeria.py +47 -28
  4. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cli/egeria_ops.py +38 -26
  5. pyegeria-0.8.4.28/commands/ops/load_archive.py +73 -0
  6. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/monitor_gov_eng_status.py +25 -14
  7. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/monitor_integ_daemon_status.py +6 -9
  8. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/monitor_server_status.py +1 -2
  9. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/__init__.py +0 -1
  10. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/runtime_manager_omvs.py +1 -1
  11. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyproject.toml +2 -2
  12. pyegeria-0.8.4.26/commands/ops/load_archive.py +0 -62
  13. pyegeria-0.8.4.26/commands/ops/monitor_coco_status.py +0 -103
  14. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/LICENSE +0 -0
  15. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/README.md +0 -0
  16. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/README.md +0 -0
  17. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/__init__.py +0 -0
  18. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/get_asset_graph.py +0 -0
  19. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/get_collection.py +0 -0
  20. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/get_project_dependencies.py +0 -0
  21. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/get_project_structure.py +0 -0
  22. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/get_tech_type_elements.py +0 -0
  23. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/get_tech_type_template.py +0 -0
  24. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/list_archives.py +0 -0
  25. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/list_assets.py +0 -0
  26. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/list_cert_types.py +0 -0
  27. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/list_glossary.py +0 -0
  28. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/list_projects.py +0 -0
  29. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/list_relationships.py +0 -0
  30. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/list_tech_types.py +0 -0
  31. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/list_todos.py +0 -0
  32. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cat/list_user_ids.py +0 -0
  33. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cli/egeria_cat.py +0 -0
  34. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cli/egeria_my.py +0 -0
  35. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cli/egeria_tech.py +0 -0
  36. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/cli/ops_config.py +0 -0
  37. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/my/README.md +0 -0
  38. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/my/__init__.py +0 -0
  39. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/my/list_my_profile.py +0 -0
  40. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/my/list_my_roles.py +0 -0
  41. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/my/monitor_my_todos.py +0 -0
  42. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/my/monitor_open_todos.py +0 -0
  43. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/my/my_profile_actions.py +0 -0
  44. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/my/todo_actions.py +0 -0
  45. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/README.md +0 -0
  46. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/__init__.py +0 -0
  47. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/engine_actions.py +0 -0
  48. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/gov_server_actions.py +0 -0
  49. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/list_catalog_targets.py +0 -0
  50. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/monitor_asset_events.py +0 -0
  51. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/monitor_engine_activity.py +0 -0
  52. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/monitor_engine_activity_c.py +0 -0
  53. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/monitor_platform_status.py +0 -0
  54. /pyegeria-0.8.4.26/commands/ops/monitor_server_list.py → /pyegeria-0.8.4.28/commands/ops/orig_monitor_server_list.py +0 -0
  55. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/orig_monitor_server_status.py +0 -0
  56. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/refresh_integration_daemon.py +0 -0
  57. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/ops/restart_integration_daemon.py +0 -0
  58. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/tech/README.md +0 -0
  59. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/tech/__init__.py +0 -0
  60. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/tech/get_element_info.py +0 -0
  61. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/tech/get_guid_info.py +0 -0
  62. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/tech/get_tech_details.py +0 -0
  63. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/tech/list_asset_types.py +0 -0
  64. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/tech/list_elements.py +0 -0
  65. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/tech/list_elements_x.py +0 -0
  66. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/tech/list_registered_services.py +0 -0
  67. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/tech/list_related_specification.py +0 -0
  68. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/tech/list_relationship_types.py +0 -0
  69. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/tech/list_tech_templates.py +0 -0
  70. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/tech/list_valid_metadata_values.py +0 -0
  71. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/commands/tech/x_list_related_elements.py +0 -0
  72. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/_client.py +0 -0
  73. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/_deprecated_gov_engine.py +0 -0
  74. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/_exceptions.py +0 -0
  75. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/_globals.py +0 -0
  76. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/_validators.py +0 -0
  77. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/asset_catalog_omvs.py +0 -0
  78. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/automated_curation_omvs.py +0 -0
  79. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/classification_manager_omvs.py +0 -0
  80. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/collection_manager_omvs.py +0 -0
  81. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/core_omag_server_config.py +0 -0
  82. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/create_tech_guid_lists.py +0 -0
  83. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/egeria_cat_client.py +0 -0
  84. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/egeria_client.py +0 -0
  85. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/egeria_config_client.py +0 -0
  86. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/egeria_my_client.py +0 -0
  87. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/egeria_tech_client.py +0 -0
  88. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/feedback_manager_omvs.py +0 -0
  89. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/full_omag_server_config.py +0 -0
  90. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/glossary_browser_omvs.py +0 -0
  91. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/glossary_manager_omvs.py +0 -0
  92. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/mermaid_utilities.py +0 -0
  93. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/my_profile_omvs.py +0 -0
  94. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/platform_services.py +0 -0
  95. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/project_manager_omvs.py +0 -0
  96. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/registered_info.py +0 -0
  97. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/server_operations.py +0 -0
  98. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/utils.py +0 -0
  99. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/valid_metadata_omvs.py +0 -0
  100. {pyegeria-0.8.4.26 → pyegeria-0.8.4.28}/pyegeria/x_action_author_omvs.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pyegeria
3
- Version: 0.8.4.26
3
+ Version: 0.8.4.28
4
4
  Summary: A python client for Egeria
5
5
  Home-page: https://github.com/odpi/egeria-python
6
6
  License: Apache 2.0
@@ -10,4 +10,4 @@ This is an emerging capability based on the **click** package. Feedback welcome!
10
10
 
11
11
  """
12
12
 
13
- from .ops_config import Config
13
+ from .ops_config import Config
@@ -52,7 +52,6 @@ from commands.ops.monitor_integ_daemon_status import (
52
52
  from commands.ops.monitor_platform_status import (
53
53
  display_status as p_display_status,
54
54
  )
55
- from commands.ops.monitor_server_list import display_status as display_list
56
55
  from commands.ops.monitor_server_status import (
57
56
  display_status as s_display_status,
58
57
  )
@@ -839,7 +838,7 @@ def show_projects(ctx, search_string):
839
838
  "--status",
840
839
  type=click.Choice(
841
840
  ["OPEN", "IN_PROGRESS", "WAITING", "COMPLETE", "ABANDONED", "None"],
842
- case_sensitive="False",
841
+ case_sensitive=False,
843
842
  ),
844
843
  help="Enter an optional status filter, default='OPEN'",
845
844
  required=False,
@@ -877,7 +876,13 @@ def list_archives(ctx):
877
876
  """Display a tree graph of information about an asset"""
878
877
  c = ctx.obj
879
878
  display_archive_list(
880
- c.view_server, c.view_server_url, c.userid, c.password, None, c.jupyter, c.width
879
+ c.view_server,
880
+ c.view_server_url,
881
+ c.userid,
882
+ c.password,
883
+ False,
884
+ c.jupyter,
885
+ c.width,
881
886
  )
882
887
 
883
888
 
@@ -964,30 +969,21 @@ def show_server(ctx):
964
969
  "--full",
965
970
  is_flag=True,
966
971
  default=False,
967
- help="If True, full server descriptions will be shown",
972
+ help="If set, full server descriptions will be shown",
968
973
  )
969
974
  @click.pass_context
970
975
  def show_server_status(ctx, full):
971
976
  """Display a live status view of Egeria servers for the specified Egeria platform"""
972
977
  c = ctx.obj
973
- if full:
974
- display_list(
975
- c.metadata_store,
976
- c.metadata_store_url,
977
- c.admin_user,
978
- c.admin_user_password,
979
- c.jupyter,
980
- c.width,
981
- )
982
- else:
983
- s_display_status(
984
- c.metadata_store,
985
- c.metadata_store_url,
986
- c.admin_user,
987
- c.admin_user_password,
988
- c.jupyter,
989
- c.width,
990
- )
978
+ s_display_status(
979
+ full,
980
+ c.view_server,
981
+ c.view_server_url,
982
+ c.userid,
983
+ c.password,
984
+ c.jupyter,
985
+ c.width,
986
+ )
991
987
 
992
988
 
993
989
  @show.group("engines")
@@ -1001,12 +997,24 @@ def engine_host(ctx):
1001
997
  @click.option(
1002
998
  "--list", is_flag=True, default=False, help="If True, a paged list will be shown"
1003
999
  )
1000
+ @click.option(
1001
+ "--engine-host",
1002
+ default="engine-host",
1003
+ help="Name of the Engine Host to get status for",
1004
+ )
1004
1005
  @click.pass_context
1005
- def gov_eng_status(ctx, list):
1006
+ def gov_eng_status(ctx, engine_host, list):
1006
1007
  """Display engine-host status information"""
1007
1008
  c = ctx.obj
1008
1009
  display_gov_eng_status(
1009
- c.engine_host, c.engine_host_url, c.userid, c.password, list, c.jupyter, c.width
1010
+ engine_host,
1011
+ c.view_server,
1012
+ c.view_server_url,
1013
+ c.userid,
1014
+ c.password,
1015
+ list,
1016
+ c.jupyter,
1017
+ c.width,
1010
1018
  )
1011
1019
 
1012
1020
 
@@ -1122,11 +1130,16 @@ def integration_daemon(ctx):
1122
1130
  default="all",
1123
1131
  help="Name of connector to refresh or 'all' to refresh all",
1124
1132
  )
1125
- def refresh_connectors(ctx, connector):
1133
+ @click.option(
1134
+ "--server",
1135
+ default="integration-daemon",
1136
+ help="Name of the integration server to refresh",
1137
+ )
1138
+ def refresh_connectors(ctx, server, connector):
1126
1139
  """Refresh the specified integration connector or ALL connectors if not specified"""
1127
1140
  c = ctx.obj
1128
1141
  refresh_connector(
1129
- connector, c.integration_daemon, c.integration_daemon_url, c.userid, c.password
1142
+ connector, server, c.view_server_url, c.view_server, c.userid, c.password
1130
1143
  )
1131
1144
 
1132
1145
 
@@ -1137,11 +1150,16 @@ def refresh_connectors(ctx, connector):
1137
1150
  default="all",
1138
1151
  help="Name of connector to restart or 'all' to restart all",
1139
1152
  )
1140
- def restart_connectors(ctx, connector):
1153
+ @click.option(
1154
+ "--server",
1155
+ default="integration-daemon",
1156
+ help="Name of the integration server to refresh",
1157
+ )
1158
+ def restart_connectors(ctx, server, connector):
1141
1159
  """Restart the specified integration connector or ALL connectors if not specified"""
1142
1160
  c = ctx.obj
1143
1161
  restart_connector(
1144
- connector, c.integration_daemon, c.integration_daemon_url, c.userid, c.password
1162
+ connector, server, c.view_server_url, c.view_server, c.userid, c.password
1145
1163
  )
1146
1164
 
1147
1165
 
@@ -1161,6 +1179,7 @@ def engine_host(ctx):
1161
1179
 
1162
1180
  engine_host.add_command(start_server)
1163
1181
  engine_host.add_command(stop_server)
1182
+ engine_host.add_command(refresh_gov_eng_config)
1164
1183
 
1165
1184
 
1166
1185
  @tell.group("repository")
@@ -34,7 +34,6 @@ from commands.ops.monitor_integ_daemon_status import (
34
34
  from commands.ops.monitor_platform_status import (
35
35
  display_status as p_display_status,
36
36
  )
37
- from commands.ops.monitor_server_list import display_status as display_list
38
37
  from commands.ops.monitor_server_status import (
39
38
  display_status as s_display_status,
40
39
  )
@@ -231,30 +230,21 @@ def show_server(ctx):
231
230
  "--full",
232
231
  is_flag=True,
233
232
  default=False,
234
- help="If True, full server descriptions will be shown",
233
+ help="If set, full server descriptions will be shown",
235
234
  )
236
235
  @click.pass_context
237
236
  def show_server_status(ctx, full):
238
237
  """Display a live status view of Egeria servers for the specified Egeria platform"""
239
238
  c = ctx.obj
240
- if full:
241
- display_list(
242
- c.metadata_store,
243
- c.metadata_store_url,
244
- c.admin_user,
245
- c.admin_user_password,
246
- c.jupyter,
247
- c.width,
248
- )
249
- else:
250
- s_display_status(
251
- c.metadata_store,
252
- c.metadata_store_url,
253
- c.admin_user,
254
- c.admin_user_password,
255
- c.jupyter,
256
- c.width,
257
- )
239
+ s_display_status(
240
+ full,
241
+ c.view_server,
242
+ c.view_server_url,
243
+ c.userid,
244
+ c.password,
245
+ c.jupyter,
246
+ c.width,
247
+ )
258
248
 
259
249
 
260
250
  @show.group("engines")
@@ -265,15 +255,27 @@ def engine_host(ctx):
265
255
 
266
256
 
267
257
  @engine_host.command("status")
258
+ @click.option(
259
+ "--engine-host",
260
+ default="engine-host",
261
+ help="Name of the Engine Host to get status for",
262
+ )
268
263
  @click.option(
269
264
  "--list", is_flag=True, default=False, help="If True, a paged list will be shown"
270
265
  )
271
266
  @click.pass_context
272
- def gov_eng_status(ctx, list):
267
+ def gov_eng_status(ctx, engine_host, list):
273
268
  """Display engine-host status information"""
274
269
  c = ctx.obj
275
270
  display_gov_eng_status(
276
- c.engine_host, c.engine_host_url, c.userid, c.password, list, c.jupyter, c.width
271
+ c.engine_host,
272
+ c.view_server,
273
+ c.view_server_url,
274
+ c.userid,
275
+ c.password,
276
+ list,
277
+ c.jupyter,
278
+ c.width,
277
279
  )
278
280
 
279
281
 
@@ -400,11 +402,16 @@ def integration_daemon(ctx):
400
402
  default="all",
401
403
  help="Name of connector to refresh or 'all' to refresh all",
402
404
  )
403
- def refresh_connectors(ctx, connector):
405
+ @click.option(
406
+ "--server",
407
+ default="integration-daemon",
408
+ help="Name of the integration server to refresh",
409
+ )
410
+ def refresh_connectors(ctx, server, connector):
404
411
  """Refresh the specified integration connector or ALL connectors if not specified"""
405
412
  c = ctx.obj
406
413
  refresh_connector(
407
- connector, c.integration_daemon, c.integration_daemon_url, c.userid, c.password
414
+ connector, server, c.view_server_url, c.view_server, c.userid, c.password
408
415
  )
409
416
 
410
417
 
@@ -415,11 +422,16 @@ def refresh_connectors(ctx, connector):
415
422
  default="all",
416
423
  help="Name of connector to restart or 'all' to restart all",
417
424
  )
418
- def restart_connectors(ctx, connector):
425
+ @click.option(
426
+ "--server",
427
+ default="integration-daemon",
428
+ help="Name of the integration server to refresh",
429
+ )
430
+ def restart_connectors(ctx, server, connector):
419
431
  """Restart the specified integration connector or ALL connectors if not specified"""
420
432
  c = ctx.obj
421
433
  restart_connector(
422
- connector, c.integration_daemon, c.integration_daemon_url, c.userid, c.password
434
+ connector, server, c.view_server_url, c.view_server, c.userid, c.password
423
435
  )
424
436
 
425
437
 
@@ -0,0 +1,73 @@
1
+ """
2
+ SPDX-License-Identifier: Apache-2.0
3
+ Copyright Contributors to the ODPi Egeria project.
4
+
5
+
6
+
7
+ This script refreshed an integration daemon.
8
+
9
+ """
10
+
11
+ import os
12
+ import click
13
+ from pyegeria import AutomatedCuration, EgeriaTech
14
+ from pyegeria._exceptions import (
15
+ InvalidParameterException,
16
+ PropertyServerException,
17
+ UserNotAuthorizedException,
18
+ print_exception_response,
19
+ )
20
+
21
+ EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
22
+ EGERIA_KAFKA_ENDPOINT = os.environ.get("KAFKA_ENDPOINT", "localhost:9092")
23
+ EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
24
+ EGERIA_VIEW_SERVER = os.environ.get("VIEW_SERVER", "view-server")
25
+ EGERIA_VIEW_SERVER_URL = os.environ.get(
26
+ "EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
27
+ )
28
+ EGERIA_INTEGRATION_DAEMON = os.environ.get("INTEGRATION_DAEMON", "integration-daemon")
29
+ EGERIA_INTEGRATION_DAEMON_URL = os.environ.get(
30
+ "EGERIA_INTEGRATION_DAEMON_URL", "https://localhost:9443"
31
+ )
32
+ EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
33
+ EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
34
+ EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
35
+ EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
36
+
37
+
38
+ @click.command("load-archive")
39
+ @click.option(
40
+ "--file",
41
+ prompt="Path on the Metadata Server of the archive file to load",
42
+ default="content-packs/CocoComboArchive.omarchive",
43
+ help="Full path on the Metadata Server to the archive file to load",
44
+ )
45
+ @click.option(
46
+ "--server", default=EGERIA_METADATA_STORE, help="Egeria metadata store to load"
47
+ )
48
+ @click.option(
49
+ "--view-server", default=EGERIA_VIEW_SERVER, help="Egeria view server to connect to"
50
+ )
51
+ @click.option(
52
+ "--url", default=EGERIA_PLATFORM_URL, help="URL of Egeria platform to connect to"
53
+ )
54
+ @click.option("--userid", default=EGERIA_ADMIN_USER, help="Egeria admin user")
55
+ @click.option("--password", default=EGERIA_ADMIN_PASSWORD, help="Egeria admin password")
56
+ @click.option("--timeout", default=60, help="Number of seconds to wait")
57
+ def load_archive(file, server, view_server, url, userid, password, timeout):
58
+ """Load an Open Metadata Archive"""
59
+
60
+ try:
61
+ s_client = EgeriaTech(view_server, url, userid, password)
62
+ token = s_client.create_egeria_bearer_token()
63
+ server_guid = s_client.get_guid_for_name(server)
64
+ s_client.add_archive_file(file, server_guid, timeout=timeout)
65
+
66
+ click.echo(f"Loaded archive: {file}")
67
+
68
+ except (InvalidParameterException, PropertyServerException) as e:
69
+ print_exception_response(e)
70
+
71
+
72
+ if __name__ == "__main__":
73
+ load_archive()
@@ -9,7 +9,6 @@ Unit tests for the Utils helper functions using the Pytest framework.
9
9
  A simple status display for Governance Actions
10
10
  """
11
11
  import argparse
12
- import json
13
12
  import os
14
13
  import time
15
14
 
@@ -23,7 +22,7 @@ from pyegeria import (
23
22
  InvalidParameterException,
24
23
  PropertyServerException,
25
24
  UserNotAuthorizedException,
26
- print_exception_response,
25
+ EgeriaTech,
27
26
  )
28
27
  from pyegeria.server_operations import ServerOps
29
28
 
@@ -53,7 +52,8 @@ disable_ssl_warnings = True
53
52
 
54
53
 
55
54
  def display_gov_eng_status(
56
- server: str,
55
+ engine_host: str,
56
+ view_server: str,
57
57
  url: str,
58
58
  username: str,
59
59
  user_pass: str,
@@ -62,8 +62,9 @@ def display_gov_eng_status(
62
62
  width: int = EGERIA_WIDTH,
63
63
  ):
64
64
  console = Console(width=EGERIA_WIDTH)
65
- server_name = server
66
- s_client = ServerOps(server_name, url, username, user_pass)
65
+
66
+ s_client = EgeriaTech(view_server, url, username, user_pass)
67
+ token = s_client.create_egeria_bearer_token()
67
68
 
68
69
  def generate_table() -> Table:
69
70
  """Make a new table."""
@@ -76,7 +77,7 @@ def display_gov_eng_status(
76
77
  caption_style="white on black",
77
78
  show_lines=True,
78
79
  box=box.ROUNDED,
79
- caption=f"Server: '{server_name}' running on {url}",
80
+ caption=f"Server: '{engine_host}' running on {url}",
80
81
  expand=True,
81
82
  )
82
83
  # table.footer: f"Server {view_server} on Platform {good_platform1_url}"
@@ -86,9 +87,11 @@ def display_gov_eng_status(
86
87
  table.add_column("Engine Status")
87
88
  table.add_column("Request Types")
88
89
 
89
- gov_eng_status = s_client.get_governance_engine_summaries()
90
+ eng_host_guid = s_client.get_guid_for_name(engine_host)
91
+ gov_eng_status = s_client.get_server_report(eng_host_guid)
92
+ eng_summaries = gov_eng_status["governanceEngineSummaries"]
90
93
  sorted_gov_eng_status = sorted(
91
- gov_eng_status, key=lambda k: k.get("governanceEngineName", " ")
94
+ eng_summaries, key=lambda k: k.get("governanceEngineName", " ")
92
95
  )
93
96
  for engine in sorted_gov_eng_status:
94
97
  gov_eng = engine["governanceEngineName"]
@@ -113,7 +116,7 @@ def display_gov_eng_status(
113
116
 
114
117
  table.add_row(gov_eng, eng_type, eng_desc, eng_status, eng_req_type_out)
115
118
 
116
- table.caption = f"Server {server_name} running on {url}"
119
+ table.caption = f"Server {engine_host} running on {url}"
117
120
  return table
118
121
 
119
122
  try:
@@ -165,19 +168,27 @@ def main_live():
165
168
 
166
169
  def main_paging():
167
170
  parser = argparse.ArgumentParser()
168
- parser.add_argument("--server", help="Name of the server to display status for")
169
- parser.add_argument("--url", help="URL Platform to connect to")
171
+ parser.add_argument(
172
+ "--engine_host", help="Name of the engine host to display status for"
173
+ )
174
+ parser.add_argument("--view_server", help="Name of the view server to use")
175
+ parser.add_argument("--url", help="URL of Platform to connect to")
170
176
  parser.add_argument("--userid", help="User Id")
171
177
  parser.add_argument("--password", help="User Password")
172
178
  args = parser.parse_args()
173
179
 
174
- server = args.server if args.server is not None else EGERIA_ENGINE_HOST
175
- url = args.url if args.url is not None else EGERIA_ENGINE_HOST_URL
180
+ engine_host = (
181
+ args.engine_host if args.engine_host is not None else EGERIA_ENGINE_HOST
182
+ )
183
+ view_server = (
184
+ args.view_server if args.view_server is not None else EGERIA_VIEW_SERVER
185
+ )
186
+ url = args.url if args.url is not None else EGERIA_VIEW_SERVER_URL
176
187
  userid = args.userid if args.userid is not None else EGERIA_USER
177
188
  user_pass = args.password if args.password is not None else EGERIA_USER_PASSWORD
178
189
 
179
190
  display_gov_eng_status(
180
- server=server, url=url, username=userid, user_pass=user_pass, paging=True
191
+ engine_host, view_server, url, userid, user_pass, paging=True
181
192
  )
182
193
 
183
194
 
@@ -17,7 +17,7 @@ from rich.console import Console
17
17
  from rich.live import Live
18
18
  from rich.table import Table
19
19
 
20
- from pyegeria import ServerOps, AutomatedCuration
20
+ from pyegeria import EgeriaTech, AutomatedCuration
21
21
  from pyegeria._exceptions import (
22
22
  InvalidParameterException,
23
23
  PropertyServerException,
@@ -36,8 +36,6 @@ EGERIA_INTEGRATION_DAEMON = os.environ.get("INTEGRATION_DAEMON", "integration-da
36
36
  EGERIA_INTEGRATION_DAEMON_URL = os.environ.get(
37
37
  "EGERIA_INTEGRATION_DAEMON_URL", "https://localhost:9443"
38
38
  )
39
- EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
40
- EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
41
39
  EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
42
40
  EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
43
41
  EGERIA_JUPYTER = bool(os.environ.get("EGERIA_JUPYTER", "False"))
@@ -58,9 +56,9 @@ def display_integration_daemon_status(
58
56
  width: int = EGERIA_WIDTH,
59
57
  sort: bool = True,
60
58
  ):
61
- s_client = ServerOps(integ_server, integ_url, user)
62
- a_client = AutomatedCuration(view_server, view_url, user, user_pass)
63
- token = a_client.create_egeria_bearer_token()
59
+ s_client = EgeriaTech(view_server, view_url, user, user_pass)
60
+ token = s_client.create_egeria_bearer_token()
61
+ server_guid = s_client.get_guid_for_name(integ_server)
64
62
 
65
63
  def generate_table() -> Table:
66
64
  """Make a new table."""
@@ -84,7 +82,7 @@ def display_integration_daemon_status(
84
82
  table.add_column("Target Element", min_width=20)
85
83
  table.add_column("Exception Message", min_width=10)
86
84
 
87
- daemon_status = s_client.get_integration_daemon_status()
85
+ daemon_status = s_client.get_server_report(server_guid)
88
86
 
89
87
  reports = daemon_status["integrationConnectorReports"]
90
88
  if sort is True:
@@ -102,7 +100,7 @@ def display_integration_daemon_status(
102
100
  refresh_interval = str(connector.get("minMinutesBetweenRefresh", "---"))
103
101
  exception_msg = " "
104
102
  if connector_guid != "---":
105
- targets = a_client.get_catalog_targets(connector_guid)
103
+ targets = s_client.get_catalog_targets(connector_guid)
106
104
  tgt_tab = Table()
107
105
  tgt_tab.add_column("Target")
108
106
  tgt_tab.add_column("UniqueName")
@@ -172,7 +170,6 @@ def display_integration_daemon_status(
172
170
 
173
171
  finally:
174
172
  s_client.close_session()
175
- a_client.close_session()
176
173
 
177
174
 
178
175
  def main_live():
@@ -21,7 +21,6 @@ import time
21
21
  from rich.live import Live
22
22
  from rich.table import Table
23
23
 
24
- from examples.doc_samples.Create_Sustainability_Collection_Sample import description
25
24
  from pyegeria import (
26
25
  InvalidParameterException,
27
26
  PropertyServerException,
@@ -152,7 +151,7 @@ def main():
152
151
  parser.add_argument("--password", help="User Password")
153
152
  args = parser.parse_args()
154
153
 
155
- extended = args.extended if args.extended is not None else True
154
+ extended = args.extended if args.extended is not None else False
156
155
  server = args.server if args.server is not None else EGERIA_VIEW_SERVER
157
156
  url = args.url if args.url is not None else EGERIA_PLATFORM_URL
158
157
  userid = args.userid if args.userid is not None else EGERIA_ADMIN_USER
@@ -34,7 +34,6 @@ from ._exceptions import (
34
34
  print_exception_response,
35
35
  )
36
36
 
37
- # from .utils import print_response, body_slimmer, wrap_text
38
37
  from .utils import print_response, body_slimmer
39
38
  from ._client import Client
40
39
  from .automated_curation_omvs import AutomatedCuration
@@ -1926,7 +1926,7 @@ class RuntimeManager(Client):
1926
1926
 
1927
1927
  response = await self._async_make_request("GET", url)
1928
1928
 
1929
- return response.json().get("elements", "No server found")
1929
+ return response.json().get("element", "No server found")
1930
1930
 
1931
1931
  def get_server_report(self, server_guid: str = None) -> str | list:
1932
1932
  """Returns details about the running server.
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "pyegeria"
3
- version = "0.8.4.26"
3
+ version = "0.8.4.28"
4
4
  license = 'Apache 2.0'
5
5
  authors = ["Dan Wolfson <dan.wolfson@pdr-associates.com>"]
6
6
  readme = "README.md"
@@ -79,7 +79,7 @@ pytest = "^8.2.2"
79
79
  monitor_integ_daemon_status = "commands.ops.monitor_integ_daemon_status:main_live"
80
80
  list_integ_daemon_status = "commands.ops.monitor_integ_daemon_status:main_paging"
81
81
  monitor_platform_status = "commands.ops.monitor_platform_status:main"
82
- monitor_server_list = "commands.ops.monitor_server_list:main"
82
+ monitor_server_list = "commands.ops.orig_monitor_server_list:main"
83
83
  monitor_server_status = "commands.ops.monitor_server_status:main"
84
84
  refresh_integration_daemon = "commands.ops.refresh_integration_daemon:main"
85
85
  restart_integration_daemon = "commands.ops.restart_integration_daemon:main"
@@ -1,62 +0,0 @@
1
- """
2
- SPDX-License-Identifier: Apache-2.0
3
- Copyright Contributors to the ODPi Egeria project.
4
-
5
-
6
-
7
- This script refreshed an integration daemon.
8
-
9
- """
10
-
11
- import os
12
- import argparse
13
- import time
14
- import click
15
- from trogon import tui
16
- from pyegeria import ServerOps, AutomatedCuration
17
- from pyegeria._exceptions import (
18
- InvalidParameterException,
19
- PropertyServerException,
20
- UserNotAuthorizedException,
21
- print_exception_response,
22
- )
23
- EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
24
- EGERIA_KAFKA_ENDPOINT = os.environ.get('KAFKA_ENDPOINT', 'localhost:9092')
25
- EGERIA_PLATFORM_URL = os.environ.get('EGERIA_PLATFORM_URL', 'https://localhost:9443')
26
- EGERIA_VIEW_SERVER = os.environ.get('VIEW_SERVER', 'view-server')
27
- EGERIA_VIEW_SERVER_URL = os.environ.get('EGERIA_VIEW_SERVER_URL', 'https://localhost:9443')
28
- EGERIA_INTEGRATION_DAEMON = os.environ.get('INTEGRATION_DAEMON', 'integration-daemon')
29
- EGERIA_INTEGRATION_DAEMON_URL = os.environ.get('EGERIA_INTEGRATION_DAEMON_URL', 'https://localhost:9443')
30
- EGERIA_ADMIN_USER = os.environ.get('ADMIN_USER', 'garygeeke')
31
- EGERIA_ADMIN_PASSWORD = os.environ.get('ADMIN_PASSWORD', 'secret')
32
- EGERIA_USER = os.environ.get('EGERIA_USER', 'erinoverview')
33
- EGERIA_USER_PASSWORD = os.environ.get('EGERIA_USER_PASSWORD', 'secret')
34
-
35
-
36
- @click.command('load-archive')
37
- @click.option('--file', prompt= "Path on the Metadata Server of the archive file to load",
38
- default='content-packs/CocoComboArchive.omarchive',
39
- help='Full path on the Metadata Server to the archive file to load')
40
- @click.option('--server', default = EGERIA_METADATA_STORE, help='Egeria metadata store to load')
41
- @click.option('--url', default = EGERIA_PLATFORM_URL, help='URL of Egeria platform to connect to')
42
- @click.option('--userid', default = EGERIA_ADMIN_USER, help='Egeria admin user')
43
- @click.option('--password', default = EGERIA_ADMIN_PASSWORD, help='Egeria admin password')
44
- @click.option('--timeout', default = 60, help = 'Number of seconds to wait')
45
- def load_archive(file, server, url, userid, password, timeout):
46
- """Load an Open Metadata Archive"""
47
-
48
- try:
49
-
50
- s_client = ServerOps(server, url, userid, password)
51
-
52
- s_client.add_archive_file(file, server, timeout = timeout)
53
-
54
- click.echo(f"Loaded archive: {file}")
55
-
56
-
57
- except (InvalidParameterException, PropertyServerException) as e:
58
- print_exception_response(e)
59
-
60
-
61
- if __name__ == "__main__":
62
- load_archive()
@@ -1,103 +0,0 @@
1
- #!/usr/bin/python3
2
- """
3
- SPDX-License-Identifier: Apache-2.0
4
- Copyright Contributors to the ODPi Egeria project.
5
-
6
- Unit tests for the Utils helper functions using the Pytest framework.
7
-
8
-
9
- A simple server status display for the Coco Pharmaceuticals Configuration
10
- """
11
-
12
- import argparse
13
- import time
14
-
15
- from rich import box
16
- from rich import print
17
- from rich.layout import Layout
18
- from rich.live import Live
19
- from rich.panel import Panel
20
- from rich.table import Table
21
-
22
- from pyegeria._exceptions import (
23
- InvalidParameterException,
24
- PropertyServerException,
25
- UserNotAuthorizedException,
26
- print_exception_response,
27
- )
28
- from pyegeria.server_operations import ServerOps
29
-
30
- disable_ssl_warnings = True
31
-
32
-
33
- def display_status(server: str, url: str, username: str):
34
- layout = Layout()
35
-
36
- p_client1 = ServerOps("Core Catalog", "https://localhost:9443", username)
37
- p_client2 = ServerOps('Datalake Catalog', "https://localhost:9444", username)
38
- p_client3 = ServerOps('DevCatalog', "https://localhost:9445", username)
39
-
40
- def generate_table(p_client) -> Table:
41
- """Make a new table."""
42
- table = Table(
43
- title=f"Server Status for {p_client.server_name}- {time.asctime()}",
44
- # style = "black on grey66",
45
- header_style="white on dark_blue",
46
- caption=f"Server Status for Platform - '{p_client.platform_url}'",
47
- # show_lines=True,
48
- )
49
-
50
- table.add_column("Known Server")
51
- table.add_column("Status")
52
- known_server_list = p_client.get_known_servers()
53
- active_server_list = p_client.get_active_server_list()
54
- if type(known_server_list) is str:
55
- return table
56
-
57
- for server in known_server_list:
58
- if server in active_server_list:
59
- status = "Active"
60
- else:
61
- status = "Inactive"
62
-
63
- table.add_row(server,
64
- "[red]Inactive" if status == "Inactive" else "[green]Active",
65
- )
66
- return table
67
-
68
- try:
69
- layout.split_row(
70
- Layout(Panel(generate_table(p_client1), box.ROUNDED)),
71
- Layout(Panel(generate_table(p_client2), box.ROUNDED)),
72
- Layout(Panel(generate_table(p_client3), box.ROUNDED))
73
- )
74
- with Live(layout, refresh_per_second=4, screen=True) as live:
75
- while True:
76
- time.sleep(2)
77
- live.update(layout)
78
-
79
- except (InvalidParameterException, PropertyServerException, UserNotAuthorizedException) as e:
80
- print_exception_response(e)
81
- except KeyboardInterrupt:
82
- pass
83
-
84
- finally:
85
- p_client1.close_session()
86
- p_client2.close_session()
87
- p_client3.close_session()
88
-
89
- def main():
90
- parser = argparse.ArgumentParser()
91
- parser.add_argument("--server", help="Name of the server to display status for")
92
- parser.add_argument("--url", help="URL Platform to connect to")
93
- parser.add_argument("--userid", help="User Id")
94
- args = parser.parse_args()
95
-
96
- server = args.server if args.server is not None else "active-metadata-store"
97
- url = args.url if args.url is not None else "https://localhost:9443"
98
- userid = args.userid if args.userid is not None else 'garygeeke'
99
-
100
- display_status(server, url, userid)
101
-
102
- if __name__ == "__main__":
103
- main()
File without changes
File without changes