kaqing 2.0.27__tar.gz → 2.0.29__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. {kaqing-2.0.27 → kaqing-2.0.29}/PKG-INFO +1 -1
  2. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/alter_tables.py +4 -4
  3. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/command.py +0 -1
  4. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/login.py +1 -1
  5. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/param_set.py +1 -1
  6. {kaqing-2.0.27 → kaqing-2.0.29}/adam/config.py +1 -1
  7. kaqing-2.0.29/adam/embedded_params.py +2 -0
  8. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/cassandra_nodes.py +1 -1
  9. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/kube_context.py +1 -1
  10. {kaqing-2.0.27 → kaqing-2.0.29}/adam/repl.py +3 -3
  11. kaqing-2.0.29/adam/version.py +5 -0
  12. {kaqing-2.0.27 → kaqing-2.0.29}/kaqing.egg-info/PKG-INFO +1 -1
  13. {kaqing-2.0.27 → kaqing-2.0.29}/setup.py +1 -1
  14. kaqing-2.0.27/adam/embedded_params.py +0 -2
  15. kaqing-2.0.27/adam/version.py +0 -5
  16. {kaqing-2.0.27 → kaqing-2.0.29}/README +0 -0
  17. {kaqing-2.0.27 → kaqing-2.0.29}/adam/__init__.py +0 -0
  18. {kaqing-2.0.27 → kaqing-2.0.29}/adam/app_session.py +0 -0
  19. {kaqing-2.0.27 → kaqing-2.0.29}/adam/apps.py +0 -0
  20. {kaqing-2.0.27 → kaqing-2.0.29}/adam/batch.py +0 -0
  21. {kaqing-2.0.27 → kaqing-2.0.29}/adam/checks/__init__.py +0 -0
  22. {kaqing-2.0.27 → kaqing-2.0.29}/adam/checks/check.py +0 -0
  23. {kaqing-2.0.27 → kaqing-2.0.29}/adam/checks/check_context.py +0 -0
  24. {kaqing-2.0.27 → kaqing-2.0.29}/adam/checks/check_result.py +0 -0
  25. {kaqing-2.0.27 → kaqing-2.0.29}/adam/checks/check_utils.py +0 -0
  26. {kaqing-2.0.27 → kaqing-2.0.29}/adam/checks/compactionstats.py +0 -0
  27. {kaqing-2.0.27 → kaqing-2.0.29}/adam/checks/cpu.py +0 -0
  28. {kaqing-2.0.27 → kaqing-2.0.29}/adam/checks/disk.py +0 -0
  29. {kaqing-2.0.27 → kaqing-2.0.29}/adam/checks/gossip.py +0 -0
  30. {kaqing-2.0.27 → kaqing-2.0.29}/adam/checks/issue.py +0 -0
  31. {kaqing-2.0.27 → kaqing-2.0.29}/adam/checks/memory.py +0 -0
  32. {kaqing-2.0.27 → kaqing-2.0.29}/adam/checks/status.py +0 -0
  33. {kaqing-2.0.27 → kaqing-2.0.29}/adam/cli.py +0 -0
  34. {kaqing-2.0.27 → kaqing-2.0.29}/adam/cli_group.py +0 -0
  35. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/__init__.py +0 -0
  36. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/column.py +0 -0
  37. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/columns.py +0 -0
  38. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/compactions.py +0 -0
  39. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/cpu.py +0 -0
  40. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/dir_data.py +0 -0
  41. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/dir_snapshots.py +0 -0
  42. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/gossip.py +0 -0
  43. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/host_id.py +0 -0
  44. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/memory.py +0 -0
  45. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/node_address.py +0 -0
  46. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/node_load.py +0 -0
  47. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/node_owns.py +0 -0
  48. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/node_status.py +0 -0
  49. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/node_tokens.py +0 -0
  50. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/node_utils.py +0 -0
  51. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/pod_name.py +0 -0
  52. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/volume_cassandra.py +0 -0
  53. {kaqing-2.0.27 → kaqing-2.0.29}/adam/columns/volume_root.py +0 -0
  54. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/__init__.py +0 -0
  55. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/app.py +0 -0
  56. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/app_ping.py +0 -0
  57. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/bash.py +0 -0
  58. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/cd.py +0 -0
  59. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/check.py +0 -0
  60. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/cli_commands.py +0 -0
  61. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/command_helpers.py +0 -0
  62. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/commands_utils.py +0 -0
  63. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/cp.py +0 -0
  64. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/cql_utils.py +0 -0
  65. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/cqlsh.py +0 -0
  66. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/deploy/__init__.py +0 -0
  67. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/deploy/code_start.py +0 -0
  68. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/deploy/code_stop.py +0 -0
  69. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/deploy/code_utils.py +0 -0
  70. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/deploy/deploy.py +0 -0
  71. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/deploy/deploy_frontend.py +0 -0
  72. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/deploy/deploy_pg_agent.py +0 -0
  73. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/deploy/deploy_pod.py +0 -0
  74. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/deploy/deploy_utils.py +0 -0
  75. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/deploy/undeploy.py +0 -0
  76. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/deploy/undeploy_frontend.py +0 -0
  77. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/deploy/undeploy_pg_agent.py +0 -0
  78. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/deploy/undeploy_pod.py +0 -0
  79. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/devices.py +0 -0
  80. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/exit.py +0 -0
  81. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/help.py +0 -0
  82. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/issues.py +0 -0
  83. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/logs.py +0 -0
  84. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/ls.py +0 -0
  85. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/medusa/__init__.py +0 -0
  86. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/medusa/medusa.py +0 -0
  87. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/medusa/medusa_backup.py +0 -0
  88. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/medusa/medusa_restore.py +0 -0
  89. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/medusa/medusa_show_backupjobs.py +0 -0
  90. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/medusa/medusa_show_restorejobs.py +0 -0
  91. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/nodetool.py +0 -0
  92. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/nodetool_commands.py +0 -0
  93. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/param_get.py +0 -0
  94. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/postgres/__init__.py +0 -0
  95. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/postgres/postgres.py +0 -0
  96. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/postgres/postgres_ls.py +0 -0
  97. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/postgres/postgres_preview.py +0 -0
  98. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/postgres/postgres_session.py +0 -0
  99. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/preview_table.py +0 -0
  100. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/pwd.py +0 -0
  101. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/reaper/__init__.py +0 -0
  102. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/reaper/reaper.py +0 -0
  103. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/reaper/reaper_forward.py +0 -0
  104. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/reaper/reaper_forward_stop.py +0 -0
  105. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/reaper/reaper_restart.py +0 -0
  106. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/reaper/reaper_run_abort.py +0 -0
  107. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/reaper/reaper_runs.py +0 -0
  108. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/reaper/reaper_runs_abort.py +0 -0
  109. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/reaper/reaper_schedule_activate.py +0 -0
  110. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/reaper/reaper_schedule_start.py +0 -0
  111. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/reaper/reaper_schedule_stop.py +0 -0
  112. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/reaper/reaper_schedules.py +0 -0
  113. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/reaper/reaper_session.py +0 -0
  114. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/reaper/reaper_status.py +0 -0
  115. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/repair/__init__.py +0 -0
  116. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/repair/repair.py +0 -0
  117. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/repair/repair_log.py +0 -0
  118. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/repair/repair_run.py +0 -0
  119. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/repair/repair_scan.py +0 -0
  120. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/repair/repair_stop.py +0 -0
  121. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/report.py +0 -0
  122. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/restart.py +0 -0
  123. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/rollout.py +0 -0
  124. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/shell.py +0 -0
  125. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/show/__init__.py +0 -0
  126. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/show/show.py +0 -0
  127. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/show/show_adam.py +0 -0
  128. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/show/show_app_actions.py +0 -0
  129. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/show/show_app_id.py +0 -0
  130. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/show/show_app_queues.py +0 -0
  131. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/show/show_cassandra_status.py +0 -0
  132. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/show/show_cassandra_version.py +0 -0
  133. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/show/show_commands.py +0 -0
  134. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/show/show_login.py +0 -0
  135. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/show/show_params.py +0 -0
  136. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/show/show_processes.py +0 -0
  137. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/show/show_repairs.py +0 -0
  138. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/show/show_storage.py +0 -0
  139. {kaqing-2.0.27 → kaqing-2.0.29}/adam/commands/watch.py +0 -0
  140. {kaqing-2.0.27 → kaqing-2.0.29}/adam/embedded_apps.py +0 -0
  141. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/__init__.py +0 -0
  142. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/cassandra_clusters.py +0 -0
  143. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/config_maps.py +0 -0
  144. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/custom_resources.py +0 -0
  145. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/deployment.py +0 -0
  146. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/ingresses.py +0 -0
  147. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/jobs.py +0 -0
  148. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/pods.py +0 -0
  149. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/secrets.py +0 -0
  150. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/service_accounts.py +0 -0
  151. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/services.py +0 -0
  152. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/statefulsets.py +0 -0
  153. {kaqing-2.0.27 → kaqing-2.0.29}/adam/k8s_utils/volumes.py +0 -0
  154. {kaqing-2.0.27 → kaqing-2.0.29}/adam/log.py +0 -0
  155. {kaqing-2.0.27 → kaqing-2.0.29}/adam/pod_exec_result.py +0 -0
  156. {kaqing-2.0.27 → kaqing-2.0.29}/adam/repl_commands.py +0 -0
  157. {kaqing-2.0.27 → kaqing-2.0.29}/adam/repl_session.py +0 -0
  158. {kaqing-2.0.27 → kaqing-2.0.29}/adam/repl_state.py +0 -0
  159. {kaqing-2.0.27 → kaqing-2.0.29}/adam/sso/__init__.py +0 -0
  160. {kaqing-2.0.27 → kaqing-2.0.29}/adam/sso/authenticator.py +0 -0
  161. {kaqing-2.0.27 → kaqing-2.0.29}/adam/sso/authn_ad.py +0 -0
  162. {kaqing-2.0.27 → kaqing-2.0.29}/adam/sso/authn_okta.py +0 -0
  163. {kaqing-2.0.27 → kaqing-2.0.29}/adam/sso/cred_cache.py +0 -0
  164. {kaqing-2.0.27 → kaqing-2.0.29}/adam/sso/id_token.py +0 -0
  165. {kaqing-2.0.27 → kaqing-2.0.29}/adam/sso/idp.py +0 -0
  166. {kaqing-2.0.27 → kaqing-2.0.29}/adam/sso/idp_login.py +0 -0
  167. {kaqing-2.0.27 → kaqing-2.0.29}/adam/sso/idp_session.py +0 -0
  168. {kaqing-2.0.27 → kaqing-2.0.29}/adam/sso/sso_config.py +0 -0
  169. {kaqing-2.0.27 → kaqing-2.0.29}/adam/utils.py +0 -0
  170. {kaqing-2.0.27 → kaqing-2.0.29}/kaqing.egg-info/SOURCES.txt +0 -0
  171. {kaqing-2.0.27 → kaqing-2.0.29}/kaqing.egg-info/dependency_links.txt +0 -0
  172. {kaqing-2.0.27 → kaqing-2.0.29}/kaqing.egg-info/entry_points.txt +0 -0
  173. {kaqing-2.0.27 → kaqing-2.0.29}/kaqing.egg-info/top_level.txt +0 -0
  174. {kaqing-2.0.27 → kaqing-2.0.29}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: kaqing
3
- Version: 2.0.27
3
+ Version: 2.0.29
4
4
  Summary: UNKNOWN
5
5
  Home-page: UNKNOWN
6
6
  License: UNKNOWN
@@ -54,7 +54,7 @@ class AlterTables(Command):
54
54
 
55
55
  excludes = [e.strip(' \r\n') for e in Config().get(
56
56
  'cql.alter-tables.excludes',
57
- 'system_auth,system_traces,system_distributed,system_views,system,system_schema,system_virtual_schema').split(',')]
57
+ 'system_auth,system_traces,reaper_db,system_distributed,system_views,system,system_schema,system_virtual_schema').split(',')]
58
58
  batching = Config().get('cql.alter-tables.batching', True)
59
59
  tables = parse_cql_desc_tables(r[0].stdout)
60
60
  for k, v in tables.items():
@@ -63,7 +63,7 @@ class AlterTables(Command):
63
63
  # alter table <table_name> with GC_GRACE_SECONDS = <timeout>;
64
64
  cql = ';\n'.join([f'alter table {k}.{t} with {arg_str}' for t in v])
65
65
  try:
66
- run_cql(state, cql, [], show_out=Config().get('debug.show-out', False), on_any=True)
66
+ run_cql(state, cql, [], show_out=Config().is_debug(), on_any=True)
67
67
  except Exception as e:
68
68
  log2(e)
69
69
  continue
@@ -72,7 +72,7 @@ class AlterTables(Command):
72
72
  try:
73
73
  # alter table <table_name> with GC_GRACE_SECONDS = <timeout>;
74
74
  cql = f'alter table {k}.{t} with {arg_str}'
75
- run_cql(state, cql, [], show_out=Config().get('debug.show-out', False), on_any=True)
75
+ run_cql(state, cql, [], show_out=Config().is_debug(), on_any=True)
76
76
  except Exception as e:
77
77
  log2(e)
78
78
  continue
@@ -84,7 +84,7 @@ class AlterTables(Command):
84
84
 
85
85
  def completion(self, state: ReplState) -> dict[str, any]:
86
86
  if state.sts:
87
- ps = Config().get('cql.alter-tables.gc-grace-periods', '3600,864000,7776000').split(',')
87
+ ps = Config().get('cql.alter-tables.gc-grace-periods', '3600,86400,864000,7776000').split(',')
88
88
  return super().completion(state, {
89
89
  'GC_GRACE_SECONDS': {'=': {p.strip(' \r\n'): {'--include-reaper': None} for p in ps}},
90
90
  })
@@ -22,7 +22,6 @@ class Command:
22
22
  # Do not do child of child!!!
23
23
  @abstractmethod
24
24
  def run(self, cmd: str, state: ReplState):
25
- Config().debug(cmd)
26
25
  if self._successor:
27
26
  return self._successor.run(cmd, state)
28
27
 
@@ -38,7 +38,7 @@ class Login(Command):
38
38
  state, args = self.apply_state(args, state)
39
39
  args, debug = Command.extract_options(args, ['d'])
40
40
  if debug:
41
- Config().set('debug.show-out', True)
41
+ Config().set('debug', True)
42
42
 
43
43
  username: str = os.getenv('USERNAME')
44
44
  if len(args) > 0:
@@ -38,7 +38,7 @@ class SetParam(Command):
38
38
  return value
39
39
 
40
40
  def completion(self, _: ReplState):
41
- return {SetParam.COMMAND: {key: None for key in Config().keys()}}
41
+ return {SetParam.COMMAND: {key: ({'true': None, 'false': None} if key.startswith('debug') else None) for key in Config().keys()}}
42
42
 
43
43
  def help(self, _: ReplState):
44
44
  return f"{SetParam.COMMAND} <key> <value>\t sets a Kaqing parameter to a different value"
@@ -37,7 +37,7 @@ class Config:
37
37
  return get_deep_keys(self.params)
38
38
 
39
39
  def is_debug(self):
40
- return Config().get('debug.show-out', False)
40
+ return Config().get('debug', False)
41
41
 
