kaqing 2.0.96__tar.gz → 2.0.97__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of kaqing might be problematic. Click here for more details.

Files changed (196) hide show
  1. {kaqing-2.0.96 → kaqing-2.0.97}/PKG-INFO +1 -1
  2. {kaqing-2.0.96 → kaqing-2.0.97}/adam/batch.py +1 -1
  3. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/cql/cql_utils.py +3 -0
  4. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/describe/describe.py +2 -1
  5. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/describe/describe_keyspace.py +3 -3
  6. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/describe/describe_keyspaces.py +4 -5
  7. kaqing-2.0.97/adam/commands/describe/describe_schema.py +49 -0
  8. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/describe/describe_table.py +2 -2
  9. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/describe/describe_tables.py +4 -5
  10. kaqing-2.0.97/adam/version.py +5 -0
  11. {kaqing-2.0.96 → kaqing-2.0.97}/kaqing.egg-info/PKG-INFO +1 -1
  12. {kaqing-2.0.96 → kaqing-2.0.97}/kaqing.egg-info/SOURCES.txt +1 -0
  13. {kaqing-2.0.96 → kaqing-2.0.97}/setup.py +1 -1
  14. kaqing-2.0.96/adam/version.py +0 -5
  15. {kaqing-2.0.96 → kaqing-2.0.97}/README +0 -0
  16. {kaqing-2.0.96 → kaqing-2.0.97}/adam/__init__.py +0 -0
  17. {kaqing-2.0.96 → kaqing-2.0.97}/adam/app_session.py +0 -0
  18. {kaqing-2.0.96 → kaqing-2.0.97}/adam/apps.py +0 -0
  19. {kaqing-2.0.96 → kaqing-2.0.97}/adam/checks/__init__.py +0 -0
  20. {kaqing-2.0.96 → kaqing-2.0.97}/adam/checks/check.py +0 -0
  21. {kaqing-2.0.96 → kaqing-2.0.97}/adam/checks/check_context.py +0 -0
  22. {kaqing-2.0.96 → kaqing-2.0.97}/adam/checks/check_result.py +0 -0
  23. {kaqing-2.0.96 → kaqing-2.0.97}/adam/checks/check_utils.py +0 -0
  24. {kaqing-2.0.96 → kaqing-2.0.97}/adam/checks/compactionstats.py +0 -0
  25. {kaqing-2.0.96 → kaqing-2.0.97}/adam/checks/cpu.py +0 -0
  26. {kaqing-2.0.96 → kaqing-2.0.97}/adam/checks/disk.py +0 -0
  27. {kaqing-2.0.96 → kaqing-2.0.97}/adam/checks/gossip.py +0 -0
  28. {kaqing-2.0.96 → kaqing-2.0.97}/adam/checks/issue.py +0 -0
  29. {kaqing-2.0.96 → kaqing-2.0.97}/adam/checks/memory.py +0 -0
  30. {kaqing-2.0.96 → kaqing-2.0.97}/adam/checks/status.py +0 -0
  31. {kaqing-2.0.96 → kaqing-2.0.97}/adam/cli.py +0 -0
  32. {kaqing-2.0.96 → kaqing-2.0.97}/adam/cli_group.py +0 -0
  33. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/__init__.py +0 -0
  34. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/column.py +0 -0
  35. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/columns.py +0 -0
  36. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/compactions.py +0 -0
  37. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/cpu.py +0 -0
  38. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/dir_data.py +0 -0
  39. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/dir_snapshots.py +0 -0
  40. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/gossip.py +0 -0
  41. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/host_id.py +0 -0
  42. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/memory.py +0 -0
  43. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/node_address.py +0 -0
  44. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/node_load.py +0 -0
  45. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/node_owns.py +0 -0
  46. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/node_status.py +0 -0
  47. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/node_tokens.py +0 -0
  48. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/node_utils.py +0 -0
  49. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/pod_name.py +0 -0
  50. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/volume_cassandra.py +0 -0
  51. {kaqing-2.0.96 → kaqing-2.0.97}/adam/columns/volume_root.py +0 -0
  52. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/__init__.py +0 -0
  53. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/alter_tables.py +0 -0
  54. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/app.py +0 -0
  55. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/app_ping.py +0 -0
  56. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/audit/__init__.py +0 -0
  57. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/audit/audit.py +0 -0
  58. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/audit/audit_repair_tables.py +0 -0
  59. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/bash.py +0 -0
  60. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/cd.py +0 -0
  61. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/check.py +0 -0
  62. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/cli_commands.py +0 -0
  63. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/command.py +0 -0
  64. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/command_helpers.py +0 -0
  65. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/commands_utils.py +0 -0
  66. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/cp.py +0 -0
  67. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/cql/__init__.py +0 -0
  68. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/cql/cql_completions.py +0 -0
  69. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/cql/cql_table_completer.py +0 -0
  70. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/cql/cqlsh.py +0 -0
  71. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/deploy/__init__.py +0 -0
  72. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/deploy/code_start.py +0 -0
  73. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/deploy/code_stop.py +0 -0
  74. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/deploy/code_utils.py +0 -0
  75. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/deploy/deploy.py +0 -0
  76. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/deploy/deploy_frontend.py +0 -0
  77. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/deploy/deploy_pg_agent.py +0 -0
  78. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/deploy/deploy_pod.py +0 -0
  79. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/deploy/deploy_utils.py +0 -0
  80. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/deploy/undeploy.py +0 -0
  81. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/deploy/undeploy_frontend.py +0 -0
  82. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/deploy/undeploy_pg_agent.py +0 -0
  83. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/deploy/undeploy_pod.py +0 -0
  84. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/describe/__init__.py +0 -0
  85. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/devices.py +0 -0
  86. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/exit.py +0 -0
  87. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/help.py +0 -0
  88. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/issues.py +0 -0
  89. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/login.py +0 -0
  90. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/logs.py +0 -0
  91. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/ls.py +0 -0
  92. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/medusa/__init__.py +0 -0
  93. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/medusa/medusa.py +0 -0
  94. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/medusa/medusa_backup.py +0 -0
  95. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/medusa/medusa_restore.py +0 -0
  96. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/medusa/medusa_show_backupjobs.py +0 -0
  97. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/medusa/medusa_show_restorejobs.py +0 -0
  98. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/nodetool.py +0 -0
  99. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/nodetool_commands.py +0 -0
  100. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/param_get.py +0 -0
  101. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/param_set.py +0 -0
  102. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/postgres/__init__.py +0 -0
  103. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/postgres/postgres.py +0 -0
  104. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/postgres/postgres_ls.py +0 -0
  105. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/postgres/postgres_preview.py +0 -0
  106. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/postgres/postgres_session.py +0 -0
  107. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/postgres/postgres_utils.py +0 -0
  108. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/postgres/psql_completions.py +0 -0
  109. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/postgres/psql_table_completer.py +0 -0
  110. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/preview_table.py +0 -0
  111. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/pwd.py +0 -0
  112. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/reaper/__init__.py +0 -0
  113. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/reaper/reaper.py +0 -0
  114. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/reaper/reaper_forward.py +0 -0
  115. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/reaper/reaper_forward_stop.py +0 -0
  116. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/reaper/reaper_restart.py +0 -0
  117. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/reaper/reaper_run_abort.py +0 -0
  118. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/reaper/reaper_runs.py +0 -0
  119. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/reaper/reaper_runs_abort.py +0 -0
  120. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/reaper/reaper_schedule_activate.py +0 -0
  121. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/reaper/reaper_schedule_start.py +0 -0
  122. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/reaper/reaper_schedule_stop.py +0 -0
  123. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/reaper/reaper_schedules.py +0 -0
  124. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/reaper/reaper_session.py +0 -0
  125. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/reaper/reaper_status.py +0 -0
  126. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/repair/__init__.py +0 -0
  127. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/repair/repair.py +0 -0
  128. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/repair/repair_log.py +0 -0
  129. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/repair/repair_run.py +0 -0
  130. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/repair/repair_scan.py +0 -0
  131. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/repair/repair_stop.py +0 -0
  132. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/report.py +0 -0
  133. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/restart.py +0 -0
  134. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/rollout.py +0 -0
  135. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/shell.py +0 -0
  136. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/__init__.py +0 -0
  137. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/show.py +0 -0
  138. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/show_adam.py +0 -0
  139. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/show_app_actions.py +0 -0
  140. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/show_app_id.py +0 -0
  141. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/show_app_queues.py +0 -0
  142. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/show_cassandra_status.py +0 -0
  143. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/show_cassandra_version.py +0 -0
  144. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/show_commands.py +0 -0
  145. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/show_host.py +0 -0
  146. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/show_login.py +0 -0
  147. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/show_params.py +0 -0
  148. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/show_processes.py +0 -0
  149. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/show_repairs.py +0 -0
  150. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/show/show_storage.py +0 -0
  151. {kaqing-2.0.96 → kaqing-2.0.97}/adam/commands/watch.py +0 -0
  152. {kaqing-2.0.96 → kaqing-2.0.97}/adam/config.py +0 -0
  153. {kaqing-2.0.96 → kaqing-2.0.97}/adam/embedded_apps.py +0 -0
  154. {kaqing-2.0.96 → kaqing-2.0.97}/adam/embedded_params.py +0 -0
  155. {kaqing-2.0.96 → kaqing-2.0.97}/adam/log.py +0 -0
  156. {kaqing-2.0.96 → kaqing-2.0.97}/adam/pod_exec_result.py +0 -0
  157. {kaqing-2.0.96 → kaqing-2.0.97}/adam/repl.py +0 -0
  158. {kaqing-2.0.96 → kaqing-2.0.97}/adam/repl_commands.py +0 -0
  159. {kaqing-2.0.96 → kaqing-2.0.97}/adam/repl_session.py +0 -0
  160. {kaqing-2.0.96 → kaqing-2.0.97}/adam/repl_state.py +0 -0
  161. {kaqing-2.0.96 → kaqing-2.0.97}/adam/sql/__init__.py +0 -0
  162. {kaqing-2.0.96 → kaqing-2.0.97}/adam/sql/sql_completer.py +0 -0
  163. {kaqing-2.0.96 → kaqing-2.0.97}/adam/sql/state_machine.py +0 -0
  164. {kaqing-2.0.96 → kaqing-2.0.97}/adam/sql/term_completer.py +0 -0
  165. {kaqing-2.0.96 → kaqing-2.0.97}/adam/sso/__init__.py +0 -0
  166. {kaqing-2.0.96 → kaqing-2.0.97}/adam/sso/authenticator.py +0 -0
  167. {kaqing-2.0.96 → kaqing-2.0.97}/adam/sso/authn_ad.py +0 -0
  168. {kaqing-2.0.96 → kaqing-2.0.97}/adam/sso/authn_okta.py +0 -0
  169. {kaqing-2.0.96 → kaqing-2.0.97}/adam/sso/cred_cache.py +0 -0
  170. {kaqing-2.0.96 → kaqing-2.0.97}/adam/sso/id_token.py +0 -0
  171. {kaqing-2.0.96 → kaqing-2.0.97}/adam/sso/idp.py +0 -0
  172. {kaqing-2.0.96 → kaqing-2.0.97}/adam/sso/idp_login.py +0 -0
  173. {kaqing-2.0.96 → kaqing-2.0.97}/adam/sso/idp_session.py +0 -0
  174. {kaqing-2.0.96 → kaqing-2.0.97}/adam/sso/sso_config.py +0 -0
  175. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils.py +0 -0
  176. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_athena.py +0 -0
  177. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/__init__.py +0 -0
  178. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/cassandra_clusters.py +0 -0
  179. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/cassandra_nodes.py +0 -0
  180. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/config_maps.py +0 -0
  181. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/custom_resources.py +0 -0
  182. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/deployment.py +0 -0
  183. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/ingresses.py +0 -0
  184. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/jobs.py +0 -0
  185. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/kube_context.py +0 -0
  186. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/pods.py +0 -0
  187. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/secrets.py +0 -0
  188. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/service_accounts.py +0 -0
  189. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/services.py +0 -0
  190. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/statefulsets.py +0 -0
  191. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_k8s/volumes.py +0 -0
  192. {kaqing-2.0.96 → kaqing-2.0.97}/adam/utils_net.py +0 -0
  193. {kaqing-2.0.96 → kaqing-2.0.97}/kaqing.egg-info/dependency_links.txt +0 -0
  194. {kaqing-2.0.96 → kaqing-2.0.97}/kaqing.egg-info/entry_points.txt +0 -0
  195. {kaqing-2.0.96 → kaqing-2.0.97}/kaqing.egg-info/top_level.txt +0 -0
  196. {kaqing-2.0.96 → kaqing-2.0.97}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: kaqing
