pyegeria 0.2.4__py3-none-any.whl → 5.3.0.dev3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) hide show
  1. pyegeria/README.md +35 -0
  2. pyegeria/__init__.py +345 -14
  3. pyegeria/_client.py +376 -126
  4. pyegeria/_deprecated_gov_engine.py +451 -0
  5. pyegeria/_exceptions.py +6 -6
  6. pyegeria/_globals.py +7 -1
  7. pyegeria/_validators.py +9 -6
  8. pyegeria/asset_catalog_omvs.py +807 -0
  9. pyegeria/automated_curation_omvs.py +3760 -0
  10. pyegeria/classification_manager_omvs.py +5238 -0
  11. pyegeria/collection_manager_omvs.py +2727 -0
  12. pyegeria/commands/README.md +47 -0
  13. pyegeria/commands/__init__.py +22 -0
  14. pyegeria/commands/cat/README.md +16 -0
  15. pyegeria/commands/cat/__init__.py +1 -0
  16. pyegeria/commands/cat/exp_list_glossaries.py +156 -0
  17. pyegeria/commands/cat/get_asset_graph.py +319 -0
  18. pyegeria/commands/cat/get_collection.py +148 -0
  19. pyegeria/commands/cat/get_project_dependencies.py +168 -0
  20. pyegeria/commands/cat/get_project_structure.py +168 -0
  21. pyegeria/commands/cat/get_tech_type_elements.py +174 -0
  22. pyegeria/commands/cat/glossary_actions.py +362 -0
  23. pyegeria/commands/cat/list_assets.py +176 -0
  24. pyegeria/commands/cat/list_cert_types.py +194 -0
  25. pyegeria/commands/cat/list_collections.py +162 -0
  26. pyegeria/commands/cat/list_deployed_catalogs.py +217 -0
  27. pyegeria/commands/cat/list_deployed_database_schemas.py +251 -0
  28. pyegeria/commands/cat/list_deployed_databases.py +202 -0
  29. pyegeria/commands/cat/list_glossaries.py +150 -0
  30. pyegeria/commands/cat/list_projects.py +221 -0
  31. pyegeria/commands/cat/list_servers_deployed_imp.py +158 -0
  32. pyegeria/commands/cat/list_tech_type_elements.py +190 -0
  33. pyegeria/commands/cat/list_tech_types.py +140 -0
  34. pyegeria/commands/cat/list_terms.py +242 -0
  35. pyegeria/commands/cat/list_todos.py +189 -0
  36. pyegeria/commands/cat/list_user_ids.py +145 -0
  37. pyegeria/commands/cli/__init__.py +13 -0
  38. pyegeria/commands/cli/egeria.py +1844 -0
  39. pyegeria/commands/cli/egeria_cat.py +638 -0
  40. pyegeria/commands/cli/egeria_login_tui.py +313 -0
  41. pyegeria/commands/cli/egeria_my.py +248 -0
  42. pyegeria/commands/cli/egeria_ops.py +502 -0
  43. pyegeria/commands/cli/egeria_tech.py +618 -0
  44. pyegeria/commands/cli/ops_config.py +45 -0
  45. pyegeria/commands/cli/txt_custom_v2.tcss +19 -0
  46. pyegeria/commands/doc/README.md +145 -0
  47. pyegeria/commands/doc/Visual Command Reference/README.md +511 -0
  48. pyegeria/commands/doc/Visual Command Reference/cat/show/assets/asset-graph 2024-11-20 at 15.56.42.png +0 -0
  49. pyegeria/commands/doc/Visual Command Reference/cat/show/assets/assets-in-domain 2024-11-20 at 15.49.55@2x.png +0 -0
  50. pyegeria/commands/doc/Visual Command Reference/cat/show/assets/elements-of-type 2024-11-20 at 16.01.35.png +0 -0
  51. pyegeria/commands/doc/Visual Command Reference/cat/show/assets/tech-type-elements 2024-11-20 at 16.05.05.png +0 -0
  52. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-data-catalogs 2024-12-17 at 15.43.27@2x.png +0 -0
  53. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-data-catalogs-2024-11-20 at 16.17.43@2x.png +0 -0
  54. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-schemas 2024-11-25 at 20.14.50@2x.png +0 -0
  55. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-schemas 2024-12-17 at 15.48.38@2x.png +0 -0
  56. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-servers 2024-11-25 at 20.21.25@2x.png +0 -0
  57. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-servers 2024-12-17 at 15.52.16@2x.png +0 -0
  58. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed_databases 2024-12-16 at 16.40.31@2x.png +0 -0
  59. pyegeria/commands/doc/Visual Command Reference/cat/show/glossary/list-glossaries 2024-11-25 at 20.30.02.png +0 -0
  60. pyegeria/commands/doc/Visual Command Reference/cat/show/glossary/list-terms 2024-11-25 at 20.32.11.png +0 -0
  61. pyegeria/commands/doc/Visual Command Reference/cat/show/info/asset-types 2024-11-25 at 20.34.19@2x.png +0 -0
  62. pyegeria/commands/doc/Visual Command Reference/cat/show/info/certification-types 2024-11-25 at 20.37.07.png +0 -0
  63. pyegeria/commands/doc/Visual Command Reference/cat/show/info/collection-graph 2024-12-12 at 11.33.18@2x.png +0 -0
  64. pyegeria/commands/doc/Visual Command Reference/cat/show/info/list-collections 2024-12-10 at 14.25.51@2x.png +0 -0
  65. pyegeria/commands/doc/Visual Command Reference/cat/show/info/list-todos 2024-12-12 at 11.46.30@2x.png +0 -0
  66. pyegeria/commands/doc/Visual Command Reference/cat/show/info/list-user-ids 2024-12-12 at 11.51.09@2x.png +0 -0
  67. pyegeria/commands/doc/Visual Command Reference/cat/show/info/tech-types 2024-12-12 at 11.37.20@2x.png +0 -0
  68. pyegeria/commands/doc/Visual Command Reference/cat/show/projects/project_dependencies 2024-12-14 at 16.24.39@2x.png +0 -0
  69. pyegeria/commands/doc/Visual Command Reference/cat/show/projects/project_structure 2024-12-14 at 16.21.35@2x.png +0 -0
  70. pyegeria/commands/doc/Visual Command Reference/cat/show/projects/projects 2024-12-14 at 16.18.10@2x.png +0 -0
  71. pyegeria/commands/doc/Visual Command Reference/hey_egeria tui 2024-12-16 at 16.58.22@2x.png +0 -0
  72. pyegeria/commands/doc/Visual Command Reference/my/show/my_profile 2024-12-14 at 16.29.27@2x.png +0 -0
  73. pyegeria/commands/doc/Visual Command Reference/my/show/my_roles 2024-12-14 at 16.32.10@2x.png +0 -0
  74. pyegeria/commands/doc/Visual Command Reference/my/show/my_todos 2024-12-15 at 16.24.13@2x.png +0 -0
  75. pyegeria/commands/doc/Visual Command Reference/my/show/open_todos 2024-12-14 at 16.36.12@2x.png +0 -0
  76. pyegeria/commands/doc/Visual Command Reference/ops/show/engines/list_engine_activity compressed 2024-12-15 at 16.48.48@2x.png +0 -0
  77. pyegeria/commands/doc/Visual Command Reference/ops/show/engines/monitor_engine_activity 2024-12-15 at 16.32.55@2x.png +0 -0
  78. pyegeria/commands/doc/Visual Command Reference/ops/show/engines/monitor_engine_activity compressed 2024-12-15 at 16.38.29@2x.png +0 -0
  79. pyegeria/commands/doc/Visual Command Reference/ops/show/engines/monitor_engine_status 2024-12-15 at 16.51.26.jpeg +0 -0
  80. pyegeria/commands/doc/Visual Command Reference/ops/show/integrations/monitor_integration_daemon_status 2024-12-15 at 16.57.12@2x.png +0 -0
  81. pyegeria/commands/doc/Visual Command Reference/ops/show/integrations/monitor_integration_targets 2024-12-15 at 17.02.19@2x.png +0 -0
  82. pyegeria/commands/doc/Visual Command Reference/ops/show/platforms/monitor_platform_status 2024-12-15 at 19.53.18@2x.png +0 -0
  83. pyegeria/commands/doc/Visual Command Reference/ops/show/servers/monitor_server_status 2024-12-15 at 19.59.39@2x.png +0 -0
  84. pyegeria/commands/doc/Visual Command Reference/ops/show/servers/monitor_server_status full 2024-12-15 at 20.01.57@2x.png +0 -0
  85. pyegeria/commands/doc/Visual Command Reference/ops/show/servers/monitor_startup_servers 2024-12-15 at 19.56.07@2x.png +0 -0
  86. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/get_anchored_elements 2024-12-15 at 21.25.41@2x.png +0 -0
  87. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/get_elements_of_om_type 2024-12-16 at 14.39.59@2x.png +0 -0
  88. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/info_for_guid 2024-12-16 at 11.35.29@2x.png +0 -0
  89. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/list_elements_by_om-type 2024-12-16 at 14.24.18@2x.png +0 -0
  90. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/list_elements_by_om-type extended 2024-12-16 at 14.28.46@2x.png +0 -0
  91. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/list_elements_of_om_type_by_classification 2024-12-16 at 14.35.26@2x.png +0 -0
  92. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/related_elements 2024-12-16 at 14.55.01@2x.png +0 -0
  93. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/show_related_specifications 2024-12-16 at 15.04.55@2x.png +0 -0
  94. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/asset_types 2024-12-16 at 15.10.16@2x.png +0 -0
  95. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/detailed_governance_action_processes 2024-12-16 at 15.16.26@2x.png +0 -0
  96. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/governance_action_processes 2024-12-16 at 15.13.01@2x.png +0 -0
  97. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/registered_services 2024-12-16 at 16.44.54@2x.png +0 -0
  98. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/relationship_types 2024-12-16 at 16.20.34@2x.png +0 -0
  99. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/relationship_types 2024-12-19 at 10.51.54@2x.png +0 -0
  100. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/valid_metadata_values 2024-12-16 at 15.31.56@2x.png +0 -0
  101. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/list_tech_type_template_specs 2024-12-16 at 16.03.22@2x.png +0 -0
  102. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/list_technology_types 2024-12-16 at 15.39.20@2x.png +0 -0
  103. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/tech_type_details 2024-12-16 at 15.37.21@2x.png +0 -0
  104. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/tech_type_templates 2024-12-16 at 16.11.48@2x.png +0 -0
  105. pyegeria/commands/doc/glossary/basic-glossary-tui.md +109 -0
  106. pyegeria/commands/doc/glossary/images/delete-glossary-step1 2024-11-06 at 15.47.23@2x.png +0 -0
  107. pyegeria/commands/doc/glossary/images/delete-glossary-step2 2024-11-06 at 15.51.29@2x.png +0 -0
  108. pyegeria/commands/doc/glossary/images/delete-glossary-step3 2024-11-06 at 15.53.19@2x.png +0 -0
  109. pyegeria/commands/doc/glossary/images/delete-glossary-step4 2024-11-06 at 15.55.11@2x.png +0 -0
  110. pyegeria/commands/doc/glossary/images/out-create-glossary example 2024-11-05 at 20.38.04@2x.png +0 -0
  111. pyegeria/commands/doc/glossary/images/out-create-term 2024-11-06 at 20.48.29.png +0 -0
  112. pyegeria/commands/doc/glossary/images/out-delete-term 2024-11-07 at 03.57.25.png +0 -0
  113. pyegeria/commands/doc/glossary/images/out-display-terms-for-glossary-test 2024-11-06 at 20.51.28.png +0 -0
  114. pyegeria/commands/doc/glossary/images/out-export-example 2024-11-07 at 09.54.57.png +0 -0
  115. pyegeria/commands/doc/glossary/images/out-exported-terms 2024-11-06 at 21.06.32.png +0 -0
  116. pyegeria/commands/doc/glossary/images/out-glossary-list example 2024-11-05 at 20.41.02@2x.png +0 -0
  117. pyegeria/commands/doc/glossary/images/out-import-terms 2024-11-07 at 08.15.18.png +0 -0
  118. pyegeria/commands/doc/glossary/images/out-list-all-terms 2024-11-06 at 16.22.20@2x.png +0 -0
  119. pyegeria/commands/doc/glossary/images/out-list-terms-for-example 2024-11-06 at 16.40.12.png +0 -0
  120. pyegeria/commands/doc/glossary/images/out-list-terms-second 2024-11-06 at 16.45.13.png +0 -0
  121. pyegeria/commands/doc/glossary/images/out-pipx install pyegeria 2024-11-10 at 18.12.21.png +0 -0
  122. pyegeria/commands/doc/glossary/images/out-server-status-full 2024-11-10 at 18.25.14.png +0 -0
  123. pyegeria/commands/doc/glossary/images/out-servers-status 2024-11-10 at 18.15.42.png +0 -0
  124. pyegeria/commands/doc/glossary/images/out-upsert-import 2024-11-07 at 19.37.00.png +0 -0
  125. pyegeria/commands/doc/glossary/images/tui-2024-11-10 at 18.26.29.png +0 -0
  126. pyegeria/commands/doc/glossary/images/tui-create-glossary example 2024-11-05 at 20.34.24@2x.png +0 -0
  127. pyegeria/commands/doc/glossary/images/tui-create-term 2024-11-06 at 20.46.35.png +0 -0
  128. pyegeria/commands/doc/glossary/images/tui-delete-term 2024-11-07 at 03.51.57.png +0 -0
  129. pyegeria/commands/doc/glossary/images/tui-display-terms-for-example 2024-11-06 at 20.56.49.png +0 -0
  130. pyegeria/commands/doc/glossary/images/tui-export-example 2024-11-07 at 09.52.59.png +0 -0
  131. pyegeria/commands/doc/glossary/images/tui-hey-egeria 2024-11-10 at 18.31.01.png +0 -0
  132. pyegeria/commands/doc/glossary/images/tui-import-upsert-example 2024-11-07 at 10.08.37.png +0 -0
  133. pyegeria/commands/doc/glossary/images/tui-list-terms-second 2024-11-06 at 16.46.34.png +0 -0
  134. pyegeria/commands/doc/glossary/images/tui-load-archive.png +0 -0
  135. pyegeria/commands/doc/glossary/images/tui-server-status-full 2024-11-10 at 19.14.36.png +0 -0
  136. pyegeria/commands/doc/glossary/images/tui-show-glossaries 2024-11-07 at 20.00.05.png +0 -0
  137. pyegeria/commands/doc/glossary/images/tui-show-glossary-terms 2024-11-05 at 19.37.53@2x.png +0 -0
  138. pyegeria/commands/doc/glossary/images/tui-upsert 2024-11-07 at 11.49.04.png +0 -0
  139. pyegeria/commands/doc/glossary/images/upsert-example.om-terms 2024-11-07 at 11.44.05.png +0 -0
  140. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/README.md +346 -0
  141. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/CleanShot 2024-11-18 at 21.32.03@2x.png +0 -0
  142. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/Xmind 1731421782704.png +0 -0
  143. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/Xmind 1731422134920.png +0 -0
  144. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/hey_egeria 2024-11-12 at 20.38.43.png +0 -0
  145. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/hey_egeria cat 2024-11-12 at 21.41.43.png +0 -0
  146. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/out-integ-status-list 2024-11-12 at 16.45.26.png +0 -0
  147. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/out-integ-status-live 2024-11-12 at 16.44.12@2x.png +0 -0
  148. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/out-server-status 2024-11-10 at 18.15.42@2x.png +0 -0
  149. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/out-server-status-full 2024-11-10 at 18.25.14@2x.png +0 -0
  150. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/short-cut commands 2024-11-12 at 22.22.13.png +0 -0
  151. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-hey-egeria.png +0 -0
  152. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-integration-status-paging.png +0 -0
  153. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-load-archive 2024-11-10 at 19.19.09@2x.png +0 -0
  154. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-show-server-status 2024-11-10 at 18.52.01@2x.png +0 -0
  155. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-show-server-status-full 2024-11-10.png +0 -0
  156. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-status-paging 2024-11-12 at 16.26.14@2x.png +0 -0
  157. pyegeria/commands/my/README.md +17 -0
  158. pyegeria/commands/my/__init__.py +0 -0
  159. pyegeria/commands/my/list_my_profile.py +163 -0
  160. pyegeria/commands/my/list_my_roles.py +151 -0
  161. pyegeria/commands/my/monitor_my_todos.py +205 -0
  162. pyegeria/commands/my/monitor_open_todos.py +175 -0
  163. pyegeria/commands/my/todo_actions.py +242 -0
  164. pyegeria/commands/ops/README.md +24 -0
  165. pyegeria/commands/ops/__init__.py +22 -0
  166. pyegeria/commands/ops/gov_server_actions.py +177 -0
  167. pyegeria/commands/ops/list_archives.py +161 -0
  168. pyegeria/commands/ops/list_catalog_targets.py +203 -0
  169. pyegeria/commands/ops/load_archive.py +75 -0
  170. pyegeria/commands/ops/monitor_asset_events.py +107 -0
  171. pyegeria/commands/ops/monitor_engine_activity.py +270 -0
  172. pyegeria/commands/ops/monitor_engine_activity_c.py +286 -0
  173. pyegeria/commands/ops/monitor_gov_eng_status.py +288 -0
  174. pyegeria/commands/ops/monitor_integ_daemon_status.py +321 -0
  175. pyegeria/commands/ops/monitor_platform_status.py +188 -0
  176. pyegeria/commands/ops/monitor_server_startup.py +117 -0
  177. pyegeria/commands/ops/monitor_server_status.py +182 -0
  178. pyegeria/commands/ops/orig_monitor_server_list.py +140 -0
  179. pyegeria/commands/ops/orig_monitor_server_status.py +124 -0
  180. pyegeria/commands/ops/refresh_integration_daemon.py +83 -0
  181. pyegeria/commands/ops/restart_integration_daemon.py +82 -0
  182. pyegeria/commands/ops/table_integ_daemon_status.py +237 -0
  183. pyegeria/commands/ops/x_engine_actions.py +76 -0
  184. pyegeria/commands/tech/README.md +24 -0
  185. pyegeria/commands/tech/__init__.py +0 -0
  186. pyegeria/commands/tech/get_element_info.py +144 -0
  187. pyegeria/commands/tech/get_guid_info.py +134 -0
  188. pyegeria/commands/tech/get_tech_details.py +173 -0
  189. pyegeria/commands/tech/get_tech_type_template.py +166 -0
  190. pyegeria/commands/tech/list_anchored_elements.py +205 -0
  191. pyegeria/commands/tech/list_asset_types.py +123 -0
  192. pyegeria/commands/tech/list_elements.py +168 -0
  193. pyegeria/commands/tech/list_elements_for_classification.py +171 -0
  194. pyegeria/commands/tech/list_elements_x.py +191 -0
  195. pyegeria/commands/tech/list_gov_action_processes.py +139 -0
  196. pyegeria/commands/tech/list_registered_services.py +180 -0
  197. pyegeria/commands/tech/list_related_elements.py +207 -0
  198. pyegeria/commands/tech/list_related_specification.py +169 -0
  199. pyegeria/commands/tech/list_relationship_types.py +164 -0
  200. pyegeria/commands/tech/list_relationships.py +179 -0
  201. pyegeria/commands/tech/list_tech_templates.py +360 -0
  202. pyegeria/commands/tech/list_valid_metadata_values.py +178 -0
  203. pyegeria/commands/tech/table_tech_templates.py +238 -0
  204. pyegeria/commands/tech/x_list_related_elements.py +165 -0
  205. pyegeria/core_omag_server_config.py +550 -313
  206. pyegeria/create_tech_guid_lists.py +105 -0
  207. pyegeria/egeria_cat_client.py +78 -0
  208. pyegeria/egeria_client.py +117 -0
  209. pyegeria/egeria_config_client.py +45 -0
  210. pyegeria/egeria_my_client.py +56 -0
  211. pyegeria/egeria_tech_client.py +93 -0
  212. pyegeria/feedback_manager_omvs.py +4573 -0
  213. pyegeria/full_omag_server_config.py +1337 -0
  214. pyegeria/glossary_browser_omvs.py +2507 -0
  215. pyegeria/glossary_manager_omvs.py +3597 -0
  216. pyegeria/mermaid_utilities.py +218 -0
  217. pyegeria/metadata_explorer_omvs.py +2371 -0
  218. pyegeria/my_profile_omvs.py +1021 -0
  219. pyegeria/platform_services.py +259 -218
  220. pyegeria/project_manager_omvs.py +1854 -0
  221. pyegeria/registered_info.py +111 -108
  222. pyegeria/runtime_manager_omvs.py +2299 -0
  223. pyegeria/server_operations.py +178 -71
  224. pyegeria/template_manager_omvs.py +1414 -0
  225. pyegeria/utils.py +75 -85
  226. pyegeria/valid_metadata_omvs.py +1911 -0
  227. pyegeria/x_action_author_omvs.py +200 -0
  228. pyegeria-5.3.0.dev3.dist-info/METADATA +70 -0
  229. pyegeria-5.3.0.dev3.dist-info/RECORD +232 -0
  230. {pyegeria-0.2.4.dist-info → pyegeria-5.3.0.dev3.dist-info}/WHEEL +1 -1
  231. pyegeria-5.3.0.dev3.dist-info/entry_points.txt +81 -0
  232. pyegeria/config.toml +0 -11
  233. pyegeria/curation_omvs.py +0 -458
  234. pyegeria/exceptions.py +0 -382
  235. pyegeria/glossary_omvs.py +0 -639
  236. pyegeria/gov_engine.py +0 -573
  237. pyegeria-0.2.4.dist-info/METADATA +0 -57
  238. pyegeria-0.2.4.dist-info/RECORD +0 -19
  239. {pyegeria-0.2.4.dist-info/licenses → pyegeria-5.3.0.dev3.dist-info}/LICENSE +0 -0
