sbcli-pre 1.1.6__zip → 1.1.7__zip

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 (136) hide show
  1. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/PKG-INFO +1 -1
  2. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/env_var +1 -1
  3. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/sbcli_pre.egg-info/PKG-INFO +1 -1
  4. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/device_controller.py +12 -7
  5. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/tasks_runner_restart.py +9 -14
  6. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/README.md +0 -0
  7. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/pyproject.toml +0 -0
  8. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/sbcli_pre.egg-info/SOURCES.txt +0 -0
  9. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/sbcli_pre.egg-info/dependency_links.txt +0 -0
  10. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/sbcli_pre.egg-info/entry_points.txt +0 -0
  11. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/sbcli_pre.egg-info/requires.txt +0 -0
  12. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/sbcli_pre.egg-info/top_level.txt +0 -0
  13. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/setup.cfg +0 -0
  14. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/setup.py +0 -0
  15. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_cli/cli.py +0 -0
  16. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_cli/main.py +0 -0
  17. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/__init__.py +0 -0
  18. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/cluster_ops.py +0 -0
  19. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/cnode_client.py +0 -0
  20. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/compute_node_ops.py +0 -0
  21. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/constants.py +0 -0
  22. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/__init__.py +0 -0
  23. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/caching_node_controller.py +0 -0
  24. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/cluster_events.py +0 -0
  25. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/device_events.py +0 -0
  26. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/events_controller.py +0 -0
  27. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/health_controller.py +0 -0
  28. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/lvol_controller.py +0 -0
  29. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/lvol_events.py +0 -0
  30. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/mgmt_events.py +0 -0
  31. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/pool_controller.py +0 -0
  32. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/pool_events.py +0 -0
  33. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/snapshot_controller.py +0 -0
  34. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/snapshot_events.py +0 -0
  35. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/storage_events.py +0 -0
  36. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/tasks_controller.py +0 -0
  37. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/controllers/tasks_events.py +0 -0
  38. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/distr_controller.py +0 -0
  39. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/kv_store.py +0 -0
  40. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/mgmt_node_ops.py +0 -0
  41. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/__init__.py +0 -0
  42. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/base_model.py +0 -0
  43. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/caching_node.py +0 -0
  44. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/cluster.py +0 -0
  45. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/compute_node.py +0 -0
  46. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/events.py +0 -0
  47. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/global_settings.py +0 -0
  48. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/iface.py +0 -0
  49. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/job_schedule.py +0 -0
  50. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/lvol_model.py +0 -0
  51. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/mgmt_node.py +0 -0
  52. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/nvme_device.py +0 -0
  53. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/pool.py +0 -0
  54. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/port_stat.py +0 -0
  55. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/snapshot.py +0 -0
  56. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/stats.py +0 -0
  57. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/models/storage_node.py +0 -0
  58. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/pci_utils.py +0 -0
  59. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/rpc_client.py +0 -0
  60. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/__init__.py +0 -0
  61. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
  62. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
  63. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
  64. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/config_docker.sh +0 -0
  65. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
  66. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/dashboards/devices.json +0 -0
  67. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
  68. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
  69. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
  70. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/dashboards/pools.json +0 -0
  71. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/datasource.yml +0 -0
  72. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/db_config_double.sh +0 -0
  73. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/db_config_single.sh +0 -0
  74. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/deploy_stack.sh +0 -0
  75. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
  76. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
  77. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/haproxy.cfg +0 -0
  78. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/install_deps.sh +0 -0
  79. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/prometheus.yml +0 -0
  80. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/run_ssh.sh +0 -0
  81. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/set_db_config.sh +0 -0
  82. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
  83. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/__init__.py +0 -0
  84. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/caching_node_monitor.py +0 -0
  85. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/cap_monitor.py +0 -0
  86. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
  87. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/device_monitor.py +0 -0
  88. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/distr_event_collector.py +0 -0
  89. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/health_check_service.py +0 -0
  90. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/install_service.sh +0 -0
  91. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/log_agg_service.py +0 -0
  92. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/lvol_monitor.py +0 -0
  93. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/lvol_stat_collector.py +0 -0
  94. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
  95. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/port_stat_collector.py +0 -0
  96. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/remove_service.sh +0 -0
  97. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/service_template.service +0 -0
  98. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/storage_node_monitor.py +0 -0
  99. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/services/tasks_runner_migration.py +0 -0
  100. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/shell_utils.py +0 -0
  101. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/snode_client.py +0 -0
  102. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/storage_node_ops.py +0 -0
  103. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_core/utils.py +0 -0
  104. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/__init__.py +0 -0
  105. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/app.py +0 -0
  106. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/auth_middleware.py +0 -0
  107. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/__init__.py +0 -0
  108. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
  109. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
  110. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/node_api_basic.py +0 -0
  111. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
  112. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
  113. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/snode_ops.py +0 -0
  114. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
  115. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
  116. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/web_api_device.py +0 -0
  117. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
  118. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
  119. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/web_api_pool.py +0 -0
  120. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
  121. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
  122. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/caching_node_app.py +0 -0
  123. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/caching_node_app_k8s.py +0 -0
  124. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/node_utils.py +0 -0
  125. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/node_webapp.py +0 -0
  126. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/snode_app.py +0 -0
  127. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/static/delete.py +0 -0
  128. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/static/deploy.py +0 -0
  129. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/static/deploy_cnode.yaml +0 -0
  130. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/static/deploy_spdk.yaml +0 -0
  131. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/static/is_up.py +0 -0
  132. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/static/list_deps.py +0 -0
  133. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/static/rpac.yaml +0 -0
  134. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/static/tst.py +0 -0
  135. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/templates/deploy_spdk.yaml.j2 +0 -0
  136. {sbcli_pre-1.1.6 → sbcli_pre-1.1.7}/simplyblock_web/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sbcli-pre
3
- Version: 1.1.6
3
+ Version: 1.1.7
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -1,5 +1,5 @@
1
1
  SIMPLY_BLOCK_COMMAND_NAME=sbcli-pre
2
- SIMPLY_BLOCK_VERSION=1.1.6
2
+ SIMPLY_BLOCK_VERSION=1.1.7
3
3
 
4
4
  SIMPLY_BLOCK_DOCKER_IMAGE=simplyblock/simplyblock:pre-release
5
5
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sbcli-pre
3
- Version: 1.1.6
3
+ Version: 1.1.7
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -92,7 +92,7 @@ def get_alceml_name(alceml_id):
92
92
  return f"alceml_{alceml_id}"
93
93
 
94
94
 
95
- def _def_create_device_stack(device_obj, snode):
95
+ def _def_create_device_stack(device_obj, snode, force=False):
96
96
 
97
97
  rpc_client = RPCClient(
98
98
  snode.mgmt_ip, snode.rpc_port,
@@ -105,7 +105,8 @@ def _def_create_device_stack(device_obj, snode):
105
105
  ret = rpc_client.bdev_passtest_create(test_name, device_obj.nvme_bdev)
106
106
  if not ret:
107
107
  logger.error(f"Failed to create bdev: {test_name}")
108
- return False
108
+ if not force:
109
+ return False
109
110
 
110
111
  alceml_id = device_obj.get_id()
111
112
  alceml_name = get_alceml_name(alceml_id)
@@ -114,14 +115,16 @@ def _def_create_device_stack(device_obj, snode):
114
115
  dev_cpu_mask=snode.dev_cpu_mask)
115
116
  if not ret:
116
117
  logger.error(f"Failed to create alceml bdev: {alceml_name}")
117
- return False
118
+ if not force:
119
+ return False
118
120
 
119
121
  # add pass through
120
122
  pt_name = f"{alceml_name}_PT"
121
123
  ret = rpc_client.bdev_PT_NoExcl_create(pt_name, alceml_name)
122
124
  if not ret:
123
125
  logger.error(f"Failed to create pt noexcl bdev: {pt_name}")
124
- return False
126
+ if not force:
127
+ return False
125
128
 
126
129
  subsystem_nqn = snode.subsystem + ":dev:" + alceml_id
127
130
  logger.info("Creating subsystem %s", subsystem_nqn)
@@ -150,7 +153,8 @@ def _def_create_device_stack(device_obj, snode):
150
153
  dev_cpu_mask=snode.dev_cpu_mask)
151
154
  if not ret:
152
155
  logger.error(f"Failed to create jm bdev: {device_obj.jm_bdev}")
153
- return False
156
+ if not force:
157
+ return False
154
158
 
155
159
  device_obj.testing_bdev = test_name
156
160
  device_obj.alceml_bdev = alceml_name
@@ -186,11 +190,12 @@ def restart_device(device_id, force=False):
186
190
  logger.info(f"Restarting device {device_id}")
187
191
  device_set_unavailable(device_id)
188
192
 
189
- ret = _def_create_device_stack(device_obj, snode)
193
+ ret = _def_create_device_stack(device_obj, snode, force=force)
190
194
 
191
195
  if not ret:
192
196
  logger.error("Failed to create device stack")
193
- return False
197
+ if not force:
198
+ return False
194
199
 
195
200
  logger.info("Make other nodes connect to the device")
196
201
  snodes = db_controller.get_storage_nodes()
@@ -106,20 +106,15 @@ def task_runner_device(task):
106
106
  task.write_to_db(db_controller.kv_store)
107
107
  tasks_events.task_updated(task)
108
108
 
109
- # # resetting device
110
- # logger.info(f"Resetting device {device.get_id()}")
111
- # device_controller.reset_storage_device(device.get_id())
112
- # time.sleep(5)
113
- # device = _get_device(task)
114
- # if device.status == NVMeDevice.STATUS_ONLINE and device.io_error is False:
115
- # logger.info(f"Device is online: {device.get_id()}")
116
- # task.function_result = "done"
117
- # task.status = JobSchedule.STATUS_DONE
118
- # task.write_to_db(db_controller.kv_store)
119
- # return True
120
-
121
- logger.info(f"Restarting device {device.get_id()}")
122
- device_controller.restart_device(device.get_id(), force=True)
109
+ # set device online for the first 3 retries
110
+ if task.retry < 3:
111
+ logger.info(f"Set device online {device.get_id()}")
112
+ device_controller.device_set_online(device.get_id())
113
+ else:
114
+ logger.info(f"Restarting device {device.get_id()}")
115
+ device_controller.restart_device(device.get_id(), force=True)
116
+
117
+ # check device status
123
118
  time.sleep(5)
124
119
  device = _get_device(task)
125
120
  if device.status == NVMeDevice.STATUS_ONLINE and device.io_error is False:
File without changes
File without changes
File without changes
File without changes