sbcli-dev 17.2.1__tar.gz → 17.2.2__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 (158) hide show
  1. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/PKG-INFO +1 -1
  2. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/sbcli_dev.egg-info/PKG-INFO +1 -1
  3. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_cli/clibase.py +2 -1
  4. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/lvol_controller.py +42 -32
  5. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/env_var +1 -1
  6. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/web_api_lvol.py +2 -2
  7. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/README.md +0 -0
  8. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/pyproject.toml +0 -0
  9. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/requirements.txt +0 -0
  10. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/sbcli_dev.egg-info/SOURCES.txt +0 -0
  11. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/sbcli_dev.egg-info/dependency_links.txt +0 -0
  12. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/sbcli_dev.egg-info/entry_points.txt +0 -0
  13. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/sbcli_dev.egg-info/requires.txt +0 -0
  14. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/sbcli_dev.egg-info/top_level.txt +0 -0
  15. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/setup.cfg +0 -0
  16. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/setup.py +0 -0
  17. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_cli/__init__.py +0 -0
  18. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_cli/cli.py +0 -0
  19. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_cli/main.py +0 -0
  20. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/__init__.py +0 -0
  21. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/cluster_ops.py +0 -0
  22. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/cnode_client.py +0 -0
  23. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/constants.py +0 -0
  24. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/__init__.py +0 -0
  25. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/caching_node_controller.py +0 -0
  26. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/cluster_events.py +0 -0
  27. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/device_controller.py +0 -0
  28. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/device_events.py +0 -0
  29. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/events_controller.py +0 -0
  30. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/health_controller.py +0 -0
  31. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/lvol_events.py +0 -0
  32. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/mgmt_events.py +0 -0
  33. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/pool_controller.py +0 -0
  34. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/pool_events.py +0 -0
  35. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/snapshot_controller.py +0 -0
  36. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/snapshot_events.py +0 -0
  37. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/storage_events.py +0 -0
  38. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/tasks_controller.py +0 -0
  39. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/tasks_events.py +0 -0
  40. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/controllers/tcp_ports_events.py +0 -0
  41. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/db_controller.py +0 -0
  42. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/distr_controller.py +0 -0
  43. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/mgmt_node_ops.py +0 -0
  44. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/__init__.py +0 -0
  45. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/base_model.py +0 -0
  46. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/caching_node.py +0 -0
  47. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/cluster.py +0 -0
  48. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/deployer.py +0 -0
  49. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/events.py +0 -0
  50. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/iface.py +0 -0
  51. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/job_schedule.py +0 -0
  52. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/lvol_model.py +0 -0
  53. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/mgmt_node.py +0 -0
  54. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/nvme_device.py +0 -0
  55. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/pool.py +0 -0
  56. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/port_stat.py +0 -0
  57. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/snapshot.py +0 -0
  58. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/stats.py +0 -0
  59. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/models/storage_node.py +0 -0
  60. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/pci_utils.py +0 -0
  61. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/rpc_client.py +0 -0
  62. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/__init__.py +0 -0
  63. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
  64. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
  65. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
  66. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/config_docker.sh +0 -0
  67. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/dashboard.yml +0 -0
  68. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
  69. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/dashboards/devices.json +0 -0
  70. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
  71. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
  72. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
  73. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/dashboards/pools.json +0 -0
  74. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/datasource.yml +0 -0
  75. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/db_config_double.sh +0 -0
  76. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/db_config_single.sh +0 -0
  77. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/deploy_fdb.sh +0 -0
  78. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/deploy_stack.sh +0 -0
  79. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
  80. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
  81. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/foundation.yml +0 -0
  82. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/haproxy.cfg +0 -0
  83. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/install_deps.sh +0 -0
  84. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/objstore.yml +0 -0
  85. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/prepare_fdb.sh +0 -0
  86. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/prometheus.yml +0 -0
  87. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/run_ssh.sh +0 -0
  88. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/set_db_config.sh +0 -0
  89. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
  90. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/__init__.py +0 -0
  91. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
  92. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/caching_node_monitor.py +0 -0
  93. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/cap_monitor.py +0 -0
  94. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
  95. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/device_monitor.py +0 -0
  96. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/health_check_service.py +0 -0
  97. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/install_service.sh +0 -0
  98. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/lvol_monitor.py +0 -0
  99. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/lvol_stat_collector.py +0 -0
  100. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/main_distr_event_collector.py +0 -0
  101. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
  102. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/new_device_discovery.py +0 -0
  103. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/remove_service.sh +0 -0
  104. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/service_template.service +0 -0
  105. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/spdk/__init__.py +0 -0
  106. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/spdk/client.py +0 -0
  107. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/spdk_http_proxy_server.py +0 -0
  108. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/spdk_stats_collector.py +0 -0
  109. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/storage_node_monitor.py +0 -0
  110. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/tasks_runner_failed_migration.py +0 -0
  111. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/tasks_runner_migration.py +0 -0
  112. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/tasks_runner_new_dev_migration.py +0 -0
  113. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
  114. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/services/tasks_runner_restart.py +0 -0
  115. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/shell_utils.py +0 -0
  116. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/snode_client.py +0 -0
  117. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/storage_node_ops.py +0 -0
  118. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/test/test_utils.py +0 -0
  119. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/utils.py +0 -0
  120. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_core/workers/cleanup_foundationdb.py +0 -0
  121. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/README.md +0 -0
  122. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/__init__.py +0 -0
  123. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/app.py +0 -0
  124. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/auth_middleware.py +0 -0
  125. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/__init__.py +0 -0
  126. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
  127. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
  128. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/node_api_basic.py +0 -0
  129. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
  130. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
  131. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/snode_ops.py +0 -0
  132. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
  133. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/swagger_ui_blueprint.py +0 -0
  134. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
  135. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
  136. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
  137. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/web_api_device.py +0 -0
  138. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
  139. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/web_api_pool.py +0 -0
  140. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
  141. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
  142. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/node_utils.py +0 -0
  143. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/node_utils_k8s.py +0 -0
  144. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/node_webapp.py +0 -0
  145. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/requirements.txt +0 -0
  146. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/static/SimplyBlock-API.postman_collection.json +0 -0
  147. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/static/delete.py +0 -0
  148. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/static/deploy.py +0 -0
  149. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/static/deploy_cnode.yaml +0 -0
  150. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/static/deploy_spdk.yaml +0 -0
  151. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/static/is_up.py +0 -0
  152. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/static/list_deps.py +0 -0
  153. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/static/rpac.yaml +0 -0
  154. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/static/swagger.yaml +0 -0
  155. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/static/tst.py +0 -0
  156. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
  157. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +0 -0
  158. {sbcli_dev-17.2.1 → sbcli_dev-17.2.2}/simplyblock_web/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sbcli-dev
3
- Version: 17.2.1
3
+ Version: 17.2.2
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sbcli-dev
3
- Version: 17.2.1
3
+ Version: 17.2.2
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -426,7 +426,8 @@ class CLIWrapperBase:
426
426
  def volume__resize(self, sub_command, args):
427
427
  volume_id = args.volume_id
428
428
  size = utils.parse_size(args.size)
429
- return lvol_controller.resize_lvol(volume_id, size)
429
+ ret, err = lvol_controller.resize_lvol(volume_id, size)
430
+ return ret
430
431
 
431
432
  def volume__create_snapshot(self, sub_command, args):
432
433
  volume_id = args.volume_id
@@ -1061,10 +1061,16 @@ def list_lvols(is_json, cluster_id, pool_id_or_name, all=False):
1061
1061
  logger.debug(lvol)
1062
1062
  if lvol.deleted is True and all is False:
1063
1063
  continue
1064
+ size_used = 0
1065
+ records = db_controller.get_lvol_stats(lvol, 1)
1066
+ if records:
1067
+ size_used = records[0].size_used
1068
+
1064
1069
  data.append({
1065
1070
  "Id": lvol.uuid,
1066
1071
  "Name": lvol.lvol_name,
1067
1072
  "Size": utils.humanbytes(lvol.size),
1073
+ "Used": f"{utils.humanbytes(size_used)}",
1068
1074
  "Hostname": lvol.hostname,
1069
1075
  "HA": lvol.ha_type,
1070
1076
  "BlobID": lvol.blobid or "",
@@ -1172,32 +1178,38 @@ def resize_lvol(id, new_size):
1172
1178
  db_controller = DBController()
1173
1179
  lvol = db_controller.get_lvol_by_id(id)
1174
1180
  if not lvol:
1175
- logger.error(f"LVol not found: {id}")
1176
- return False
1181
+ msg = f"LVol not found: {id}"
1182
+ logger.error(msg)
1183
+ return False, msg
1177
1184
 
1178
1185
  pool = db_controller.get_pool_by_id(lvol.pool_uuid)
1179
1186
  if pool.status == Pool.STATUS_INACTIVE:
1180
- logger.error(f"Pool is disabled")
1181
- return False
1187
+ msg = f"Pool is disabled {pool.get_id()}"
1188
+ logger.error(msg)
1189
+ return False, msg
1182
1190
 
1183
1191
  if lvol.size >= new_size:
1184
- logger.error(f"New size {new_size} must be higher than the original size {lvol.size}")
1185
- return False
1192
+ msg = f"New size {new_size} must be higher than the original size {lvol.size}"
1193
+ logger.error(msg)
1194
+ return False, msg
1186
1195
 
1187
1196
  if lvol.max_size < new_size:
1188
- logger.error(f"New size {new_size} must be smaller than the max size {lvol.max_size}")
1189
- return False
1197
+ msg = f"New size {new_size} must be smaller than the max size {lvol.max_size}"
1198
+ logger.error(msg)
1199
+ return False, msg
1190
1200
 
1191
1201
  if 0 < pool.lvol_max_size < new_size:
1192
- logger.error(f"Pool Max LVol size is: {utils.humanbytes(pool.lvol_max_size)}, LVol size: {utils.humanbytes(new_size)} must be below this limit")
1193
- return False
1202
+ msg = f"Pool Max LVol size is: {utils.humanbytes(pool.lvol_max_size)}, "\
1203
+ "LVol size: {utils.humanbytes(new_size)} must be below this limit"
1204
+ logger.error(msg)
1205
+ return False, msg
1194
1206
 
1195
1207
  if pool.pool_max_size > 0:
1196
1208
  total = pool_controller.get_pool_total_capacity(pool.get_id())
1197
1209
  if total + new_size > pool.pool_max_size:
1198
- logger.error( f"Invalid LVol size: {utils.humanbytes(new_size)} "
1199
- f"Pool max size has reached {utils.humanbytes(total+new_size)} of {utils.humanbytes(pool.pool_max_size)}")
1200
- return False
1210
+ msg =f"Invalid LVol size: {utils.humanbytes(new_size)}, Pool max size has reached {utils.humanbytes(total+new_size)} of {utils.humanbytes(pool.pool_max_size)}"
1211
+ logger.error(msg)
1212
+ return False, msg
1201
1213
 
1202
1214
  snode = db_controller.get_storage_node_by_id(lvol.node_id)
1203
1215
 
@@ -1209,13 +1221,13 @@ def resize_lvol(id, new_size):
1209
1221
  rpc_client = RPCClient(
1210
1222
  snode.mgmt_ip, snode.rpc_port, snode.rpc_username, snode.rpc_password)
1211
1223
 
1212
- error = False
1213
1224
  if lvol.ha_type == "single":
1214
1225
 
1215
1226
  ret = rpc_client.bdev_lvol_resize(f"{lvol.lvs_name}/{lvol.lvol_bdev}", size_in_mib)
1216
1227
  if not ret:
1217
- logger.error(f"Error resizing lvol on node: {snode.get_id()}")
1218
- error = True
1228
+ msg = f"Error resizing lvol on node: {snode.get_id()}"
1229
+ logger.error(msg)
1230
+ return False, msg
1219
1231
 
1220
1232
  else:
1221
1233
  primary_node = None
@@ -1229,7 +1241,7 @@ def resize_lvol(id, new_size):
1229
1241
  if sec_node.status == StorageNode.STATUS_DOWN:
1230
1242
  msg = f"Secondary node is in down status, can not resize lvol"
1231
1243
  logger.error(msg)
1232
- error = True
1244
+ return False, msg
1233
1245
 
1234
1246
  elif sec_node.status == StorageNode.STATUS_ONLINE:
1235
1247
  secondary_node = sec_node
@@ -1259,10 +1271,8 @@ def resize_lvol(id, new_size):
1259
1271
  # both primary and secondary are not online
1260
1272
  msg = f"Host nodes are not online"
1261
1273
  logger.error(msg)
1262
- error = True
1274
+ return False, msg
1263
1275
 
1264
- if error:
1265
- return False
1266
1276
 
1267
1277
  if primary_node:
1268
1278
  logger.info(f"Resizing LVol: {lvol.get_id()} on node: {primary_node.get_id()}")
@@ -1272,8 +1282,9 @@ def resize_lvol(id, new_size):
1272
1282
 
1273
1283
  ret = rpc_client.bdev_lvol_resize(f"{lvol.lvs_name}/{lvol.lvol_bdev}", size_in_mib)
1274
1284
  if not ret:
1275
- logger.error(f"Error resizing lvol on node: {primary_node.get_id()}")
1276
- error = True
1285
+ msg = f"Error resizing lvol on node: {primary_node.get_id()}"
1286
+ logger.error(msg)
1287
+ return False, msg
1277
1288
 
1278
1289
  if secondary_node:
1279
1290
  logger.info(f"Resizing LVol: {lvol.get_id()} on node: {secondary_node.get_id()}")
@@ -1285,18 +1296,17 @@ def resize_lvol(id, new_size):
1285
1296
 
1286
1297
  ret = sec_rpc_client.bdev_lvol_resize(f"{lvol.lvs_name}/{lvol.lvol_bdev}", size_in_mib)
1287
1298
  if not ret:
1288
- logger.error(f"Error resizing lvol on node: {sec_node.get_id()}")
1289
- error = True
1299
+ msg = f"Error resizing lvol on node: {sec_node.get_id()}"
1300
+ logger.error(msg)
1301
+ return False, msg
1290
1302
 
1303
+ lvol = db_controller.get_lvol_by_id(id)
1304
+ lvol.size = new_size
1305
+ lvol.write_to_db(db_controller.kv_store)
1306
+ logger.info("Done")
1307
+
1308
+ return True, None
1291
1309
 
1292
- if not error:
1293
- lvol = db_controller.get_lvol_by_id(id)
1294
- lvol.size = new_size
1295
- lvol.write_to_db(db_controller.kv_store)
1296
- logger.info("Done")
1297
- return True
1298
- else:
1299
- return False
1300
1310
 
1301
1311
 
1302
1312
  def set_read_only(id):
@@ -1,5 +1,5 @@
1
1
  SIMPLY_BLOCK_COMMAND_NAME=sbcli-dev
2
- SIMPLY_BLOCK_VERSION=17.2.1
2
+ SIMPLY_BLOCK_VERSION=17.2.2
3
3
 
4
4
  SIMPLY_BLOCK_DOCKER_IMAGE=public.ecr.aws/simply-block/simplyblock:main
5
5
  SIMPLY_BLOCK_SPDK_ULTRA_IMAGE=public.ecr.aws/simply-block/ultra:main-latest
@@ -259,8 +259,8 @@ def resize_lvol(uuid):
259
259
 
260
260
  new_size = core_utils.parse_size(cl_data['size'])
261
261
 
262
- ret = lvol_controller.resize_lvol(uuid, new_size)
263
- return utils.get_response(ret)
262
+ ret, error = lvol_controller.resize_lvol(uuid, new_size)
263
+ return utils.get_response(ret, error)
264
264
 
265
265
 
266
266
  @bp.route('/lvol/connect/<string:uuid>', methods=['GET'])
File without changes
File without changes
File without changes
File without changes
File without changes