42
42
  def debug(self, s: None):
43
43
  if self.is_debug():
@@ -0,0 +1,2 @@
1
+ def config():
2
+ return {'app': {'console-endpoint': 'https://{host}/{env}/{app}/static/console/index.html', 'cr': {'cluster-regex': '(.*?-.*?)-.*', 'group': 'ops.c3.ai', 'v': 'v2', 'plural': 'c3cassandras'}, 'label': 'c3__app_id-0', 'login': {'admin-group': '{host}/C3.ClusterAdmin', 'ingress': '{app_id}-k8singr-appleader-001', 'timeout': 5, 'session-check-url': 'https://{host}/{env}/{app}/api/8/C3/userSessionToken', 'cache-creds': True, 'cache-username': True, 'url': 'https://{host}/{env}/{app}', 'another': "You're logged in to {has}. However, for this app, you need to log in to {need}.", 'token-server-url': 'http://localhost:{port}', 'password-max-length': 128}, 'strip': '0'}, 'bash': {'workers': 32}, 'cassandra': {'service-name': 'all-pods-service'}, 'cql': {'workers': 32, 'samples': 3, 'secret': {'cluster-regex': '(.*?-.*?)-.*', 'name': '{cluster}-superuser', 'password-item': 'password'}, 'alter-tables': {'excludes': 'system_auth,system_traces,reaper_db,system_distributed,system_views,system,system_schema,system_virtual_schema', 'gc-grace-periods': '3600,86400,864000,7776000', 'batching': True}}, 'checks': {'compactions-threshold': 250, 'cpu-busy-threshold': 98.0, 'cpu-threshold': 0.0, 'cassandra-data-path': '/c3/cassandra', 'root-disk-threshold': 50, 'cassandra-disk-threshold': 50, 'snapshot-size-cmd': "ls /c3/cassandra/data/data/*/*/snapshots | grep snapshots | sed 's/:$//g' | xargs -I {} du -sk {} | awk '{print $1}' | awk '{s+=$1} END {print s}'", 'snapshot-size-threshold': '40G', 'table-sizes-cmd': "ls -Al /c3/cassandra/data/data/ | awk '{print $9}' | sed 's/\\^r//g' | xargs -I {} du -sk /c3/cassandra/data/data/{}"}, 'get-host-id': {'workers': 32}, 'idps': {'ad': {'email-pattern': '.*@c3.ai', 'uri': 'https://login.microsoftonline.com/53ad779a-93e7-485c-ba20-ac8290d7252b/oauth2/v2.0/authorize?response_type=id_token&response_mode=form_post&client_id=00ff94a8-6b0a-4715-98e0-95490012d818&scope=openid+email+profile&redirect_uri=https%3A%2F%2Fplat.c3ci.cloud%2Fc3%2Fc3%2Foidc%2Flogin&nonce={nonce}&state=EMPTY', 'jwks-uri': 'https://login.microsoftonline.com/common/discovery/keys', 'contact': 'Please contact ted.tran@c3.ai.', 'whitelist-file': '/kaqing/members'}, 'okta': {'default': True, 'email-pattern': '.*@c3iot.com', 'uri': 'https://c3energy.okta.com/oauth2/v1/authorize?response_type=id_token&response_mode=form_post&client_id={client_id}&scope=openid+email+profile+groups&redirect_uri=https%3A%2F%2F{host}%2Fc3%2Fc3%2Foidc%2Flogin&nonce={nonce}&state=EMPTY', 'jwks-uri': 'https://c3energy.okta.com/oauth2/v1/keys'}}, 'issues': {'workers': 32}, 'logs': {'path': '/c3/cassandra/logs/system.log'}, 'medusa': {'restore-auto-complete': False}, 'nodetool': {'workers': 32, 'samples': 3, 'commands_in_line': 40}, 'pg': {'name-pattern': '^{namespace}.*-k8spg-.*', 'excludes': '.helm., -admin-secret', 'agent': {'name': 'ops-pg-agent', 'just-in-time': False, 'timeout': 86400, 'image': 'seanahnsf/kaqing'}, 'default-db': 'postgres', 'default-schema': 'postgres', 'secret': {'endpoint-key': 'postgres-db-endpoint', 'port-key': 'postgres-db-port', 'username-key': 'postgres-admin-username', 'password-key': 'postgres-admin-password'}}, 'pod': {'name': 'ops', 'image': 'seanahnsf/kaqing-cloud', 'sa': {'name': 'ops', 'proto': 'c3', 'additional-cluster-roles': 'c3aiops-k8ssandra-operator'}, 'label-selector': 'run=ops'}, 'preview': {'rows': 10}, 'processes': {'columns': 'pod,cpu,mem', 'header': 'POD_NAME,CPU,MEM/LIMIT'}, 'reaper': {'service-name': 'reaper-service', 'port-forward': {'timeout': 86400, 'local-port': 9001}, 'abort-runs-batch': 10, 'show-runs-batch': 100, 'pod': {'cluster-regex': '(.*?-.*?-.*?-.*?)-.*', 'label-selector': 'k8ssandra.io/reaper={cluster}-reaper'}, 'secret': {'cluster-regex': '(.*?-.*?)-.*', 'name': '{cluster}-reaper-ui', 'password-item': 'password'}}, 'repair': {'log-path': '/home/cassrepair/logs/', 'image': 'ci-registry.c3iot.io/cloudops/cassrepair:2.0.14', 'secret': 'ciregistryc3iotio', 'env': {'interval': 24, 'timeout': 60, 'pr': False, 'runs': 1}}, 'repl': {'start-drive': 'a', 'auto-enter-app': 'c3/c3', 'auto-enter-only-cluster': True}, 'status': {'columns': 'status,address,load,tokens,owns,host_id,gossip,compactions', 'header': '--,Address,Load,Tokens,Owns,Host ID,GOSSIP,COMPACTIONS'}, 'storage': {'columns': 'pod,volume_root,volume_cassandra,snapshots,data,compactions', 'header': 'POD_NAME,VOLUME /,VOLUME CASS,SNAPSHOTS,DATA,COMPACTIONS'}, 'watch': {'auto': 'rollout', 'timeout': 3600, 'interval': 10}, 'debug': False, 'debugs': {'timings': False, 'exit-on-error': False, 'show-parallelism': False}}
@@ -12,7 +12,7 @@ class CassandraNodes:
12
12
  try:
13
13
  user, pw = Secrets.get_user_pass(pod_name, ns)
14
14
  command = f'echo "SELECT host_id FROM system.local; exit" | cqlsh --no-color -u {user} -p {pw}'
15
- result: PodExecResult = CassandraNodes.exec(pod_name, ns, command, show_out=Config().get('debug.trace', False))
15
+ result: PodExecResult = CassandraNodes.exec(pod_name, ns, command, show_out=Config().is_debug())
16
16
  next = False
17
17
  for line in result.stdout.splitlines():
18
18
  if next:
@@ -105,4 +105,4 @@ class KubeContext:
105
105
  return s or Config().is_debug()
106
106
 
107
107
  def show_parallelism():
108
- return Config().get('debug.show-parallelism', False)
108
+ return Config().get('debugs.show-parallelism', False)
@@ -104,7 +104,7 @@ def enter_repl(state: ReplState):
104
104
  try:
105
105
  completions = deep_merge_dicts(completions, cmd.completion(state))
106
106
  finally:
107
- if Config().get('debug.timings', False):
107
+ if Config().get('debugs.timings', False):
108
108
  Config().debug('Timing completion calc', cmd.command(), f'{time.time() - s1:.2f}')
109
109
 
110
110
  completer = NestedCompleter.from_nested_dict(completions)
@@ -145,14 +145,14 @@ def enter_repl(state: ReplState):
145
145
  except EOFError: # Handle Ctrl+D (EOF) for graceful exit
146
146
  break
147
147
  except Exception as e:
148
- if Config().get('debug.exit-on-error', False):
148
+ if Config().get('debugs.exit-on-error', False):
149
149
  raise e
150
150
  else:
151
151
  log2(e)
152
152
  Config().debug(traceback.format_exc())
153
153
  finally:
154
154
  state.clear_wait_log_flag()
155
- if Config().get('debug.timings', False) and 'cmd' in locals() and 's0' in locals():
155
+ if Config().get('debugs.timings', False) and 'cmd' in locals() and 's0' in locals():
156
156
  print('Timing command', cmd, f'{time.time() - s0:.2f}')
157
157
 
158
158
  @cli.command(context_settings=dict(ignore_unknown_options=True, allow_extra_args=True), cls=ClusterCommandHelper, help="Enter interactive shell.")
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env python
2
+ # -*- coding: utf-8 -*-
3
+
4
+ __version__ = "2.0.29" #: 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.27
3
+ Version: 2.0.29
4
4
  Summary: UNKNOWN
5
5
  Home-page: UNKNOWN
6
6
  License: UNKNOWN
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name='kaqing',
5
- version='2.0.27',
5
+ version='2.0.29',
6
6
  packages=find_packages(),