3
- Version: 2.0.96
3
+ Version: 2.0.97
4
4
  Summary: UNKNOWN
5
5
  Home-page: UNKNOWN
6
6
  License: UNKNOWN
@@ -107,7 +107,7 @@ def deploy(kubeconfig: str, config: str, param: list[str], namespace: str, extra
107
107
  @click.option('--all-nodes', '-a', is_flag=True, help='execute on all Cassandra nodes')
108
108
  @click.argument('extra_args', nargs=-1, metavar='<cluster|pod>', type=click.UNPROCESSED)
109
109
  def describe(kubeconfig: str, config: str, param: list[str], cluster: str, namespace: str, pod: str, all_nodes: bool, extra_args):
110
- run_command(Describe(), kubeconfig, config, param, cluster, namespace, pod, ('--all-nodes',) + extra_args if all_nodes else extra_args)
110
+ run_command(Describe(), kubeconfig, config, param, cluster, namespace, pod, extra_args + ('&',) if all_nodes else extra_args)
111
111
 
112
112
 
113
113
  @cli.command(context_settings=dict(ignore_unknown_options=True, allow_extra_args=True), cls=ClusterOrPodCommandHelper, help="Print Qing's issues.")
@@ -42,6 +42,9 @@ def run_cql(state: ReplState, cql: str, opts: list = [], show_out = False, use_s
42
42
  else:
43
43
  command = f'cqlsh -u {user} -p {pw} {" ".join(opts)} -e "{cql}"'
44
44
 
45
+ if not on_any:
46
+ command = f'{command} &'
47
+
45
48
  if state.pod:
46
49
  return CassandraNodes.exec(state.pod, state.namespace, command, show_out=show_out)
47
50
  else:
@@ -3,6 +3,7 @@ import click
3
3
  from adam.commands.command import Command
4
4
  from adam.commands.describe.describe_keyspace import DescribeKeyspace
5
5
  from adam.commands.describe.describe_keyspaces import DescribeKeyspaces
6
+ from adam.commands.describe.describe_schema import DescribeSchema
6
7
  from adam.commands.describe.describe_table import DescribeTable
7
8
  from adam.commands.describe.describe_tables import DescribeTables
8
9
  from adam.repl_state import ReplState, RequiredState
@@ -33,7 +34,7 @@ class Describe(Command):
33
34
  return super().intermediate_run(cmd, state, args, Describe.cmd_list())
34
35
 
35
36
  def cmd_list():
36
- return [DescribeKeyspace(), DescribeKeyspaces(), DescribeTable(), DescribeTables()]
37
+ return [DescribeKeyspace(), DescribeKeyspaces(), DescribeSchema(), DescribeTable(), DescribeTables()]
37
38
 
38
39
  def completion(self, state: ReplState):
39
40
  if state.sts:
@@ -30,7 +30,7 @@ class DescribeKeyspace(Command):
30
30
  if not self.validate_state(state):
31
31
  return state
32
32
 
33
- args, all_nodes = Command.extract_options(args, '--all-nodes')
33
+ args, all_nodes = Command.extract_options(args, '&')
34
34
 
35
35
  if not args:
36
36
  if state.in_repl:
@@ -52,9 +52,9 @@ class DescribeKeyspace(Command):
52
52
 
53
53
  def completion(self, state: ReplState) -> dict[str, any]:
54
54
  if state.sts:
55
- return super().completion(state, {ks: {'--all-nodes': None} for ks in keyspaces(state, on_any=True)})
55
+ return super().completion(state, {ks: {'&': None} for ks in keyspaces(state, on_any=True)})
56
56
 
57
57
  return {}
58
58
 
59
59
  def help(self, _: ReplState) -> str:
60
- return f'{DescribeKeyspace.COMMAND} <keyspace-name> [--all-nodes]\t describe Cassandra keyspace'
60
+ return f'{DescribeKeyspace.COMMAND} <keyspace-name> [&]\t describe Cassandra keyspace'
@@ -30,9 +30,8 @@ class DescribeKeyspaces(Command):
30
30
  if not self.validate_state(state):
31
31
  return state
32
32
 
33
- _, all_nodes = Command.extract_options(args, '--all-nodes')
34
-
35
- r: list[PodExecResult] = run_cql(state, f'describe keyspaces', show_out=True, on_any=not all_nodes)
33
+ args, all_nodes = Command.extract_options(args, '&')
34
+ r: list[PodExecResult] = run_cql(state, f'{DescribeKeyspaces.COMMAND} {" ".join(args)}', show_out=True, on_any=not all_nodes)
36
35
  if not r:
37
36
  log2('No pod is available')
38
37
  return 'no-pod'
@@ -42,9 +41,9 @@ class DescribeKeyspaces(Command):
42
41
 
43
42
  def completion(self, state: ReplState) -> dict[str, any]:
44
43
  if state.sts:
45
- return super().completion(state, {'--all-nodes': None})
44
+ return super().completion(state, {'&': None})
46
45
 
47
46
  return {}
48
47
 
49
48
  def help(self, _: ReplState) -> str:
50
- return f'{DescribeKeyspaces.COMMAND} [--all-nodes]\t describe Cassandra keyspaces'
49
+ return f'{DescribeKeyspaces.COMMAND} [&]\t describe Cassandra keyspaces'
@@ -0,0 +1,49 @@
1
+ from adam.commands.command import Command
2
+ from adam.commands.cql.cql_utils import run_cql
3
+ from adam.pod_exec_result import PodExecResult
4
+ from adam.repl_state import ReplState, RequiredState
5
+ from adam.utils import log2
6
+
7
+ class DescribeSchema(Command):
8
+ COMMAND = 'describe schema'
9
+
10
+ # the singleton pattern
11
+ def __new__(cls, *args, **kwargs):
12
+ if not hasattr(cls, 'instance'): cls.instance = super(DescribeSchema, cls).__new__(cls)
13
+
14
+ return cls.instance
15
+
16
+ def __init__(self, successor: Command=None):
17
+ super().__init__(successor)
18
+
19
+ def required(self):
20
+ return RequiredState.CLUSTER
21
+
22
+ def command(self):
23
+ return DescribeSchema.COMMAND
24
+
25
+ def run(self, cmd: str, state: ReplState):
26
+ if not(args := self.args(cmd)):
27
+ return super().run(cmd, state)
28
+
29
+ state, args = self.apply_state(args, state)
30
+ if not self.validate_state(state):
31
+ return state
32
+
33
+ args, all_nodes = Command.extract_options(args, '&')
34
+ r: list[PodExecResult] = run_cql(state, f'{DescribeSchema.COMMAND} {" ".join(args)}', show_out=True, on_any=not all_nodes)
35
+ if not r:
36
+ log2('No pod is available')
37
+ return 'no-pod'
38
+
39
+ # do not continue to cql route
40
+ return state
41
+
42
+ def completion(self, state: ReplState) -> dict[str, any]:
43
+ if state.sts:
44
+ return super().completion(state, {'&': None})
45
+
46
+ return {}
47
+
48
+ def help(self, _: ReplState) -> str:
49
+ return f'{DescribeSchema.COMMAND} [&]\t describe Cassandra tables'
@@ -52,9 +52,9 @@ class DescribeTable(Command):
52
52
 
53
53
  def completion(self, state: ReplState) -> dict[str, any]:
54
54
  if state.sts:
55
- return super().completion(state, {t: {'--all-nodes': None} for t in table_names(state)})
55
+ return super().completion(state, {t: {'&': None} for t in table_names(state)})
56
56
 
57
57
  return {}
58
58
 
59
59
  def help(self, _: ReplState) -> str:
60
- return f'{DescribeTable.COMMAND} <table-name> [--all-nodes]\t describe Cassandra table'
60
+ return f'{DescribeTable.COMMAND} <table-name> [&]\t describe Cassandra table'
@@ -30,9 +30,8 @@ class DescribeTables(Command):
30
30
  if not self.validate_state(state):
31
31
  return state
32
32
 
33
- _, all_nodes = Command.extract_options(args, '--all-nodes')
34
-
35
- r: list[PodExecResult] = run_cql(state, f'describe tables', show_out=True, on_any=not all_nodes)
33
+ args, all_nodes = Command.extract_options(args, '&')
34
+ r: list[PodExecResult] = run_cql(state, f'{DescribeTables.COMMAND} {" ".join(args)}', show_out=True, on_any=not all_nodes)
36
35
  if not r:
37
36
  log2('No pod is available')
38
37
  return 'no-pod'
@@ -42,9 +41,9 @@ class DescribeTables(Command):
42
41
 
43
42
  def completion(self, state: ReplState) -> dict[str, any]:
44
43
  if state.sts:
45
- return super().completion(state, {'--all-nodes': None})
44
+ return super().completion(state, {'&': None})
46
45
 
47
46
  return {}
48
47
 
49
48
  def help(self, _: ReplState) -> str:
50
- return f'{DescribeTables.COMMAND} [--all-nodes]\t describe Cassandra tables'
49
+ return f'{DescribeTables.COMMAND} [&]\t describe Cassandra tables'
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env python
2
+ # -*- coding: utf-8 -*-
3
+
4
+ __version__ = "2.0.97" #: the working version
5
+ __release__ = "1.0.0" #: the release version
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: kaqing
3
- Version: 2.0.96
3
+ Version: 2.0.97
4
4
  Summary: UNKNOWN
5
5
  Home-page: UNKNOWN
6
6
  License: UNKNOWN
@@ -105,6 +105,7 @@ adam/commands/describe/__init__.py
105
105
  adam/commands/describe/describe.py
106
106
  adam/commands/describe/describe_keyspace.py
107
107
  adam/commands/describe/describe_keyspaces.py
108
+ adam/commands/describe/describe_schema.py
108
109
  adam/commands/describe/describe_table.py
109
110
  adam/commands/describe/describe_tables.py
110
111
  adam/commands/medusa/__init__.py
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name='kaqing',
5
- version='2.0.96',
5
+ version='2.0.97',
6
6
  packages=find_packages(),
7
7
  entry_points={
8
8
  'console_scripts': [
@@ -1,5 +0,0 @@
1
- #!/usr/bin/env python
2
- # -*- coding: utf-8 -*-
3
-
4
- __version__ = "2.0.96" #: the working version
5
- __release__ = "1.0.0" #: the release version
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes