pyegeria 5.2.0.20__py3-none-any.whl → 5.2.0.42.2__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 (130) hide show
  1. pyegeria/commands/README.md +2 -1
  2. pyegeria/commands/cat/__init__.py +1 -5
  3. pyegeria/commands/cat/exp_list_glossaries.py +1 -1
  4. pyegeria/commands/cat/get_asset_graph.py +1 -1
  5. pyegeria/commands/cat/get_collection.py +1 -1
  6. pyegeria/commands/cat/get_project_dependencies.py +1 -1
  7. pyegeria/commands/cat/get_project_structure.py +1 -1
  8. pyegeria/commands/cat/get_tech_type_elements.py +2 -2
  9. pyegeria/commands/cat/glossary_actions.py +9 -3
  10. pyegeria/commands/cat/list_assets.py +1 -1
  11. pyegeria/commands/cat/list_cert_types.py +1 -1
  12. pyegeria/commands/cat/list_collections.py +1 -1
  13. pyegeria/commands/cat/list_deployed_catalogs.py +5 -3
  14. pyegeria/commands/cat/list_deployed_database_schemas.py +1 -1
  15. pyegeria/commands/cat/list_deployed_databases.py +3 -4
  16. pyegeria/commands/cat/list_glossaries.py +1 -1
  17. pyegeria/commands/cat/list_projects.py +1 -1
  18. pyegeria/commands/cat/list_servers_deployed_imp.py +1 -1
  19. pyegeria/commands/cat/list_tech_type_elements.py +190 -0
  20. pyegeria/commands/cat/list_tech_types.py +36 -24
  21. pyegeria/commands/cat/list_terms.py +5 -3
  22. pyegeria/commands/cat/list_todos.py +1 -1
  23. pyegeria/commands/cat/list_user_ids.py +1 -1
  24. pyegeria/commands/cli/egeria.py +71 -63
  25. pyegeria/commands/cli/egeria_cat.py +44 -44
  26. pyegeria/commands/cli/egeria_login_tui.py +1 -1
  27. pyegeria/commands/cli/egeria_my.py +24 -28
  28. pyegeria/commands/cli/egeria_ops.py +37 -39
  29. pyegeria/commands/cli/egeria_tech.py +49 -35
  30. pyegeria/commands/cli/ops_config.py +3 -1
  31. pyegeria/commands/doc/{command-overview.md → README.md} +50 -5
  32. pyegeria/commands/doc/Visual Command Reference/README.md +511 -0
  33. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/CleanShot 2024-12-19 at 13.23.11.mov +0 -0
  34. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/CleanShot 2024-12-19 at 19.56.26.mp4 +0 -0
  35. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-data-catalogs 2024-12-17 at 15.43.27@2x.png +0 -0
  36. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-schemas 2024-12-17 at 15.48.38@2x.png +0 -0
  37. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-servers 2024-12-17 at 15.52.16@2x.png +0 -0
  38. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed_databases 2024-12-16 at 16.40.31@2x.png +0 -0
  39. pyegeria/commands/doc/Visual Command Reference/cat/show/projects/project_dependencies 2024-12-14 at 16.24.39@2x.png +0 -0
  40. pyegeria/commands/doc/Visual Command Reference/cat/show/projects/project_structure 2024-12-14 at 16.21.35@2x.png +0 -0
  41. pyegeria/commands/doc/Visual Command Reference/cat/show/projects/projects 2024-12-14 at 16.18.10@2x.png +0 -0
  42. pyegeria/commands/doc/Visual Command Reference/hey_egeria tui 2024-12-16 at 16.58.22@2x.png +0 -0
  43. pyegeria/commands/doc/Visual Command Reference/my/show/my_profile 2024-12-14 at 16.29.27@2x.png +0 -0
  44. pyegeria/commands/doc/Visual Command Reference/my/show/my_roles 2024-12-14 at 16.32.10@2x.png +0 -0
  45. pyegeria/commands/doc/Visual Command Reference/my/show/my_todos 2024-12-15 at 16.24.13@2x.png +0 -0
  46. pyegeria/commands/doc/Visual Command Reference/my/show/open_todos 2024-12-14 at 16.36.12@2x.png +0 -0
  47. pyegeria/commands/doc/Visual Command Reference/ops/show/engines/list_engine_activity compressed 2024-12-15 at 16.48.48@2x.png +0 -0
  48. pyegeria/commands/doc/Visual Command Reference/ops/show/engines/monitor_engine_activity 2024-12-15 at 16.32.55@2x.png +0 -0
  49. pyegeria/commands/doc/Visual Command Reference/ops/show/engines/monitor_engine_activity compressed 2024-12-15 at 16.38.29@2x.png +0 -0
  50. pyegeria/commands/doc/Visual Command Reference/ops/show/engines/monitor_engine_status 2024-12-15 at 16.51.26.jpeg +0 -0
  51. pyegeria/commands/doc/Visual Command Reference/ops/show/integrations/monitor_integration_daemon_status 2024-12-15 at 16.57.12@2x.png +0 -0
  52. pyegeria/commands/doc/Visual Command Reference/ops/show/integrations/monitor_integration_targets 2024-12-15 at 17.02.19@2x.png +0 -0
  53. pyegeria/commands/doc/Visual Command Reference/ops/show/platforms/monitor_platform_status 2024-12-15 at 19.53.18@2x.png +0 -0
  54. pyegeria/commands/doc/Visual Command Reference/ops/show/servers/monitor_server_status 2024-12-15 at 19.59.39@2x.png +0 -0
  55. pyegeria/commands/doc/Visual Command Reference/ops/show/servers/monitor_server_status full 2024-12-15 at 20.01.57@2x.png +0 -0
  56. pyegeria/commands/doc/Visual Command Reference/ops/show/servers/monitor_startup_servers 2024-12-15 at 19.56.07@2x.png +0 -0
  57. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/get_anchored_elements 2024-12-15 at 21.25.41@2x.png +0 -0
  58. 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
  59. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/info_for_guid 2024-12-16 at 11.35.29@2x.png +0 -0
  60. 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
  61. 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
  62. 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
  63. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/related_elements 2024-12-16 at 14.55.01@2x.png +0 -0
  64. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/show_related_specifications 2024-12-16 at 15.04.55@2x.png +0 -0
  65. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/asset_types 2024-12-16 at 15.10.16@2x.png +0 -0
  66. 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
  67. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/governance_action_processes 2024-12-16 at 15.13.01@2x.png +0 -0
  68. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/registered_services 2024-12-16 at 16.44.54@2x.png +0 -0
  69. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/relationship_types 2024-12-16 at 16.20.34@2x.png +0 -0
  70. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/relationship_types 2024-12-19 at 10.51.54@2x.png +0 -0
  71. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/valid_metadata_values 2024-12-16 at 15.31.56@2x.png +0 -0
  72. 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
  73. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/list_technology_types 2024-12-16 at 15.39.20@2x.png +0 -0
  74. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/tech_type_details 2024-12-16 at 15.37.21@2x.png +0 -0
  75. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/tech_type_templates 2024-12-16 at 16.11.48@2x.png +0 -0
  76. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/{hey_egeria: overview.md → README.md } +1 -1
  77. pyegeria/commands/my/list_my_profile.py +1 -1
  78. pyegeria/commands/my/list_my_roles.py +1 -1
  79. pyegeria/commands/my/monitor_my_todos.py +18 -6
  80. pyegeria/commands/my/monitor_open_todos.py +2 -2
  81. pyegeria/commands/my/todo_actions.py +1 -1
  82. pyegeria/commands/ops/list_archives.py +1 -1
  83. pyegeria/commands/ops/list_catalog_targets.py +1 -1
  84. pyegeria/commands/ops/load_archive.py +1 -1
  85. pyegeria/commands/ops/monitor_asset_events.py +27 -22
  86. pyegeria/commands/ops/monitor_engine_activity.py +1 -1
  87. pyegeria/commands/ops/monitor_engine_activity_c.py +1 -1
  88. pyegeria/commands/ops/monitor_gov_eng_status.py +31 -4
  89. pyegeria/commands/ops/monitor_integ_daemon_status.py +11 -8
  90. pyegeria/commands/ops/monitor_platform_status.py +2 -2
  91. pyegeria/commands/ops/monitor_server_startup.py +1 -1
  92. pyegeria/commands/ops/monitor_server_status.py +1 -1
  93. pyegeria/commands/ops/orig_monitor_server_list.py +1 -1
  94. pyegeria/commands/ops/orig_monitor_server_status.py +36 -21
  95. pyegeria/commands/ops/refresh_integration_daemon.py +2 -2
  96. pyegeria/commands/ops/restart_integration_daemon.py +2 -2
  97. pyegeria/commands/ops/table_integ_daemon_status.py +1 -1
  98. pyegeria/commands/tech/get_element_info.py +1 -1
  99. pyegeria/commands/tech/get_guid_info.py +1 -1
  100. pyegeria/commands/tech/get_tech_details.py +79 -42
  101. pyegeria/commands/tech/get_tech_type_template.py +69 -53
  102. pyegeria/commands/tech/list_anchored_elements.py +19 -16
  103. pyegeria/commands/tech/list_asset_types.py +1 -1
  104. pyegeria/commands/tech/list_elements.py +1 -1
  105. pyegeria/commands/tech/list_elements_for_classification.py +1 -1
  106. pyegeria/commands/tech/list_elements_x.py +8 -5
  107. pyegeria/commands/tech/list_gov_action_processes.py +1 -1
  108. pyegeria/commands/tech/list_registered_services.py +2 -2
  109. pyegeria/commands/tech/list_related_elements.py +1 -1
  110. pyegeria/commands/tech/list_related_specification.py +1 -1
  111. pyegeria/commands/tech/list_relationship_types.py +20 -22
  112. pyegeria/commands/tech/list_relationships.py +8 -4
  113. pyegeria/commands/tech/list_tech_templates.py +1 -1
  114. pyegeria/commands/tech/list_valid_metadata_values.py +1 -1
  115. pyegeria/commands/tech/table_tech_templates.py +1 -1
  116. pyegeria/commands/tech/x_list_related_elements.py +1 -1
  117. pyegeria/create_tech_guid_lists.py +2 -2
  118. pyegeria/glossary_manager_omvs.py +64 -1
  119. pyegeria/mermaid_utilities.py +1 -1
  120. pyegeria/metadata_explorer_omvs.py +94 -45
  121. pyegeria/server_operations.py +4 -4
  122. {pyegeria-5.2.0.20.dist-info → pyegeria-5.2.0.42.2.dist-info}/METADATA +1 -1
  123. pyegeria-5.2.0.42.2.dist-info/RECORD +234 -0
  124. {pyegeria-5.2.0.20.dist-info → pyegeria-5.2.0.42.2.dist-info}/entry_points.txt +1 -0
  125. pyegeria/commands/doc/Visual Command Reference/cat/show/info/get-Collection 2024-12-12 at 09.29.25.png +0 -0
  126. pyegeria-5.2.0.20.dist-info/RECORD +0 -190
  127. /pyegeria/commands/doc/Visual Command Reference/cat/show/assets/{Asset-graph 2024-11-20 at 15.56.42.png → asset-graph 2024-11-20 at 15.56.42.png} +0 -0
  128. /pyegeria/commands/doc/Visual Command Reference/cat/show/assets/{Assets-in-domain 2024-11-20 at 15.49.55@2x.png → assets-in-domain 2024-11-20 at 15.49.55@2x.png} +0 -0
  129. {pyegeria-5.2.0.20.dist-info → pyegeria-5.2.0.42.2.dist-info}/LICENSE +0 -0
  130. {pyegeria-5.2.0.20.dist-info → pyegeria-5.2.0.42.2.dist-info}/WHEEL +0 -0
@@ -9,14 +9,19 @@ A command line interface for Egeria Users - all commands
9
9
  This is an emerging capability based on the **click** package. Feedback welcome!
10
10
 
11
11
  """
12
+ import os
13
+ import sys
14
+
12
15
  import click
13
16
  from trogon import tui
17
+
14
18
  from pyegeria.commands.cli.egeria_login_tui import login
15
19
  from pyegeria.commands.cat.get_asset_graph import asset_viewer
16
20
  from pyegeria.commands.cat.get_collection import collection_viewer
17
21
  from pyegeria.commands.cat.get_project_dependencies import project_dependency_viewer
18
22
  from pyegeria.commands.cat.get_project_structure import project_structure_viewer
19
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
20
25
  from pyegeria.commands.cli.egeria_ops import show_server
21
26
  from pyegeria.commands.tech.get_tech_type_template import template_viewer
22
27
  from pyegeria.commands.cat.list_assets import display_assets
@@ -113,87 +118,83 @@ from pyegeria.commands.tech.list_gov_action_processes import display_gov_process
113
118
  @click.group()
114
119
  @click.option(
115
120
  "--server",
116
- default="active-metadata-store",
117
- envvar="EGERIA_METADATA_STORE",
121
+ default=os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store"),
118
122
  help="Egeria metadata store to work with",
119
123
  )
120
124
  @click.option(
121
125
  "--url",
122
- default="https://localhost:9443",
123
- envvar="EGERIA_PLATFORM_URL",
126
+ default=os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443"),
124
127
  help="URL of Egeria metadata store platform to connect to",
125
128
  )
126
129
  @click.option(
127
- "--integration-daemon",
128
- default="integration-daemon",
129
- envvar="EGERIA_INTEGRATION_DAEMON",
130
+ "--integration_daemon",
131
+ default=os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon"),
130
132
  help="Egeria integration daemon to work with",
131
133
  )
132
134
  @click.option(
133
135
  "--integration_daemon_url",
134
- default="https://localhost:9443",
135
- envvar="EGERIA_INTEGRATION_DAEMON_URL",
136
+ default=os.environ.get("EGERIA_INTEGRATION_DAEMON_URL", "https://localhost:9443"),
136
137
  help="URL of Egeria integration daemon platform to connect to",
137
138
  )
138
139
  @click.option(
139
140
  "--view_server",
140
- default="view-server",
141
- envvar="EGERIA_VIEW_SERVER",
141
+ default=os.environ.get("EGERIA_VIEW_SERVER", "view-server"),
142
142
  help="Egeria view server to work with",
143
143
  )
144
144
  @click.option(
145
145
  "--view_server_url",
146
- default="https://localhost:9443",
147
- envvar="EGERIA_VIEW_SERVER_URL",
146
+ default=os.environ.get("EGERIA_VIEW_SERVER_URL", "https://localhost:9443"),
148
147
  help="URL of Egeria view server platform to connect to",
149
148
  )
150
149
  @click.option(
151
150
  "--engine_host",
152
- default="engine-host",
153
- envvar="EGERIA_ENGINE_HOST",
151
+ default=os.environ.get("EGERIA_ENGINE_HOST", "engine-host"),
154
152
  help="Egeria engine host to work with",
155
153
  )
156
154
  @click.option(
157
155
  "--engine_host_url",
158
- default="https://localhost:9443",
159
- envvar="EGERIA_ENGINE_HOST_URL",
156
+ default=os.environ.get("EGERIA_ENGINE_HOST_URL", "https://localhost:9443"),
160
157
  help="URL of Egeria engine host platform to connect to",
161
158
  )
162
159
  @click.option(
163
160
  "--admin_user",
164
- default="garygeeke",
165
- envvar="EGERIA_ADMIN_USER",
161
+ default=os.environ.get("EGERIA_ADMIN_USER", "garygeeke"),
166
162
  help="Egeria admin user",
167
163
  )
168
164
  @click.option(
169
165
  "--admin_user_password",
170
- default="secret",
171
- envvar="EGERIA_ADMIN_PASSWORD",
166
+ default=os.environ.get("EGERIA_ADMIN_PASSWORD", "secret"),
172
167
  help="Egeria admin password",
173
168
  )
174
169
  @click.option(
175
- "--userid", default="erinoverview", envvar="EGERIA_USER", help="Egeria user"
170
+ "--userid",
171
+ default=os.environ.get("EGERIA_USER", "erinoverview"),
172
+ help="Egeria user",
176
173
  )
177
174
  @click.option(
178
175
  "--password",
179
- default="secret",
180
- envvar="EGERIA_PASSWORD",
176
+ default=os.environ.get("EGERIA_USER_PASSWORD", "secret"),
181
177
  help="Egeria user password",
182
178
  )
183
179
  @click.option("--timeout", default=60, help="Number of seconds to wait")
184
180
  @click.option(
185
181
  "--jupyter",
186
182
  is_flag=True,
187
- default=False,
188
- envvar="EGERIA_JUPYTER",
183
+ type=bool,
184
+ default=os.environ.get("EGERIA_JUPYTER", False),
189
185
  help="Enable for rendering in a Jupyter terminal",
190
186
  )
191
187
  @click.option(
192
188
  "--width",
193
- default=200,
194
- envvar="EGERIA_WIDTH",
189
+ default=os.environ.get("EGERIA_WIDTH", 200),
190
+ type=int,
195
191
  help="Screen width, in characters, to use",
196
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
+ )
197
198
  @click.pass_context
198
199
  def cli(
199
200
  ctx,
@@ -212,6 +213,7 @@ def cli(
212
213
  timeout,
213
214
  jupyter,
214
215
  width,
216
+ home_glossary_guid,
215
217
  ):
216
218
  """An Egeria Command Line interface for Operations"""
217
219
  ctx.obj = Config(
@@ -230,23 +232,12 @@ def cli(
230
232
  timeout,
231
233
  jupyter,
232
234
  width,
235
+ home_glossary_guid,
233
236
  )
234
- ctx.max_content_width = 200
237
+ ctx.max_content_width = 250
235
238
  ctx.ensure_object(Config)
236
239
 
237
240
 
238
- # cli.add_command(login)
239
- @cli.command("login")
240
- @click.pass_context
241
- def egeria_login(ctx):
242
- """Login to Egeria platform"""
243
- user = login(
244
- ctx.obj.userid, ctx.obj.password, ctx.obj.view_server, ctx.obj.view_server_url
245
- )
246
- ctx.obj.userid = user
247
- click.echo(f" user is {ctx.obj.userid}")
248
-
249
-
250
241
  #
251
242
  # my: Show
252
243
  #
@@ -381,22 +372,37 @@ def show_guid_info(ctx, guid):
381
372
  display_guid(guid, c.server, c.url, c.userid, c.password, c.jupyter, c.width)
382
373
 
383
374
 
384
- @show_elements.command("anchored-elements")
375
+ @show_elements.command("anchored_elements")
385
376
  @click.pass_context
386
- @click.option("--search-string", help="value we are searching for")
387
377
  @click.option(
388
- "--prop-list", default="anchorTypeName", help="List of properties we are searching"
378
+ "--search-string",
379
+ default="DeployedDatabaseSchema",
380
+ help="value we are searching for",
381
+ )
382
+ @click.option(
383
+ "--prop-list",
384
+ default="anchorTypeName",
385
+ help="List of properties we are searching",
389
386
  )
390
387
  def list_anchored_elements(ctx, search_string: str, prop_list: str):
391
388
  """List elements with the specified properties"""
392
389
  c = ctx.obj
390
+ if type(prop_list) is str:
391
+ property_names = prop_list.split(",")
392
+ elif type(prop_list) is list:
393
+ property_names = prop_list
394
+ else:
395
+ property_names = []
396
+ print(f"\nError --> Invalid property list - must be a string or list")
397
+ sys.exit(4)
393
398
  display_anchored_elements(
394
399
  search_string,
395
- prop_list,
400
+ [prop_list],
396
401
  c.view_server,
397
402
  c.view_server_url,
398
403
  c.userid,
399
404
  c.password,
405
+ c.timeout,
400
406
  c.jupyter,
401
407
  c.width,
402
408
  )
@@ -520,16 +526,16 @@ def show_registered_services(ctx, services):
520
526
 
521
527
  @show_tech_info.command("relationship-types")
522
528
  @click.option(
523
- "--rel-type",
529
+ "--om-type",
524
530
  default="AssetOwner",
525
531
  help="Relationship type to get information about",
526
532
  )
527
533
  @click.pass_context
528
- def show_relationship_types(ctx, rel_type):
534
+ def show_relationship_types(ctx, om_type):
529
535
  """Show information about the specified relationship types"""
530
536
  c = ctx.obj
531
537
  display_relationship_types(
532
- rel_type,
538
+ om_type,
533
539
  c.view_server,
534
540
  c.view_server_url,
535
541
  c.userid,
@@ -752,7 +758,7 @@ def get_element_info(ctx, om_type):
752
758
  @cli.group("cat")
753
759
  @click.pass_context
754
760
  def cat(ctx):
755
- """Commands for the more tech user"""
761
+ """Commands for all users"""
756
762
  pass
757
763
 
758
764
 
@@ -799,7 +805,7 @@ def asset_group(ctx):
799
805
  pass
800
806
 
801
807
 
802
- @asset_group.command("elements-of-type")
808
+ @asset_group.command("elements-of-tech-type")
803
809
  @click.option(
804
810
  "--tech_type",
805
811
  default="PostgreSQL Server",
@@ -1319,10 +1325,12 @@ def show_asset_graph(ctx, asset_guid):
1319
1325
  help="Specific tech type to get elements for",
1320
1326
  )
1321
1327
  @click.pass_context
1322
- def show_tech_type_elements(ctx, tech_type):
1328
+ def list_tech_type_elements(ctx, tech_type):
1323
1329
  """List technology type elements"""
1324
1330
  c = ctx.obj
1325
- tech_viewer(tech_type, c.view_server, c.view_server_url, c.userid, c.password)
1331
+ list_tech_elements(
1332
+ tech_type, c.view_server, c.view_server_url, c.userid, c.password
1333
+ )
1326
1334
 
1327
1335
 
1328
1336
  @show_project_group.command("projects")
@@ -1611,14 +1619,14 @@ def gov_eng_status(ctx, engine_list, engine_host, list):
1611
1619
  c = ctx.obj
1612
1620
  display_gov_eng_status(
1613
1621
  [engine_list],
1614
- engine_host,
1615
- c.view_server,
1616
- c.view_server_url,
1617
- c.userid,
1618
- c.password,
1619
- list,
1620
- c.jupyter,
1621
- c.width,
1622
+ engine_host=engine_host,
1623
+ view_server=c.view_server,
1624
+ url=c.view_server_url,
1625
+ username=c.userid,
1626
+ user_pass=c.password,
1627
+ paging=list,
1628
+ jupyter=c.jupyter,
1629
+ width=c.width,
1622
1630
  )
1623
1631
 
1624
1632
 
@@ -1689,7 +1697,7 @@ def integrations(ctx):
1689
1697
  )
1690
1698
  @click.pass_context
1691
1699
  def integrations_status(ctx, connector_list, list, sorted):
1692
- """Display integration-daemon status information"""
1700
+ """Display integration_daemon status information"""
1693
1701
  c = ctx.obj
1694
1702
  display_integration_daemon_status(
1695
1703
  [connector_list],
@@ -1708,7 +1716,7 @@ def integrations_status(ctx, connector_list, list, sorted):
1708
1716
 
1709
1717
  @integrations.command("targets")
1710
1718
  @click.pass_context
1711
- @click.argument("connector", nargs=1)
1719
+ @click.argument("--connector", nargs=1)
1712
1720
  def integrations_status(ctx, connector):
1713
1721
  """Display Catalog Targets for a connector"""
1714
1722
  c = ctx.obj
@@ -1738,7 +1746,7 @@ def tell_ops(ctx):
1738
1746
  @tell_ops.group("integration-daemon")
1739
1747
  @click.pass_context
1740
1748
  def tell_integration_daemon(ctx):
1741
- """Group of commands to an integration-daemon"""
1749
+ """Group of commands to an integration_daemon"""
1742
1750
  pass
1743
1751
 
1744
1752
 
@@ -9,6 +9,8 @@ A command line interface for Egeria Catalog User functions
9
9
  This is an emerging capability based on the **click** package. Feedback welcome!
10
10
 
11
11
  """
12
+ import os
13
+
12
14
  import click
13
15
  from trogon import tui
14
16
 
@@ -17,6 +19,7 @@ from pyegeria.commands.cat.get_collection import collection_viewer
17
19
  from pyegeria.commands.cat.get_project_dependencies import project_dependency_viewer
18
20
  from pyegeria.commands.cat.get_project_structure import project_structure_viewer
19
21
  from pyegeria.commands.cat.get_tech_type_elements import tech_viewer
22
+ from pyegeria.commands.cat.list_tech_type_elements import list_tech_elements
20
23
  from pyegeria.commands.cat.glossary_actions import (
21
24
  create_glossary,
22
25
  delete_glossary,
@@ -41,7 +44,7 @@ from pyegeria.commands.cat.list_todos import display_to_dos as list_todos
41
44
  from pyegeria.commands.cat.list_user_ids import list_user_ids
42
45
  from pyegeria.commands.cat.list_collections import display_collections
43
46
 
44
- # from pyegeria import ServerOps
47
+
45
48
  from pyegeria.commands.cli.ops_config import Config
46
49
  from pyegeria.commands.my.todo_actions import (
47
50
  mark_todo_complete,
@@ -52,20 +55,6 @@ from pyegeria.commands.my.todo_actions import (
52
55
  from pyegeria.commands.tech.list_asset_types import display_asset_types
53
56
 
54
57
 
55
- # class Config(object):
56
- # def __init__(self, server: str = None, url: str = None, userid:str = None, password:str = None,
57
- # timeout:int = 30, paging: bool = False):
58
- # self.server = server
59
- # self.url = url
60
- # self.userid = userid
61
- # self.password = password
62
- # self.timeout = timeout
63
- # self.paging = paging
64
- #
65
- #
66
- # pass_config = click.make_pass_decorator(Config)
67
-
68
-
69
58
  # @tui
70
59
  # @tui('menu','menu','A textual command line interface')
71
60
  @tui()
@@ -73,87 +62,81 @@ from pyegeria.commands.tech.list_asset_types import display_asset_types
73
62
  @click.group()
74
63
  @click.option(
75
64
  "--server",
76
- default="active-metadata-store",
77
- envvar="EGERIA_METADATA_STORE",
65
+ default=os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store"),
78
66
  help="Egeria metadata store to work with",
79
67
  )
80
68
  @click.option(
81
69
  "--url",
82
- default="https://localhost:9443",
83
- envvar="EGERIA_PLATFORM_URL",
70
+ default=os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443"),
84
71
  help="URL of Egeria metadata store platform to connect to",
85
72
  )
86
73
  @click.option(
87
74
  "--integration_daemon",
88
- default="integration-daemon",
89
- envvar="EGERIA_INTEGRATION_DAEMON",
75
+ default=os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon"),
90
76
  help="Egeria integration daemon to work with",
91
77
  )
92
78
  @click.option(
93
79
  "--integration_daemon_url",
94
- default="https://localhost:9443",
95
- envvar="EGERIA_INTEGRATION_DAEMON_URL",
80
+ default=os.environ.get("EGERIA_INTEGRATION_DAEMON_URL", "https://localhost:9443"),
96
81
  help="URL of Egeria integration daemon platform to connect to",
97
82
  )
98
83
  @click.option(
99
84
  "--view_server",
100
- default="view-server",
101
- envvar="EGERIA_VIEW_SERVER",
85
+ default=os.environ.get("EGERIA_VIEW_SERVER", "view-server"),
102
86
  help="Egeria view server to work with",
103
87
  )
104
88
  @click.option(
105
89
  "--view_server_url",
106
- default="https://localhost:9443",
107
- envvar="EGERIA_VIEW_SERVER_URL",
90
+ default=os.environ.get("EGERIA_VIEW_SERVER_URL", "https://localhost:9443"),
108
91
  help="URL of Egeria view server platform to connect to",
109
92
  )
110
93
  @click.option(
111
94
  "--engine_host",
112
- default="engine-host",
113
- envvar="EGERIA_ENGINE_HOST",
95
+ default=os.environ.get("EGERIA_ENGINE_HOST", "engine-host"),
114
96
  help="Egeria engine host to work with",
115
97
  )
116
98
  @click.option(
117
99
  "--engine_host_url",
118
- default="https://localhost:9443",
119
- envvar="EGERIA_ENGINE_HOST_URL",
100
+ default=os.environ.get("EGERIA_ENGINE_HOST_URL", "https://localhost:9443"),
120
101
  help="URL of Egeria engine host platform to connect to",
121
102
  )
122
103
  @click.option(
123
104
  "--admin_user",
124
- default="garygeeke",
125
- envvar="EGERIA_ADMIN_USER",
105
+ default=os.environ.get("EGERIA_ADMIN_USER", "garygeeke"),
126
106
  help="Egeria admin user",
127
107
  )
128
108
  @click.option(
129
109
  "--admin_user_password",
130
- default="secret",
131
- envvar="EGERIA_ADMIN_PASSWORD",
110
+ default=os.environ.get("EGERIA_ADMIN_PASSWORD", "secret"),
132
111
  help="Egeria admin password",
133
112
  )
134
113
  @click.option(
135
- "--userid", default="erinoverview", envvar="EGERIA_USER", help="Egeria user"
114
+ "--userid",
115
+ default=os.environ.get("EGERIA_USER", "peterprofile"),
116
+ help="Egeria user",
136
117
  )
137
118
  @click.option(
138
119
  "--password",
139
- default="secret",
140
- envvar="EGERIA_PASSWORD",
120
+ default=os.environ.get("EGERIA_USER_PASSWORD", "secret"),
141
121
  help="Egeria user password",
142
122
  )
143
123
  @click.option("--timeout", default=60, help="Number of seconds to wait")
144
124
  @click.option(
145
125
  "--jupyter",
146
126
  is_flag=True,
147
- default=False,
148
- envvar="EGERIA_JUPYTER",
127
+ default=os.environ.get("EGERIA_JUPYTER", "False"),
149
128
  help="Enable for rendering in a Jupyter terminal",
150
129
  )
151
130
  @click.option(
152
131
  "--width",
153
- default=200,
154
- envvar="EGERIA_WIDTH",
132
+ default=os.environ.get("EGERIA_WIDTH", "200"),
155
133
  help="Screen width, in characters, to use",
156
134
  )
135
+ @click.option(
136
+ "--home_glossary_guid",
137
+ default=os.environ.get("EGERIA_HOME_GLOSSARY_GUID", None),
138
+ help="Glossary guid to use as the home glossary",
139
+ )
157
140
  @click.pass_context
158
141
  def cli(
159
142
  ctx,
@@ -172,6 +155,7 @@ def cli(
172
155
  timeout,
173
156
  jupyter,
174
157
  width,
158
+ home_glossary_guid,
175
159
  ):
176
160
  """An Egeria Command Line interface for Operations"""
177
161
  ctx.obj = Config(
@@ -190,8 +174,9 @@ def cli(
190
174
  timeout,
191
175
  jupyter,
192
176
  width,
177
+ home_glossary_guid,
193
178
  )
194
- ctx.max_content_width = 200
179
+ ctx.max_content_width = 250
195
180
  ctx.ensure_object(Config)
196
181
 
197
182
 
@@ -244,6 +229,21 @@ def asset_group(ctx):
244
229
  help="Specific tech type to get elements for",
245
230
  )
246
231
  @click.pass_context
232
+ def list_tech_type_elements(ctx, tech_type):
233
+ """List technology type elements"""
234
+ c = ctx.obj
235
+ list_tech_elements(
236
+ tech_type, c.view_server, c.view_server_url, c.userid, c.password
237
+ )
238
+
239
+
240
+ @asset_group.command("elements-of-tech-type")
241
+ @click.option(
242
+ "--tech_type",
243
+ default="PostgreSQL Server",
244
+ help="Specific tech type to get elements for",
245
+ )
246
+ @click.pass_context
247
247
  def show_tech_type_elements(ctx, tech_type):
248
248
  """List technology type elements"""
249
249
  c = ctx.obj
@@ -311,7 +311,7 @@ def glossary_group(ctx):
311
311
  )
312
312
  @click.option(
313
313
  "--glossary-guid",
314
- default=None,
314
+ default=os.environ.get("EGERIA_HOME_GLOSSARY_GUID"),
315
315
  help="Optionally restrict search to glossary with the specified guid",
316
316
  )
317
317
  @click.option(
@@ -44,7 +44,7 @@ EGERIA_VIEW_SERVER = os.environ.get("VIEW_SERVER", "view-server")
44
44
  EGERIA_VIEW_SERVER_URL = os.environ.get(
45
45
  "EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
46
46
  )
47
- EGERIA_INTEGRATION_DAEMON = os.environ.get("INTEGRATION_DAEMON", "integration-daemon")
47
+ EGERIA_INTEGRATION_DAEMON = os.environ.get("INTEGRATION_DAEMON", "integration_daemon")
48
48
  EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
49
49
  EGERIA_USER_PASSWORD = os.environ.get("EGERIA_USER_PASSWORD", "secret")
50
50
  EGERIA_JUPYTER = bool(os.environ.get("EGERIA_JUPYTER", "False"))
@@ -9,6 +9,8 @@ A command line interface for Egeria Users - of individual relevance
9
9
  This is an emerging capability based on the **click** package. Feedback welcome!
10
10
 
11
11
  """
12
+ import os
13
+
12
14
  import click
13
15
  from trogon import tui
14
16
 
@@ -47,87 +49,81 @@ from pyegeria.commands.my.todo_actions import (
47
49
  @click.group()
48
50
  @click.option(
49
51
  "--server",
50
- default="active-metadata-store",
51
- envvar="EGERIA_METADATA_STORE",
52
+ default=os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store"),
52
53
  help="Egeria metadata store to work with",
53
54
  )
54
55
  @click.option(
55
56
  "--url",
56
- default="https://localhost:9443",
57
- envvar="EGERIA_PLATFORM_URL",
57
+ default=os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443"),
58
58
  help="URL of Egeria metadata store platform to connect to",
59
59
  )
60
60
  @click.option(
61
- "--integration-daemon",
62
- default="integration-daemon",
63
- envvar="EGERIA_INTEGRATION_DAEMON",
61
+ "--integration_daemon",
62
+ default=os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon"),
64
63
  help="Egeria integration daemon to work with",
65
64
  )
66
65
  @click.option(
67
66
  "--integration_daemon_url",
68
- default="https://localhost:9443",
69
- envvar="EGERIA_INTEGRATION_DAEMON_URL",
67
+ default=os.environ.get("EGERIA_INTEGRATION_DAEMON_URL", "https://localhost:9443"),
70
68
  help="URL of Egeria integration daemon platform to connect to",
71
69
  )
72
70
  @click.option(
73
71
  "--view_server",
74
- default="view-server",
75
- envvar="EGERIA_VIEW_SERVER",
72
+ default=os.environ.get("EGERIA_VIEW_SERVER", "view-server"),
76
73
  help="Egeria view server to work with",
77
74
  )
78
75
  @click.option(
79
76
  "--view_server_url",
80
- default="https://localhost:9443",
81
- envvar="EGERIA_VIEW_SERVER_URL",
77
+ default=os.environ.get("EGERIA_VIEW_SERVER_URL", "https://localhost:9443"),
82
78
  help="URL of Egeria view server platform to connect to",
83
79
  )
84
80
  @click.option(
85
81
  "--engine_host",
86
- default="engine-host",
87
- envvar="EGERIA_ENGINE_HOST",
82
+ default=os.environ.get("EGERIA_ENGINE_HOST", "engine-host"),
88
83
  help="Egeria engine host to work with",
89
84
  )
90
85
  @click.option(
91
86
  "--engine_host_url",
92
- default="https://localhost:9443",
93
- envvar="EGERIA_ENGINE_HOST_URL",
87
+ default=os.environ.get("EGERIA_ENGINE_HOST_URL", "https://localhost:9443"),
94
88
  help="URL of Egeria engine host platform to connect to",
95
89
  )
96
90
  @click.option(
97
91
  "--admin_user",
98
- default="garygeeke",
99
- envvar="EGERIA_ADMIN_USER",
92
+ default=os.environ.get("EGERIA_ADMIN_USER", "garygeeke"),
100
93
  help="Egeria admin user",
101
94
  )
102
95
  @click.option(
103
96
  "--admin_user_password",
104
- default="secret",
105
- envvar="EGERIA_ADMIN_PASSWORD",
97
+ default=os.environ.get("EGERIA_ADMIN_PASSWORD", "secret"),
106
98
  help="Egeria admin password",
107
99
  )
108
100
  @click.option(
109
- "--userid", default="erinoverview", envvar="EGERIA_USER", help="Egeria user"
101
+ "--userid",
102
+ default=os.environ.get("EGERIA_USER", "peterprofile"),
103
+ help="Egeria user",
110
104
  )
111
105
  @click.option(
112
106
  "--password",
113
- default="secret",
114
- envvar="EGERIA_PASSWORD",
107
+ default=os.environ.get("EGERIA_USER_PASSWORD", "secret"),
115
108
  help="Egeria user password",
116
109
  )
117
110
  @click.option("--timeout", default=60, help="Number of seconds to wait")
118
111
  @click.option(
119
112
  "--jupyter",
120
113
  is_flag=True,
121
- default=False,
122
- envvar="EGERIA_JUPYTER",
114
+ default=os.environ.get("EGERIA_JUPYTER", "False"),
123
115
  help="Enable for rendering in a Jupyter terminal",
124
116
  )
125
117
  @click.option(
126
118
  "--width",
127
- default=200,
128
- envvar="EGERIA_WIDTH",
119
+ default=os.environ.get("EGERIA_WIDTH", "200"),
129
120
  help="Screen width, in characters, to use",
130
121
  )
122
+ @click.option(
123
+ "--home_glossary_guid",
124
+ default=os.environ.get("EGERIA_HOME_GLOSSARY_GUID", None),
125
+ help="Glossary guid to use as the home glossary",
126
+ )
131
127
  @click.pass_context
132
128
  def cli(
133
129
  ctx,