7
7
  entry_points={
8
8
  'console_scripts': [
@@ -1,2 +0,0 @@
1
- def config():
2
- return {'app': {'console-endpoint': 'https://{host}/{env}/{app}/static/console/index.html', 'cr': {'cluster-regex': '(.*?-.*?)-.*', 'group': 'ops.c3.ai', 'v': 'v2', 'plural': 'c3cassandras'}, 'label': 'c3__app_id-0', 'login': {'admin-group': '{host}/C3.ClusterAdmin', 'ingress': '{app_id}-k8singr-appleader-001', 'timeout': 5, 'session-check-url': 'https://{host}/{env}/{app}/api/8/C3/userSessionToken', 'cache-creds': True, 'cache-username': True, 'url': 'https://{host}/{env}/{app}', 'another': "You're logged in to {has}. However, for this app, you need to log in to {need}.", 'token-server-url': 'http://localhost:{port}', 'password-max-length': 128}, 'strip': '0'}, 'bash': {'workers': 32}, 'cassandra': {'service-name': 'all-pods-service'}, 'cql': {'workers': 32, 'samples': 3, 'secret': {'cluster-regex': '(.*?-.*?)-.*', 'name': '{cluster}-superuser', 'password-item': 'password'}, 'alter-tables': {'excludes': 'system_auth,system_traces,reaper_db,system_distributed,system_views,system,system_schema,system_virtual_schema', 'gc-grace-periods': '3600,864000,7776000', 'batching': True}}, 'checks': {'compactions-threshold': 250, 'cpu-busy-threshold': 98.0, 'cpu-threshold': 0.0, 'cassandra-data-path': '/c3/cassandra', 'root-disk-threshold': 50, 'cassandra-disk-threshold': 50, 'snapshot-size-cmd': "ls /c3/cassandra/data/data/*/*/snapshots | grep snapshots | sed 's/:$//g' | xargs -I {} du -sk {} | awk '{print $1}' | awk '{s+=$1} END {print s}'", 'snapshot-size-threshold': '40G', 'table-sizes-cmd': "ls -Al /c3/cassandra/data/data/ | awk '{print $9}' | sed 's/\\^r//g' | xargs -I {} du -sk /c3/cassandra/data/data/{}"}, 'get-host-id': {'workers': 32}, 'idps': {'ad': {'email-pattern': '.*@c3.ai', 'uri': 'https://login.microsoftonline.com/53ad779a-93e7-485c-ba20-ac8290d7252b/oauth2/v2.0/authorize?response_type=id_token&response_mode=form_post&client_id=00ff94a8-6b0a-4715-98e0-95490012d818&scope=openid+email+profile&redirect_uri=https%3A%2F%2Fplat.c3ci.cloud%2Fc3%2Fc3%2Foidc%2Flogin&nonce={nonce}&state=EMPTY', 'jwks-uri': 'https://login.microsoftonline.com/common/discovery/keys', 'contact': 'Please contact ted.tran@c3.ai.', 'whitelist-file': '/kaqing/members'}, 'okta': {'default': True, 'email-pattern': '.*@c3iot.com', 'uri': 'https://c3energy.okta.com/oauth2/v1/authorize?response_type=id_token&response_mode=form_post&client_id={client_id}&scope=openid+email+profile+groups&redirect_uri=https%3A%2F%2F{host}%2Fc3%2Fc3%2Foidc%2Flogin&nonce={nonce}&state=EMPTY', 'jwks-uri': 'https://c3energy.okta.com/oauth2/v1/keys'}}, 'issues': {'workers': 32}, 'logs': {'path': '/c3/cassandra/logs/system.log'}, 'medusa': {'restore-auto-complete': False}, 'nodetool': {'workers': 32, 'samples': 3, 'commands_in_line': 40}, 'pg': {'name-pattern': '^{namespace}.*-k8spg-.*', 'excludes': '.helm., -admin-secret', 'agent': {'name': 'ops-pg-agent', 'just-in-time': False, 'timeout': 86400, 'image': 'seanahnsf/kaqing'}, 'default-db': 'postgres', 'default-schema': 'postgres', 'secret': {'endpoint-key': 'postgres-db-endpoint', 'port-key': 'postgres-db-port', 'username-key': 'postgres-admin-username', 'password-key': 'postgres-admin-password'}}, 'pod': {'name': 'ops', 'image': 'seanahnsf/kaqing-cloud', 'sa': {'name': 'ops', 'proto': 'c3', 'additional-cluster-roles': 'c3aiops-k8ssandra-operator'}, 'label-selector': 'run=ops'}, 'preview': {'rows': 10}, 'processes': {'columns': 'pod,cpu,mem', 'header': 'POD_NAME,CPU,MEM/LIMIT'}, 'reaper': {'service-name': 'reaper-service', 'port-forward': {'timeout': 86400, 'local-port': 9001}, 'abort-runs-batch': 10, 'show-runs-batch': 100, 'pod': {'cluster-regex': '(.*?-.*?-.*?-.*?)-.*', 'label-selector': 'k8ssandra.io/reaper={cluster}-reaper'}, 'secret': {'cluster-regex': '(.*?-.*?)-.*', 'name': '{cluster}-reaper-ui', 'password-item': 'password'}}, 'repair': {'log-path': '/home/cassrepair/logs/', 'image': 'ci-registry.c3iot.io/cloudops/cassrepair:2.0.14', 'secret': 'ciregistryc3iotio', 'env': {'interval': 24, 'timeout': 60, 'pr': False, 'runs': 1}}, 'repl': {'start-drive': 'a', 'auto-enter-app': 'c3/c3', 'auto-enter-only-cluster': True}, 'status': {'columns': 'status,address,load,tokens,owns,host_id,gossip,compactions', 'header': '--,Address,Load,Tokens,Owns,Host ID,GOSSIP,COMPACTIONS'}, 'storage': {'columns': 'pod,volume_root,volume_cassandra,snapshots,data,compactions', 'header': 'POD_NAME,VOLUME /,VOLUME CASS,SNAPSHOTS,DATA,COMPACTIONS'}, 'watch': {'auto': 'rollout', 'timeout': 3600, 'interval': 10}, 'debug': {'timings': False, 'exit-on-error': False, 'show-parallelism': False, 'show-out': False}}
@@ -1,5 +0,0 @@
1
- #!/usr/bin/env python
2
- # -*- coding: utf-8 -*-
3
-
4
- __version__ = "2.0.27" #: 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