@@ -0,0 +1,1844 @@
1
+ #!/usr/bin/env python3
2
+ """
3
+ SPDX-License-Identifier: Apache-2.0
4
+ Copyright Contributors to the ODPi Egeria project.
5
+
6
+
7
+ A command line interface for Egeria Users - all commands
8
+
9
+ This is an emerging capability based on the **click** package. Feedback welcome!
10
+
11
+ """
12
+ import os
13
+ import sys
14
+
15
+ import click
16
+ from trogon import tui
17
+
18
+ from pyegeria.commands.cli.egeria_login_tui import login
19
+ from pyegeria.commands.cat.get_asset_graph import asset_viewer
20
+ from pyegeria.commands.cat.get_collection import collection_viewer
21
+ from pyegeria.commands.cat.get_project_dependencies import project_dependency_viewer
22
+ from pyegeria.commands.cat.get_project_structure import project_structure_viewer
23
+ from pyegeria.commands.cat.get_tech_type_elements import tech_viewer
24
+ from pyegeria.commands.cat.list_tech_type_elements import list_tech_elements
25
+ from pyegeria.commands.cli.egeria_ops import show_server
26
+ from pyegeria.commands.tech.get_tech_type_template import template_viewer
27
+ from pyegeria.commands.cat.list_assets import display_assets
28
+ from pyegeria.commands.cat.list_cert_types import display_certifications
29
+ from pyegeria.commands.cat.list_terms import display_glossary_terms
30
+ from pyegeria.commands.cat.list_projects import display_project_list
31
+ from pyegeria.commands.tech.list_anchored_elements import display_anchored_elements
32
+ from pyegeria.commands.tech.list_elements_x import list_elements_x
33
+ from pyegeria.commands.tech.list_relationships import list_relationships
34
+ from pyegeria.commands.cat.list_tech_types import display_tech_types
35
+ from pyegeria.commands.cat.list_todos import display_to_dos as list_todos
36
+ from pyegeria.commands.cat.list_user_ids import list_user_ids
37
+ from pyegeria.commands.ops.list_archives import display_archive_list
38
+ from pyegeria.commands.cat.list_servers_deployed_imp import display_servers_by_dep_imp
39
+ from pyegeria.commands.cli.ops_config import Config
40
+ from pyegeria.commands.my.list_my_profile import display_my_profile
41
+ from pyegeria.commands.my.list_my_roles import display_my_roles
42
+ from pyegeria.commands.my.monitor_my_todos import display_my_todos
43
+ from pyegeria.commands.my.monitor_open_todos import display_todos
44
+ from pyegeria.commands.cat.list_deployed_database_schemas import (
45
+ list_deployed_database_schemas,
46
+ )
47
+ from pyegeria.commands.cat.list_collections import display_collections
48
+ from pyegeria.commands.cat.list_deployed_catalogs import list_deployed_catalogs
49
+ from pyegeria.commands.cat.list_deployed_databases import list_deployed_databases
50
+ from pyegeria.commands.cat.glossary_actions import (
51
+ create_glossary,
52
+ delete_glossary,
53
+ create_term,
54
+ import_terms,
55
+ delete_term,
56
+ export_terms,
57
+ )
58
+ from pyegeria.commands.cat.list_glossaries import display_glossaries
59
+
60
+ from pyegeria.commands.my.todo_actions import (
61
+ mark_todo_complete,
62
+ change_todo_status,
63
+ reassign_todo,
64
+ delete_todo,
65
+ create_todo,
66
+ )
67
+
68
+
69
+ from pyegeria.commands.ops.gov_server_actions import (
70
+ add_catalog_target,
71
+ remove_catalog_target,
72
+ update_catalog_target,
73
+ refresh_gov_eng_config,
74
+ stop_server,
75
+ start_server,
76
+ )
77
+ from pyegeria.commands.ops.list_catalog_targets import display_catalog_targets
78
+ from pyegeria.commands.ops.load_archive import load_archive
79
+ from pyegeria.commands.ops.monitor_engine_activity import display_engine_activity
80
+ from pyegeria.commands.ops.monitor_engine_activity_c import display_engine_activity_c
81
+ from pyegeria.commands.ops.monitor_gov_eng_status import display_gov_eng_status
82
+ from pyegeria.commands.ops.monitor_integ_daemon_status import (
83
+ display_integration_daemon_status,
84
+ )
85
+ from pyegeria.commands.ops.monitor_platform_status import (
86
+ display_status as p_display_status,
87
+ )
88
+ from pyegeria.commands.ops.monitor_server_status import (
89
+ display_status as s_display_status,
90
+ )
91
+ from pyegeria.commands.ops.refresh_integration_daemon import refresh_connector
92
+ from pyegeria.commands.ops.restart_integration_daemon import restart_connector
93
+ from pyegeria.commands.ops.monitor_server_startup import display_startup_status
94
+
95
+ from pyegeria.commands.tech.get_element_info import display_elements
96
+ from pyegeria.commands.tech.get_guid_info import display_guid
97
+ from pyegeria.commands.tech.get_tech_details import tech_details_viewer
98
+ from pyegeria.commands.tech.list_asset_types import display_asset_types
99
+ from pyegeria.commands.tech.list_elements_for_classification import (
100
+ list_classified_elements,
101
+ )
102
+ from pyegeria.commands.tech.list_elements import list_elements
103
+ from pyegeria.commands.tech.list_registered_services import display_registered_svcs
104
+ from pyegeria.commands.tech.list_related_specification import (
105
+ display_related_specification,
106
+ )
107
+ from pyegeria.commands.tech.list_related_elements import list_related_elements
108
+
109
+ from pyegeria.commands.tech.list_relationship_types import display_relationship_types
110
+ from pyegeria.commands.tech.list_tech_templates import display_templates_spec
111
+ from pyegeria.commands.tech.list_valid_metadata_values import display_metadata_values
112
+ from pyegeria.commands.tech.list_gov_action_processes import display_gov_processes
113
+
114
+
115
+ @tui()
116
+ # @tui('menu', 'menu', 'A textual command line interface')
117
+ @click.version_option("0.5.2 ", prog_name="hey_egeria")
118
+ @click.group()
119
+ @click.option(
120
+ "--server",
121
+ default=os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store"),
122
+ help="Egeria metadata store to work with",
123
+ )
124
+ @click.option(
125
+ "--url",
126
+ default=os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443"),
127
+ help="URL of Egeria metadata store platform to connect to",
128
+ )
129
+ @click.option(
130
+ "--integration_daemon",
131
+ default=os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon"),
132
+ help="Egeria integration daemon to work with",
133
+ )
134
+ @click.option(
135
+ "--integration_daemon_url",
136
+ default=os.environ.get("EGERIA_INTEGRATION_DAEMON_URL", "https://localhost:9443"),
137
+ help="URL of Egeria integration daemon platform to connect to",
138
+ )
139
+ @click.option(
140
+ "--view_server",
141
+ default=os.environ.get("EGERIA_VIEW_SERVER", "view-server"),
142
+ help="Egeria view server to work with",
143
+ )
144
+ @click.option(
145
+ "--view_server_url",
146
+ default=os.environ.get("EGERIA_VIEW_SERVER_URL", "https://localhost:9443"),
147
+ help="URL of Egeria view server platform to connect to",
148
+ )
149
+ @click.option(
150
+ "--engine_host",
151
+ default=os.environ.get("EGERIA_ENGINE_HOST", "engine-host"),
152
+ help="Egeria engine host to work with",
153
+ )
154
+ @click.option(
155
+ "--engine_host_url",
156
+ default=os.environ.get("EGERIA_ENGINE_HOST_URL", "https://localhost:9443"),
157
+ help="URL of Egeria engine host platform to connect to",
158
+ )
159
+ @click.option(
160
+ "--admin_user",
161
+ default=os.environ.get("EGERIA_ADMIN_USER", "garygeeke"),
162
+ help="Egeria admin user",
163
+ )
164
+ @click.option(
165
+ "--admin_user_password",
166
+ default=os.environ.get("EGERIA_ADMIN_PASSWORD", "secret"),
167
+ help="Egeria admin password",
168
+ )
169
+ @click.option(
170
+ "--userid",
171
+ default=os.environ.get("EGERIA_USER", "erinoverview"),
172
+ help="Egeria user",
173
+ )
174
+ @click.option(
175
+ "--password",
176
+ default=os.environ.get("EGERIA_USER_PASSWORD", "secret"),
177
+ help="Egeria user password",
178
+ )
179
+ @click.option("--timeout", default=60, help="Number of seconds to wait")
180
+ @click.option(
181
+ "--jupyter",
182
+ is_flag=True,
183
+ type=bool,
184
+ default=os.environ.get("EGERIA_JUPYTER", False),
185
+ help="Enable for rendering in a Jupyter terminal",
186
+ )
187
+ @click.option(
188
+ "--width",
189
+ default=os.environ.get("EGERIA_WIDTH", 200),
190
+ type=int,
191
+ help="Screen width, in characters, to use",
192
+ )
193
+ @click.option(
194
+ "--home_glossary_guid",
195
+ default=os.environ.get("EGERIA_HOME_GLOSSARY_GUID", None),
196
+ help="Glossary guid to use as the home glossary",
197
+ )
198
+ @click.option(
199
+ "--glossary_path",
200
+ default=os.environ.get("EGERIA_GLOSSARY_PATH", "/home/jovyan/loading-bay/glossary"),
201
+ help="Path to glossary import/export files",
202
+ )
203
+ @click.pass_context
204
+ def cli(
205
+ ctx,
206
+ server,
207
+ url,
208
+ view_server,
209
+ view_server_url,
210
+ integration_daemon,
211
+ integration_daemon_url,
212
+ engine_host,
213
+ engine_host_url,
214
+ admin_user,
215
+ admin_user_password,
216
+ userid,
217
+ password,
218
+ timeout,
219
+ jupyter,
220
+ width,
221
+ home_glossary_guid,
222
+ glossary_path,
223
+ ):
224
+ """An Egeria Command Line interface for Operations"""
225
+ ctx.obj = Config(
226
+ server,
227
+ url,
228
+ view_server,
229
+ view_server_url,
230
+ integration_daemon,
231
+ integration_daemon_url,
232
+ engine_host,
233
+ engine_host_url,
234
+ admin_user,
235
+ admin_user_password,
236
+ userid,
237
+ password,
238
+ timeout,
239
+ jupyter,
240
+ width,
241
+ home_glossary_guid,
242
+ glossary_path,
243
+ )
244
+ ctx.max_content_width = 250
245
+ ctx.ensure_object(Config)
246
+
247
+
248
+ #
249
+ # my: Show
250
+ #
251
+ @cli.group("my")
252
+ @click.pass_context
253
+ def my(ctx):
254
+ "Work with my information"
255
+ pass
256
+
257
+
258
+ @my.group("show")
259
+ @click.pass_context
260
+ def my_show(ctx):
261
+ """Display an Egeria Object"""
262
+ pass
263
+
264
+
265
+ @my_show.command("my-profile")
266
+ @click.pass_context
267
+ def show_my_profile(ctx):
268
+ """Display my profiles
269
+
270
+ Usage: show my-profile
271
+
272
+ """
273
+ c = ctx.obj
274
+ display_my_profile(
275
+ c.view_server, c.view_server_url, c.userid, c.password, c.jupyter, c.width
276
+ )
277
+
278
+
279
+ @my_show.command("my-roles")
280
+ @click.pass_context
281
+ def show_my_roles(ctx):
282
+ """Display my roles"""
283
+ c = ctx.obj
284
+ display_my_roles(
285
+ c.view_server, c.view_server_url, c.userid, c.password, c.jupyter, c.width
286
+ )
287
+
288
+
289
+ @my_show.command("my-to-dos")
290
+ @click.pass_context
291
+ def show_my_todos(ctx):
292
+ """Show my To-Dos
293
+
294
+ Usage: show my-to-dos
295
+
296
+ """
297
+ c = ctx.obj
298
+ display_my_todos(
299
+ c.view_server, c.view_server_url, c.userid, c.password, c.jupyter, c.width
300
+ )
301
+
302
+
303
+ @my_show.command("open-to-dos")
304
+ @click.pass_context
305
+ def show_open_todos(ctx):
306
+ """Display Open Todo items"""
307
+ c = ctx.obj
308
+ display_todos(
309
+ c.view_server, c.view_server_url, c.userid, c.password, c.jupyter, c.width
310
+ )
311
+
312
+
313
+ #
314
+ # my: Tell
315
+ #
316
+
317
+
318
+ @my.group("tell")
319
+ @click.pass_context
320
+ def my_tell(ctx):
321
+ """Perform actions an Egeria Objects"""
322
+ pass
323
+
324
+
325
+ my_tell.add_command(create_todo)
326
+ my_tell.add_command(delete_todo)
327
+ my_tell.add_command(change_todo_status)
328
+ my_tell.add_command(mark_todo_complete)
329
+ my_tell.add_command(reassign_todo)
330
+
331
+
332
+ #
333
+ # tech User: Show
334
+ #
335
+ @cli.group("tech")
336
+ @click.pass_context
337
+ def tech(ctx):
338
+ """Commands for tech Users"""
339
+ pass
340
+
341
+
342
+ @tech.group("show")
343
+ @click.pass_context
344
+ def show_tech(ctx):
345
+ """Display an Egeria Object"""
346
+ pass
347
+
348
+
349
+ @show_tech.group("tech-info")
350
+ @click.pass_context
351
+ def show_tech_info(ctx):
352
+ """Show various Egeria information"""
353
+ pass
354
+
355
+
356
+ @show_tech.group("tech-types")
357
+ @click.pass_context
358
+ def show_tech_type(ctx):
359
+ """Show information about Egeria technology types"""
360
+ pass
361
+
362
+
363
+ @show_tech.group("elements")
364
+ @click.pass_context
365
+ def show_elements(ctx):
366
+ """Show information about Egeria elements"""
367
+
368
+
369
+ @show_elements.command("guid-info")
370
+ @click.argument("guid", nargs=1)
371
+ @click.pass_context
372
+ def show_guid_info(ctx, guid):
373
+ """Display guid information
374
+
375
+ Usage: show guid-info <a guid>
376
+
377
+ """
378
+ c = ctx.obj
379
+ display_guid(guid, c.server, c.url, c.userid, c.password, c.jupyter, c.width)
380
+
381
+
382
+ @show_elements.command("anchored_elements")
383
+ @click.pass_context
384
+ @click.option(
385
+ "--search-string",
386
+ default="DeployedDatabaseSchema",
387
+ help="value we are searching for",
388
+ )
389
+ @click.option(
390
+ "--prop-list",
391
+ default="anchorTypeName",
392
+ help="List of properties we are searching",
393
+ )
394
+ def list_anchored_elements(ctx, search_string: str, prop_list: str):
395
+ """List elements with the specified properties"""
396
+ c = ctx.obj
397
+ if type(prop_list) is str:
398
+ property_names = prop_list.split(",")
399
+ elif type(prop_list) is list:
400
+ property_names = prop_list
401
+ else:
402
+ property_names = []
403
+ print(f"\nError --> Invalid property list - must be a string or list")
404
+ sys.exit(4)
405
+ display_anchored_elements(
406
+ search_string,
407
+ [prop_list],
408
+ c.view_server,
409
+ c.view_server_url,
410
+ c.userid,
411
+ c.password,
412
+ c.timeout,
413
+ c.jupyter,
414
+ c.width,
415
+ )
416
+
417
+
418
+ @show_elements.command("related-specifications")
419
+ @click.pass_context
420
+ @click.argument("element-guid")
421
+ def show_related_specifications(ctx, element_guid):
422
+ """List specifications related to the given Element"""
423
+ c = ctx.obj
424
+ display_related_specification(
425
+ element_guid,
426
+ c.view_server,
427
+ c.view_server_url,
428
+ c.userid,
429
+ c.password,
430
+ c.jupyter,
431
+ c.width,
432
+ )
433
+
434
+
435
+ @show_tech_type.command("list")
436
+ @click.option("--search-string", default="*", help="Tech type to search for")
437
+ @click.pass_context
438
+ def show_tech_types(ctx, search_string):
439
+ """List deployed technology types
440
+
441
+ Usage: show tech-types <optional search-string>
442
+
443
+ All tech-types will be returned if no search-string is specified.
444
+
445
+ """
446
+
447
+ c = ctx.obj
448
+ display_tech_types(
449
+ search_string, c.view_server, c.view_server_url, c.userid, c.password
450
+ )
451
+
452
+
453
+ @show_tech_type.command("details")
454
+ @click.argument("tech-name")
455
+ @click.pass_context
456
+ def show_tech_details(ctx, tech_name):
457
+ """Show technology type details"""
458
+ c = ctx.obj
459
+ tech_details_viewer(
460
+ tech_name,
461
+ c.view_server,
462
+ c.view_server_url,
463
+ c.userid,
464
+ c.password,
465
+ c.jupyter,
466
+ c.width,
467
+ )
468
+
469
+
470
+ @show_tech_type.command("templates")
471
+ @click.option(
472
+ "--tech-type",
473
+ default="PostgreSQL Server",
474
+ help="Specific tech type to get elements for",
475
+ )
476
+ @click.pass_context
477
+ def show_tech_type_templates(ctx, tech_type):
478
+ """List technology type templates"""
479
+ c = ctx.obj
480
+ template_viewer(
481
+ tech_type,
482
+ c.view_server,
483
+ c.view_server_url,
484
+ c.userid,
485
+ c.password,
486
+ c.jupyter,
487
+ c.width,
488
+ )
489
+
490
+
491
+ @show_tech_info.command("asset-types")
492
+ @click.pass_context
493
+ def show_asset_types(ctx):
494
+ """Display asset types"""
495
+ c = ctx.obj
496
+ display_asset_types(
497
+ c.view_server, c.view_server_url, c.userid, c.password, c.jupyter, c.width
498
+ )
499
+
500
+
501
+ @show_tech_info.command("registered-services")
502
+ @click.option(
503
+ "--services",
504
+ type=click.Choice(
505
+ [
506
+ "all",
507
+ "access-services",
508
+ "common-services",
509
+ "engine-services",
510
+ "governance-services",
511
+ "integration-services",
512
+ "view-services",
513
+ ],
514
+ case_sensitive=False,
515
+ ),
516
+ default="all",
517
+ help="Which service group to display",
518
+ )
519
+ @click.pass_context
520
+ def show_registered_services(ctx, services):
521
+ """Show information about a registered services"""
522
+ c = ctx.obj
523
+ display_registered_svcs(
524
+ services,
525
+ c.view_server,
526
+ c.view_server_url,
527
+ c.userid,
528
+ c.password,
529
+ c.jupyter,
530
+ c.width,
531
+ )
532
+
533
+
534
+ @show_tech_info.command("relationship-types")
535
+ @click.option(
536
+ "--om-type",
537
+ default="AssetOwner",
538
+ help="Relationship type to get information about",
539
+ )
540
+ @click.pass_context
541
+ def show_relationship_types(ctx, om_type):
542
+ """Show information about the specified relationship types"""
543
+ c = ctx.obj
544
+ display_relationship_types(
545
+ om_type,
546
+ c.view_server,
547
+ c.view_server_url,
548
+ c.userid,
549
+ c.password,
550
+ False,
551
+ c.jupyter,
552
+ c.width,
553
+ )
554
+
555
+
556
+ @show_elements.command("elements-by-classification")
557
+ @click.option(
558
+ "--om-type",
559
+ default="Project",
560
+ help="Open Metadata type to filter by",
561
+ )
562
+ @click.option(
563
+ "--classification",
564
+ default="GovernanceProject",
565
+ help="Classification to filter byt",
566
+ )
567
+ @click.pass_context
568
+ def show_elements_by_classification(ctx, om_type, classification):
569
+ """Show elements by classification"""
570
+ c = ctx.obj
571
+ list_classified_elements(
572
+ om_type,
573
+ classification,
574
+ c.view_server,
575
+ c.view_server_url,
576
+ c.userid,
577
+ c.password,
578
+ c.jupyter,
579
+ c.width,
580
+ )
581
+
582
+
583
+ @show_elements.command("related-elements")
584
+ @click.option(
585
+ "--element-guid",
586
+ help="GUID of the Element to navigate from.",
587
+ )
588
+ @click.option(
589
+ "--om-type",
590
+ default="Project",
591
+ help="Open metadata type to filter by.",
592
+ )
593
+ @click.option(
594
+ "--rel-type",
595
+ default="Certification",
596
+ help="Relationship type to follow.",
597
+ )
598
+ @click.pass_context
599
+ def show_related_elements(ctx, element_guid, om_type, rel_type):
600
+ """Show elements related to specified guid"""
601
+ c = ctx.obj
602
+ list_related_elements(
603
+ element_guid,
604
+ om_type,
605
+ rel_type,
606
+ c.view_server,
607
+ c.view_server_url,
608
+ c.userid,
609
+ c.password,
610
+ c.jupyter,
611
+ c.width,
612
+ )
613
+
614
+
615
+ @show_tech_type.command("template-spec")
616
+ @click.pass_context
617
+ @click.option(
618
+ "--search-string", default="*", help="Technology type to get information about"
619
+ )
620
+ def tech_template_spec(ctx, search_string):
621
+ """Display template specification information about the specified technology."""
622
+ c = ctx.obj
623
+ display_templates_spec(
624
+ search_string,
625
+ c.view_server,
626
+ c.view_server_url,
627
+ c.userid,
628
+ c.password,
629
+ c.jupyter,
630
+ c.width,
631
+ )
632
+
633
+
634
+ @show_tech_info.command("gov-action-processes")
635
+ @click.pass_context
636
+ @click.option("--search-string", default="*", help="Search string")
637
+ def gov_action_processes(ctx, search_string):
638
+ """Display available governance action processes."""
639
+ c = ctx.obj
640
+ display_gov_processes(
641
+ search_string,
642
+ c.view_server,
643
+ c.view_server_url,
644
+ c.userid,
645
+ c.password,
646
+ c.jupyter,
647
+ c.width,
648
+ )
649
+
650
+
651
+ @show_tech_info.command("relationships")
652
+ @click.option(
653
+ "--relationship",
654
+ default="Certification",
655
+ help="Relationship type name to search for.",
656
+ )
657
+ @click.pass_context
658
+ def show_relationships(ctx, relationship):
659
+ """Show the structure of the project starting from a root project"""
660
+ c = ctx.obj
661
+ list_relationships(
662
+ relationship,
663
+ c.view_server,
664
+ c.view_server_url,
665
+ c.userid,
666
+ c.password,
667
+ c.timeout,
668
+ c.jupyter,
669
+ c.width,
670
+ )
671
+
672
+
673
+ @show_tech_info.command("valid-metadata-values")
674
+ @click.pass_context
675
+ @click.option("--property", default="projectHealth", help="Metadata property to query")
676
+ @click.option("--type-name", default="Project", help="Metadata type to query")
677
+ def valid_metadata_values(ctx, property, type_name):
678
+ """Display the valid metadata values for a property and type"""
679
+ c = ctx.obj
680
+ display_metadata_values(
681
+ property,
682
+ type_name,
683
+ c.view_server,
684
+ c.view_server_url,
685
+ c.userid,
686
+ c.password,
687
+ False,
688
+ c.jupyter,
689
+ c.width,
690
+ )
691
+
692
+
693
+ @show_elements.command("elements")
694
+ @click.pass_context
695
+ @click.option(
696
+ "--extended",
697
+ is_flag=True,
698
+ default=False,
699
+ help="If True, feedback information is displayed",
700
+ )
701
+ @click.option("--om_type", default="Organization", help="Metadata type to query")
702
+ def list_element_info(ctx, om_type, extended):
703
+ """Display elements of a specific Open Metadata Type"""
704
+ c = ctx.obj
705
+ if extended:
706
+ list_elements_x(
707
+ om_type,
708
+ c.view_server,
709
+ c.view_server_url,
710
+ c.userid,
711
+ c.password,
712
+ c.jupyter,
713
+ c.width,
714
+ )
715
+ else:
716
+ list_elements(
717
+ om_type,
718
+ c.view_server,
719
+ c.view_server_url,
720
+ c.userid,
721
+ c.password,
722
+ c.jupyter,
723
+ c.width,
724
+ )
725
+
726
+
727
+ @show_tech_info.command("processes")
728
+ @click.pass_context
729
+ def list_element_info(ctx):
730
+ """Display the governance action processes"""
731
+ c = ctx.obj
732
+ list_elements(
733
+ "GovernanceActionProcess",
734
+ c.view_server,
735
+ c.view_server_url,
736
+ c.userid,
737
+ c.password,
738
+ c.jupyter,
739
+ c.width,
740
+ )
741
+
742
+
743
+ @show_elements.command("get-elements")
744
+ @click.pass_context
745
+ @click.option("--om_type", default="Project", help="Metadata type to query")
746
+ def get_element_info(ctx, om_type):
747
+ """Display a table of elements of an Open Metadata Type"""
748
+ c = ctx.obj
749
+ display_elements(
750
+ om_type,
751
+ c.view_server,
752
+ c.view_server_url,
753
+ c.userid,
754
+ c.password,
755
+ c.jupyter,
756
+ c.width,
757
+ )
758
+
759
+
760
+ #
761
+ # Catalog User: Show
762
+ #
763
+
764
+
765
+ @cli.group("cat")
766
+ @click.pass_context
767
+ def cat(ctx):
768
+ """Commands for all users"""
769
+ pass
770
+
771
+
772
+ @cat.group("show")
773
+ @click.pass_context
774
+ def show_cat(ctx):
775
+ """Display an Egeria Object"""
776
+ pass
777
+
778
+
779
+ @show_cat.group("info")
780
+ @click.pass_context
781
+ def show_cat_info(ctx):
782
+ """Group of commands to show information about various Egeria objects"""
783
+ pass
784
+
785
+
786
+ @show_cat_info.command("tech-types")
787
+ @click.option("--tech_type", default="*", help="Tech type to search for")
788
+ @click.pass_context
789
+ def show_tech_types(ctx, tech_type):
790
+ """List deployed technology types"""
791
+ c = ctx.obj
792
+ display_tech_types(
793
+ tech_type, c.view_server, c.view_server_url, c.userid, c.password
794
+ )
795
+
796
+
797
+ @show_cat_info.command("collections")
798
+ @click.option("--collection", default="*", help="Collection to search for")
799
+ @click.pass_context
800
+ def show_collections(ctx, collection):
801
+ """List Collections"""
802
+ c = ctx.obj
803
+ display_collections(
804
+ collection, c.view_server, c.view_server_url, c.userid, c.password
805
+ )
806
+
807
+
808
+ @show_cat.group("assets")
809
+ @click.pass_context
810
+ def asset_group(ctx):
811
+ """Show assets known to Egerias"""
812
+ pass
813
+
814
+
815
+ @asset_group.command("elements-of-tech-type")
816
+ @click.option(
817
+ "--tech_type",
818
+ default="PostgreSQL Server",
819
+ help="Specific tech type to get elements for",
820
+ )
821
+ @click.pass_context
822
+ def show_tech_type_elements(ctx, tech_type):
823
+ """List technology type elements"""
824
+ c = ctx.obj
825
+ tech_viewer(tech_type, c.view_server, c.view_server_url, c.userid, c.password)
826
+
827
+
828
+ @asset_group.command("in-asset-domain")
829
+ @click.argument("search-string")
830
+ @click.pass_context
831
+ def show_assets(ctx, search_string):
832
+ """Find and display assets in domain
833
+
834
+ Usage: show assets <search-string>
835
+
836
+ search-string must be greater than four characters.
837
+ """
838
+ c = ctx.obj
839
+ display_assets(
840
+ search_string,
841
+ c.view_server,
842
+ c.view_server_url,
843
+ c.userid,
844
+ c.password,
845
+ 60,
846
+ c.jupyter,
847
+ c.width,
848
+ )
849
+
850
+
851
+ @asset_group.command("asset-graph")
852
+ @click.argument("asset_guid", nargs=1)
853
+ @click.pass_context
854
+ def show_asset_graph(ctx, asset_guid):
855
+ """Display a tree graph of information about an asset
856
+
857
+ Usage: show asset-graph <asset-guid>
858
+
859
+ asset-guid must be a valid asset guid. These can be found through other commands such as 'show tech-type-elements'
860
+
861
+ """
862
+ c = ctx.obj
863
+ asset_viewer(
864
+ asset_guid,
865
+ c.view_server,
866
+ c.view_server_url,
867
+ c.userid,
868
+ c.password,
869
+ c.jupyter,
870
+ c.width,
871
+ )
872
+
873
+
874
+ @show_cat.group("glossary")
875
+ @click.pass_context
876
+ def glossary_group(ctx):
877
+ """Show glossary information"""
878
+ pass
879
+
880
+
881
+ @glossary_group.command("glossary-terms")
882
+ @click.option(
883
+ "--search-string",
884
+ default="*",
885
+ help="List glossary terms similar to search string - minimum of 4 characters",
886
+ )
887
+ @click.option(
888
+ "--glossary-guid",
889
+ default=os.environ.get("EGERIA_HOME_GLOSSARY_GUID", None),
890
+ help="Optionally restrict search to glossary with the specified guid",
891
+ )
892
+ @click.option(
893
+ "--glossary-name",
894
+ default="*",
895
+ help="Optionally restrict search to a specific named glossary",
896
+ )
897
+ @click.pass_context
898
+ def show_terms(ctx, search_string, glossary_guid, glossary_name):
899
+ """Find and display glossary terms"""
900
+ c = ctx.obj
901
+ display_glossary_terms(
902
+ search_string,
903
+ glossary_guid,
904
+ glossary_name,
905
+ c.view_server,
906
+ c.view_server_url,
907
+ c.userid,
908
+ c.password,
909
+ c.jupyter,
910
+ c.width,
911
+ )
912
+
913
+
914
+ @glossary_group.command("glossaries")
915
+ @click.option("--search_string", default="*", help="Name to search for glossaries")
916
+ @click.pass_context
917
+ def glossaries(ctx, search_string):
918
+ """Display a list of glossaries"""
919
+ c = ctx.obj
920
+ display_glossaries(
921
+ search_string,
922
+ c.view_server,
923
+ c.view_server_url,
924
+ c.userid,
925
+ c.password,
926
+ c.jupyter,
927
+ c.width,
928
+ )
929
+
930
+
931
+ @show_cat_info.command("collection-graph")
932
+ @click.option(
933
+ "--root_collection",
934
+ default="Coco Pharmaceuticals Governance Domains",
935
+ help="View of tree of collections from a given root",
936
+ )
937
+ @click.pass_context
938
+ def show_collection(ctx, root_collection):
939
+ """Display collection graph"""
940
+ c = ctx.obj
941
+ collection_viewer(
942
+ root_collection,
943
+ c.view_server,
944
+ c.view_server_url,
945
+ c.userid,
946
+ c.password,
947
+ c.jupyter,
948
+ c.width,
949
+ )
950
+
951
+
952
+ @show_cat.group("projects")
953
+ @click.pass_context
954
+ def show_project_group(ctx):
955
+ """Show project information in Egeria"""
956
+ pass
957
+
958
+
959
+ @show_project_group.command("projects")
960
+ @click.option("--search-string", default="*", help="List Projects by Search String")
961
+ @click.pass_context
962
+ def show_projects(ctx, search_string):
963
+ """Display a list of Egeria projects"""
964
+ c = ctx.obj
965
+ display_project_list(
966
+ search_string,
967
+ c.view_server,
968
+ c.view_server_url,
969
+ c.userid,
970
+ c.password,
971
+ False,
972
+ c.jupyter,
973
+ c.width,
974
+ )
975
+
976
+
977
+ @show_cat_info.command("certification-types")
978
+ @click.option("--search-string", default="CertificationType", help="")
979
+ @click.pass_context
980
+ def show_certification_types(ctx, search_string):
981
+ """Show certification types"""
982
+ c = ctx.obj
983
+ display_certifications(
984
+ search_string,
985
+ c.view_server,
986
+ c.view_server_url,
987
+ c.userid,
988
+ c.password,
989
+ c.timeout,
990
+ c.jupyter,
991
+ c.width,
992
+ )
993
+
994
+
995
+ @show_cat_info.command("asset-types")
996
+ @click.pass_context
997
+ def show_asset_types(ctx):
998
+ """Display known asset types"""
999
+ c = ctx.obj
1000
+ display_asset_types(
1001
+ c.view_server, c.view_server_url, c.userid, c.password, c.jupyter, c.width
1002
+ )
1003
+
1004
+
1005
+ @show_project_group.command("project-structure")
1006
+ @click.option(
1007
+ "--project",
1008
+ default="Clinical Trials Management",
1009
+ help="Enter the root project to start from",
1010
+ )
1011
+ @click.pass_context
1012
+ def show_project_structure(ctx, project):
1013
+ """Show the organization structure of the project starting from a root project"""
1014
+ c = ctx.obj
1015
+ project_structure_viewer(
1016
+ project,
1017
+ c.view_server,
1018
+ c.view_server_url,
1019
+ c.userid,
1020
+ c.password,
1021
+ c.jupyter,
1022
+ c.width,
1023
+ c.timeout,
1024
+ )
1025
+
1026
+
1027
+ @show_project_group.command("project-dependencies")
1028
+ @click.option(
1029
+ "--project",
1030
+ default="Clinical Trials Management",
1031
+ help="Enter the root project to start from",
1032
+ )
1033
+ @click.pass_context
1034
+ def show_project_dependencies(ctx, project):
1035
+ """Show the dependencies of a project starting from a root project"""
1036
+ c = ctx.obj
1037
+ project_dependency_viewer(
1038
+ project,
1039
+ c.view_server,
1040
+ c.view_server_url,
1041
+ c.userid,
1042
+ c.password,
1043
+ c.jupyter,
1044
+ c.width,
1045
+ c.timeout,
1046
+ )
1047
+
1048
+
1049
+ @show_cat_info.command("to-dos")
1050
+ @click.option("--search-string", default="*", help="View the list of To-Do items")
1051
+ @click.option(
1052
+ "--status",
1053
+ type=click.Choice(
1054
+ ["OPEN", "IN_PROGRESS", "WAITING", "COMPLETE", "ABANDONED", "None"],
1055
+ case_sensitive=False,
1056
+ ),
1057
+ help="Enter an optional status filter",
1058
+ required=False,
1059
+ default="NONE",
1060
+ )
1061
+ @click.pass_context
1062
+ def show_todos(ctx, search_string, status):
1063
+ """Display list of To Dost"""
1064
+ c = ctx.obj
1065
+ list_todos(
1066
+ search_string,
1067
+ status,
1068
+ c.view_server,
1069
+ c.view_server_url,
1070
+ c.userid,
1071
+ c.password,
1072
+ c.jupyter,
1073
+ c.width,
1074
+ )
1075
+
1076
+
1077
+ @show_cat_info.command("user-ids")
1078
+ @click.pass_context
1079
+ def show_todos(ctx):
1080
+ """Display a list of known user-ids"""
1081
+ c = ctx.obj
1082
+ list_user_ids(
1083
+ c.view_server, c.view_server_url, c.userid, c.password, c.jupyter, c.width
1084
+ )
1085
+
1086
+
1087
+ @show_cat.group("deployed-data")
1088
+ @click.pass_context
1089
+ def deployed_data(ctx):
1090
+ """Show deployed data resources known to Egeria"""
1091
+ pass
1092
+
1093
+
1094
+ @deployed_data.command("deployed-servers")
1095
+ @click.option(
1096
+ "--search-string",
1097
+ default="*",
1098
+ help="Filter deployed for deployed implementation type by search string",
1099
+ )
1100
+ @click.pass_context
1101
+ def show_deployed_servers(ctx, search_string):
1102
+ """Display deployed servers"""
1103
+ c = ctx.obj
1104
+ display_servers_by_dep_imp(
1105
+ search_string,
1106
+ c.view_server,
1107
+ c.view_server_url,
1108
+ c.userid,
1109
+ c.password,
1110
+ c.jupyter,
1111
+ c.width,
1112
+ )
1113
+
1114
+
1115
+ @deployed_data.command("deployed-schemas")
1116
+ @click.option("--catalog", default="*", help="What database or catalog to search")
1117
+ @click.pass_context
1118
+ def deployed_schemas(ctx, catalog):
1119
+ """Display deployed schemas"""
1120
+ c = ctx.obj
1121
+ list_deployed_database_schemas(
1122
+ catalog,
1123
+ c.view_server,
1124
+ c.view_server_url,
1125
+ c.userid,
1126
+ c.password,
1127
+ c.jupyter,
1128
+ c.width,
1129
+ )
1130
+
1131
+
1132
+ @deployed_data.command("catalogs")
1133
+ @click.option("--search_server", default="*", help="Server to search for catalogs")
1134
+ @click.pass_context
1135
+ def list_catalogs(ctx, search_server):
1136
+ """Display deployed catalogs"""
1137
+ c = ctx.obj
1138
+ list_deployed_catalogs(
1139
+ search_server,
1140
+ c.view_server,
1141
+ c.view_server_url,
1142
+ c.userid,
1143
+ c.password,
1144
+ c.jupyter,
1145
+ c.width,
1146
+ )
1147
+
1148
+
1149
+ @deployed_data.command("databases")
1150
+ @click.pass_context
1151
+ def list_databases(ctx):
1152
+ """Display deployed databases"""
1153
+ c = ctx.obj
1154
+ list_deployed_databases(
1155
+ c.view_server, c.view_server_url, c.userid, c.password, c.jupyter, c.width
1156
+ )
1157
+
1158
+
1159
+ #
1160
+ # Tell-cat
1161
+ #
1162
+
1163
+
1164
+ @cat.group("tell")
1165
+ @click.pass_context
1166
+ def tell_cat(ctx):
1167
+ """Perform actions an Egeria Objects"""
1168
+ pass
1169
+
1170
+
1171
+ @tell_cat.group("glossary")
1172
+ @click.pass_context
1173
+ def tell_glossary(ctx):
1174
+ """Perform glossary actions"""
1175
+ pass
1176
+
1177
+
1178
+ tell_glossary.add_command(create_glossary)
1179
+ tell_glossary.add_command(delete_glossary)
1180
+ tell_glossary.add_command(delete_term)
1181
+ tell_glossary.add_command(create_term)
1182
+ tell_glossary.add_command(import_terms)
1183
+ tell_glossary.add_command(export_terms)
1184
+
1185
+
1186
+ @tell_cat.group("todo")
1187
+ @click.pass_context
1188
+ def tell_cat_todo(ctx):
1189
+ """Perform todo actions"""
1190
+ pass
1191
+
1192
+
1193
+ tell_cat_todo.add_command(mark_todo_complete)
1194
+ tell_cat_todo.add_command(reassign_todo)
1195
+ tell_cat_todo.add_command(delete_todo)
1196
+ tell_cat_todo.add_command(create_todo)
1197
+
1198
+
1199
+ @show_cat_info.command("tech-types")
1200
+ @click.option("--tech_type", default="*", help="Tech type to search for")
1201
+ @click.pass_context
1202
+ def show_tech_types(ctx, tech_type):
1203
+ """List deployed technology types"""
1204
+ c = ctx.obj
1205
+ display_tech_types(
1206
+ tech_type, c.view_server, c.view_server_url, c.userid, c.password
1207
+ )
1208
+
1209
+
1210
+ @show_cat_info.command("certification-types")
1211
+ @click.option("--search-string", default="CertificationType", help="")
1212
+ @click.pass_context
1213
+ def show_certification_types(ctx, search_string):
1214
+ """Show certification types"""
1215
+ c = ctx.obj
1216
+ display_certifications(
1217
+ search_string,
1218
+ c.view_server,
1219
+ c.view_server_url,
1220
+ c.userid,
1221
+ c.password,
1222
+ c.timeout,
1223
+ c.jupyter,
1224
+ c.width,
1225
+ )
1226
+
1227
+
1228
+ @show_project_group.command("project-structure")
1229
+ @click.option(
1230
+ "--project",
1231
+ default="Clinical Trials Management",
1232
+ help="Enter the root project to start from",
1233
+ )
1234
+ @click.pass_context
1235
+ def show_project_structure(ctx, project):
1236
+ """Show the organization structure of the project starting from a root project"""
1237
+ c = ctx.obj
1238
+ project_structure_viewer(
1239
+ project,
1240
+ c.view_server,
1241
+ c.view_server_url,
1242
+ c.userid,
1243
+ c.password,
1244
+ c.jupyter,
1245
+ c.width,
1246
+ c.timeout,
1247
+ )
1248
+
1249
+
1250
+ @show_project_group.command("project-dependencies")
1251
+ @click.option(
1252
+ "--project",
1253
+ default="Clinical Trials Management",
1254
+ help="Enter the root project to start from",
1255
+ )
1256
+ @click.pass_context
1257
+ def show_project_dependencies(ctx, project):
1258
+ """Show the dependencies of a project starting from a root project"""
1259
+ c = ctx.obj
1260
+ project_dependency_viewer(
1261
+ project,
1262
+ c.view_server,
1263
+ c.view_server_url,
1264
+ c.userid,
1265
+ c.password,
1266
+ c.jupyter,
1267
+ c.width,
1268
+ c.timeout,
1269
+ )
1270
+
1271
+
1272
+ @glossary_group.command("glossary-terms")
1273
+ @click.option(
1274
+ "--search-string",
1275
+ default="*",
1276
+ help="List glossary terms similar to search string - minimum of 4 characters",
1277
+ )
1278
+ @click.option(
1279
+ "--glossary-guid",
1280
+ default=None,
1281
+ help="Optionally restrict search to glossary with the specified guid",
1282
+ )
1283
+ @click.option(
1284
+ "--glossary-name",
1285
+ default="*",
1286
+ help="Optionally restrict search to a specific named glossary",
1287
+ )
1288
+ @click.pass_context
1289
+ def show_terms(ctx, search_string, glossary_guid, glossary_name):
1290
+ """Find and display glossary terms"""
1291
+ c = ctx.obj
1292
+ display_glossary_terms(
1293
+ search_string,
1294
+ glossary_guid,
1295
+ glossary_name,
1296
+ c.view_server,
1297
+ c.view_server_url,
1298
+ c.userid,
1299
+ c.password,
1300
+ c.jupyter,
1301
+ c.width,
1302
+ )
1303
+
1304
+
1305
+ @asset_group.command("asset-graph")
1306
+ @click.argument("asset_guid", nargs=1)
1307
+ @click.pass_context
1308
+ def show_asset_graph(ctx, asset_guid):
1309
+ """Display a tree graph of information about an asset
1310
+
1311
+ Usage: show asset-graph <asset-guid>
1312
+
1313
+ asset-guid must be a valid asset guid. These can be found through other commands such as 'show tech-type-elements'
1314
+
1315
+ """
1316
+ c = ctx.obj
1317
+ asset_viewer(
1318
+ asset_guid,
1319
+ c.view_server,
1320
+ c.view_server_url,
1321
+ c.userid,
1322
+ c.password,
1323
+ c.jupyter,
1324
+ c.width,
1325
+ )
1326
+
1327
+
1328
+ @asset_group.command("tech-type-elements")
1329
+ @click.option(
1330
+ "--tech_type",
1331
+ default="PostgreSQL Server",
1332
+ help="Specific tech type to get elements for",
1333
+ )
1334
+ @click.pass_context
1335
+ def list_tech_type_elements(ctx, tech_type):
1336
+ """List technology type elements"""
1337
+ c = ctx.obj
1338
+ list_tech_elements(
1339
+ tech_type, c.view_server, c.view_server_url, c.userid, c.password
1340
+ )
1341
+
1342
+
1343
+ @show_project_group.command("projects")
1344
+ @click.option("--search-string", default="*", help="List Projects by Search String")
1345
+ @click.pass_context
1346
+ def show_projects(ctx, search_string):
1347
+ """Display a list of Egeria projects"""
1348
+ c = ctx.obj
1349
+ display_project_list(
1350
+ search_string,
1351
+ c.view_server,
1352
+ c.view_server_url,
1353
+ c.userid,
1354
+ c.password,
1355
+ False,
1356
+ c.jupyter,
1357
+ c.width,
1358
+ )
1359
+
1360
+
1361
+ @show_cat_info.command("to-dos")
1362
+ @click.option("--search-string", default="*", help="View the list of To-Do items")
1363
+ @click.option(
1364
+ "--status",
1365
+ type=click.Choice(
1366
+ ["OPEN", "IN_PROGRESS", "WAITING", "COMPLETE", "ABANDONED", "None"],
1367
+ case_sensitive=False,
1368
+ ),
1369
+ help="Enter an optional status filter, default='OPEN'",
1370
+ required=False,
1371
+ default="OPEN",
1372
+ )
1373
+ @click.pass_context
1374
+ def show_todos(ctx, search_string, status):
1375
+ """Display a list of To Dos"""
1376
+ c = ctx.obj
1377
+ list_todos(
1378
+ search_string,
1379
+ status,
1380
+ c.view_server,
1381
+ c.view_server_url,
1382
+ c.userid,
1383
+ c.password,
1384
+ c.jupyter,
1385
+ c.width,
1386
+ )
1387
+
1388
+
1389
+ @show_cat_info.command("user-ids")
1390
+ @click.pass_context
1391
+ def show_user_ids(ctx):
1392
+ """Display table of known user ids"""
1393
+ c = ctx.obj
1394
+ list_user_ids(
1395
+ c.view_server, c.view_server_url, c.userid, c.password, c.jupyter, c.width
1396
+ )
1397
+
1398
+
1399
+ @show_server.command("archives")
1400
+ @click.pass_context
1401
+ def archives(ctx):
1402
+ """Display a list of archivest"""
1403
+ c = ctx.obj
1404
+ display_archive_list(
1405
+ c.view_server,
1406
+ c.view_server_url,
1407
+ c.userid,
1408
+ c.password,
1409
+ False,
1410
+ c.jupyter,
1411
+ c.width,
1412
+ )
1413
+
1414
+
1415
+ @deployed_data.command("deployed-servers")
1416
+ @click.option(
1417
+ "--search-string",
1418
+ default="*",
1419
+ help="Filter deployed for deployed implementation type by search string",
1420
+ )
1421
+ @click.pass_context
1422
+ def show_deployed_servers(ctx, search_string):
1423
+ """Show list of deployed servers"""
1424
+ c = ctx.obj
1425
+ display_servers_by_dep_imp(
1426
+ search_string,
1427
+ c.view_server,
1428
+ c.view_server_url,
1429
+ c.userid,
1430
+ c.password,
1431
+ c.jupyter,
1432
+ c.width,
1433
+ )
1434
+
1435
+
1436
+ @deployed_data.command("deployed-schemas")
1437
+ @click.option(
1438
+ "--search_catalog", default="*", help="What database or catalog to search"
1439
+ )
1440
+ @click.pass_context
1441
+ def deployed_schemas(ctx, search_catalog):
1442
+ """Display a list of deployed schemas"""
1443
+ c = ctx.obj
1444
+ list_deployed_database_schemas(
1445
+ search_catalog,
1446
+ c.view_server,
1447
+ c.view_server_url,
1448
+ c.userid,
1449
+ c.password,
1450
+ c.jupyter,
1451
+ c.width,
1452
+ )
1453
+
1454
+
1455
+ @deployed_data.command("catalogs")
1456
+ @click.option("--search_server", default="*", help="Server to search for catalogs")
1457
+ @click.pass_context
1458
+ def catalogs(ctx, search_server):
1459
+ """Display a list of deployed catalogs"""
1460
+ c = ctx.obj
1461
+ list_deployed_catalogs(
1462
+ search_server,
1463
+ c.view_server,
1464
+ c.view_server_url,
1465
+ c.userid,
1466
+ c.password,
1467
+ c.jupyter,
1468
+ c.width,
1469
+ )
1470
+
1471
+
1472
+ @deployed_data.command("databases")
1473
+ @click.pass_context
1474
+ def databases(ctx):
1475
+ """Display a list of deployed databases"""
1476
+ c = ctx.obj
1477
+ list_deployed_databases(
1478
+ c.view_server, c.view_server_url, c.userid, c.password, c.jupyter, c.width
1479
+ )
1480
+
1481
+
1482
+ @glossary_group.command("glossaries")
1483
+ @click.option("--search_string", default="*", help="Name to search for glossaries")
1484
+ @click.pass_context
1485
+ def glossaries(ctx, search_string):
1486
+ """Display a list of glossaries"""
1487
+ c = ctx.obj
1488
+ display_glossaries(
1489
+ search_string,
1490
+ c.view_server,
1491
+ c.view_server_url,
1492
+ c.userid,
1493
+ c.password,
1494
+ c.jupyter,
1495
+ c.width,
1496
+ )
1497
+
1498
+
1499
+ # @tell_cat.group("survey")
1500
+ # @click.pass_context
1501
+ # def survey(ctx):
1502
+ # """Refresh the specified integration connector or ALL connectors if not specified"""
1503
+ # c = ctx.obj
1504
+ # pass
1505
+ #
1506
+ #
1507
+ # @survey.command("survey-uc-server")
1508
+ # @click.pass_context
1509
+ # @click.option(
1510
+ # "--uc_endpoint",
1511
+ # default="https://localhost:8080",
1512
+ # help="Endpoint of the Unity Catalog Server to Survey",
1513
+ # )
1514
+ # def survey_uc_server(ctx, uc_endpoint):
1515
+ # """Survey the Unity Catalog server at the given endpoint"""
1516
+ # c = ctx.obj
1517
+ # pass
1518
+ # restart_connector(connector, c.integration_daemon, c.integration_daemon_url,
1519
+ # c.userid, c.password)
1520
+
1521
+
1522
+ #
1523
+ # Operations: Show
1524
+ #
1525
+
1526
+
1527
+ @cli.group("ops")
1528
+ @click.pass_context
1529
+ def ops(ctx):
1530
+ """Commands to understand and manage operations"""
1531
+ pass
1532
+
1533
+
1534
+ @ops.group("show")
1535
+ @click.pass_context
1536
+ def show_ops(ctx):
1537
+ """Display an Egeria Object"""
1538
+ pass
1539
+
1540
+
1541
+ @show_ops.group("platforms")
1542
+ @click.pass_context
1543
+ def show_platform(ctx):
1544
+ """Group of commands to show information about Egeria platforms"""
1545
+ pass
1546
+
1547
+
1548
+ @show_platform.command("status")
1549
+ @click.pass_context
1550
+ def show_platform_status(ctx):
1551
+ """Display a live status view of known platforms"""
1552
+ c = ctx.obj
1553
+ p_display_status(
1554
+ c.view_server, c.view_server_url, c.admin_user, c.admin_user_password
1555
+ )
1556
+
1557
+
1558
+ @show_ops.group("servers")
1559
+ @click.pass_context
1560
+ def show_server(ctx):
1561
+ """Group of commands to show information about Egeria servers"""
1562
+ pass
1563
+
1564
+
1565
+ @show_server.command("status")
1566
+ @click.option(
1567
+ "--full",
1568
+ is_flag=True,
1569
+ default=False,
1570
+ help="If set, full server descriptions will be shown",
1571
+ )
1572
+ @click.pass_context
1573
+ def show_server_status(ctx, full):
1574
+ """Display a live status view of Egeria servers for the specified Egeria platform"""
1575
+ c = ctx.obj
1576
+ s_display_status(
1577
+ full,
1578
+ c.view_server,
1579
+ c.view_server_url,
1580
+ c.userid,
1581
+ c.password,
1582
+ c.jupyter,
1583
+ c.width,
1584
+ )
1585
+
1586
+
1587
+ @show_server.command("startup")
1588
+ @click.pass_context
1589
+ def show_startup_status(ctx):
1590
+ """Display a live status view of Egeria servers for the specified Egeria platform"""
1591
+ c = ctx.obj
1592
+ display_startup_status(
1593
+ c.server,
1594
+ c.url,
1595
+ c.userid,
1596
+ c.password,
1597
+ c.jupyter,
1598
+ c.width,
1599
+ )
1600
+
1601
+
1602
+ @show_ops.group("engines")
1603
+ @click.pass_context
1604
+ def engine_host(ctx):
1605
+ """Group of commands to show information about Egeria engines"""
1606
+ pass
1607
+
1608
+
1609
+ @engine_host.command("status")
1610
+ @click.option(
1611
+ "--engine-list",
1612
+ default="*",
1613
+ help="Enter the list of connectors you are interested in or ['*'] for all",
1614
+ )
1615
+ @click.option(
1616
+ "--list", is_flag=True, default=False, help="If True, a paged list will be shown"
1617
+ )
1618
+ @click.option(
1619
+ "--engine-host",
1620
+ default="engine-host",
1621
+ help="Name of the Engine Host to get status for",
1622
+ )
1623
+ @click.pass_context
1624
+ def gov_eng_status(ctx, engine_list, engine_host, list):
1625
+ """Display engine-host status information"""
1626
+ c = ctx.obj
1627
+ display_gov_eng_status(
1628
+ [engine_list],
1629
+ engine_host=engine_host,
1630
+ view_server=c.view_server,
1631
+ url=c.view_server_url,
1632
+ username=c.userid,
1633
+ user_pass=c.password,
1634
+ paging=list,
1635
+ jupyter=c.jupyter,
1636
+ width=c.width,
1637
+ )
1638
+
1639
+
1640
+ @engine_host.command("activity")
1641
+ @click.option(
1642
+ "--rowlimit",
1643
+ default=0,
1644
+ type=int,
1645
+ show_default=True,
1646
+ help="If non-zero, limit the number of rows returned",
1647
+ )
1648
+ @click.option(
1649
+ "--list", is_flag=True, default=False, help="If True, a paged list will be shown"
1650
+ )
1651
+ @click.option(
1652
+ "--compressed",
1653
+ is_flag=True,
1654
+ default=False,
1655
+ show_default=True,
1656
+ help="Compressed combines some attributes into a single column",
1657
+ )
1658
+ @click.pass_context
1659
+ def eng_activity_status(ctx, rowlimit: int, list: bool, compressed: bool):
1660
+ """Show Governance Activity in engine-host"""
1661
+ c = ctx.obj
1662
+ if compressed:
1663
+ display_engine_activity_c(
1664
+ rowlimit,
1665
+ c.view_server,
1666
+ c.view_server_url,
1667
+ c.admin_user,
1668
+ c.admin_user_password,
1669
+ list,
1670
+ c.jupyter,
1671
+ c.width,
1672
+ )
1673
+ else:
1674
+ display_engine_activity(
1675
+ rowlimit,
1676
+ c.view_server,
1677
+ c.view_server_url,
1678
+ c.admin_user,
1679
+ c.admin_user_password,
1680
+ list,
1681
+ c.jupyter,
1682
+ c.width,
1683
+ )
1684
+
1685
+
1686
+ @show_ops.group("integrations")
1687
+ @click.pass_context
1688
+ def integrations(ctx):
1689
+ """Group of commands to show information about Egeria integrations"""
1690
+ pass
1691
+
1692
+
1693
+ @integrations.command("status")
1694
+ @click.option(
1695
+ "--connector-list",
1696
+ default="*",
1697
+ help="Enter the list of connectors you are interested in or ['*'] for all",
1698
+ )
1699
+ @click.option(
1700
+ "--list", is_flag=True, default=False, help="If True, a paged list will be shown"
1701
+ )
1702
+ @click.option(
1703
+ "--sorted", type=bool, default=True, help="If True, the table will be sorted"
1704
+ )
1705
+ @click.pass_context
1706
+ def integrations_status(ctx, connector_list, list, sorted):
1707
+ """Display integration_daemon status information"""
1708
+ c = ctx.obj
1709
+ display_integration_daemon_status(
1710
+ [connector_list],
1711
+ c.integration_daemon,
1712
+ c.integration_daemon_url,
1713
+ c.view_server,
1714
+ c.view_server_url,
1715
+ c.userid,
1716
+ c.password,
1717
+ list,
1718
+ c.jupyter,
1719
+ c.width,
1720
+ sorted,
1721
+ )
1722
+
1723
+
1724
+ @integrations.command("targets")
1725
+ @click.pass_context
1726
+ @click.argument("--connector", nargs=1)
1727
+ def integrations_status(ctx, connector):
1728
+ """Display Catalog Targets for a connector"""
1729
+ c = ctx.obj
1730
+ display_catalog_targets(
1731
+ connector,
1732
+ c.view_server,
1733
+ c.view_server_url,
1734
+ c.userid,
1735
+ c.password,
1736
+ c.jupyter,
1737
+ c.width,
1738
+ )
1739
+
1740
+
1741
+ #
1742
+ # Operations: Tell
1743
+ #
1744
+
1745
+
1746
+ @ops.group("tell")
1747
+ @click.pass_context
1748
+ def tell_ops(ctx):
1749
+ """Perform actions an Egeria Objects"""
1750
+ pass
1751
+
1752
+
1753
+ @tell_ops.group("integration-daemon")
1754
+ @click.pass_context
1755
+ def tell_integration_daemon(ctx):
1756
+ """Group of commands to an integration_daemon"""
1757
+ pass
1758
+
1759
+
1760
+ @tell_integration_daemon.command("refresh")
1761
+ @click.pass_context
1762
+ @click.option(
1763
+ "--connector",
1764
+ default="all",
1765
+ help="Name of connector to refresh or 'all' to refresh all",
1766
+ )
1767
+ @click.option(
1768
+ "--server",
1769
+ default="integration-daemon",
1770
+ help="Name of the integration server to refresh",
1771
+ )
1772
+ def refresh_connectors(ctx, server, connector):
1773
+ """Refresh the specified integration connector or ALL connectors if not specified"""
1774
+ c = ctx.obj
1775
+ refresh_connector(
1776
+ connector, server, c.view_server_url, c.view_server, c.userid, c.password
1777
+ )
1778
+
1779
+
1780
+ @tell_integration_daemon.command("restart")
1781
+ @click.pass_context
1782
+ @click.option(
1783
+ "--connector",
1784
+ default="all",
1785
+ help="Name of connector to restart or 'all' to restart all",
1786
+ )
1787
+ @click.option(
1788
+ "--server",
1789
+ default="integration-daemon",
1790
+ help="Name of the integration server to refresh",
1791
+ )
1792
+ def restart_connectors(ctx, server, connector):
1793
+ """Restart the specified integration connector or ALL connectors if not specified"""
1794
+ c = ctx.obj
1795
+ restart_connector(
1796
+ connector, server, c.view_server_url, c.view_server, c.userid, c.password
1797
+ )
1798
+
1799
+
1800
+ tell_integration_daemon.add_command(add_catalog_target)
1801
+ tell_integration_daemon.add_command(remove_catalog_target)
1802
+ tell_integration_daemon.add_command(update_catalog_target)
1803
+ tell_integration_daemon.add_command(stop_server)
1804
+ tell_integration_daemon.add_command(start_server)
1805
+
1806
+
1807
+ @tell_ops.group("servers")
1808
+ @click.pass_context
1809
+ def servers(ctx):
1810
+ """Perform actions on OMAG Servers"""
1811
+ pass
1812
+
1813
+
1814
+ servers.add_command(start_server)
1815
+ servers.add_command(stop_server)
1816
+
1817
+
1818
+ @tell_ops.group("engine-host")
1819
+ @click.pass_context
1820
+ def engine_host(ctx):
1821
+ """Group of commands to an engine-host"""
1822
+ pass
1823
+
1824
+
1825
+ engine_host.add_command(start_server)
1826
+ engine_host.add_command(stop_server)
1827
+ engine_host.add_command(refresh_gov_eng_config)
1828
+
1829
+
1830
+ @tell_ops.group("repository")
1831
+ @click.pass_context
1832
+ def repository(ctx):
1833
+ """Group of commands to a repository"""
1834
+ pass
1835
+
1836
+
1837
+ repository.add_command(load_archive)
1838
+
1839
+ if __name__ == "__main__":
1840
+ while True:
1841
+ try:
1842
+ cli()
1843
+ except Exception as e:
1844
+ click.echo(f"Error: {e}")