sbcli-dev 17.4.0__tar.gz → 17.4.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 (160) hide show
  1. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/PKG-INFO +1 -1
  2. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/sbcli_dev.egg-info/PKG-INFO +1 -1
  3. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_cli/clibase.py +1 -1
  4. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/env_var +1 -1
  5. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/storage_node_ops.py +41 -11
  6. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/README.md +0 -0
  7. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/pyproject.toml +0 -0
  8. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/requirements.txt +0 -0
  9. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/sbcli_dev.egg-info/SOURCES.txt +0 -0
  10. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/sbcli_dev.egg-info/dependency_links.txt +0 -0
  11. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/sbcli_dev.egg-info/entry_points.txt +0 -0
  12. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/sbcli_dev.egg-info/requires.txt +0 -0
  13. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/sbcli_dev.egg-info/top_level.txt +0 -0
  14. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/setup.cfg +0 -0
  15. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/setup.py +0 -0
  16. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_cli/__init__.py +0 -0
  17. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_cli/cli.py +0 -0
  18. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_cli/main.py +0 -0
  19. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/__init__.py +0 -0
  20. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/cluster_ops.py +0 -0
  21. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/cnode_client.py +0 -0
  22. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/constants.py +0 -0
  23. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/__init__.py +0 -0
  24. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/caching_node_controller.py +0 -0
  25. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/cluster_events.py +0 -0
  26. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/device_controller.py +0 -0
  27. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/device_events.py +0 -0
  28. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/events_controller.py +0 -0
  29. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/health_controller.py +0 -0
  30. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/lvol_controller.py +0 -0
  31. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/lvol_events.py +0 -0
  32. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/mgmt_events.py +0 -0
  33. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/pool_controller.py +0 -0
  34. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/pool_events.py +0 -0
  35. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/snapshot_controller.py +0 -0
  36. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/snapshot_events.py +0 -0
  37. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/storage_events.py +0 -0
  38. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/tasks_controller.py +0 -0
  39. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/tasks_events.py +0 -0
  40. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/controllers/tcp_ports_events.py +0 -0
  41. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/db_controller.py +0 -0
  42. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/distr_controller.py +0 -0
  43. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/mgmt_node_ops.py +0 -0
  44. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/__init__.py +0 -0
  45. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/base_model.py +0 -0
  46. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/caching_node.py +0 -0
  47. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/cluster.py +0 -0
  48. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/deployer.py +0 -0
  49. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/events.py +0 -0
  50. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/hublvol.py +0 -0
  51. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/iface.py +0 -0
  52. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/job_schedule.py +0 -0
  53. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/lvol_model.py +0 -0
  54. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/mgmt_node.py +0 -0
  55. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/nvme_device.py +0 -0
  56. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/pool.py +0 -0
  57. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/port_stat.py +0 -0
  58. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/snapshot.py +0 -0
  59. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/stats.py +0 -0
  60. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/models/storage_node.py +0 -0
  61. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/pci_utils.py +0 -0
  62. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/rpc_client.py +0 -0
  63. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/__init__.py +0 -0
  64. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
  65. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
  66. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
  67. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/config_docker.sh +0 -0
  68. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/dashboard.yml +0 -0
  69. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
  70. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/dashboards/devices.json +0 -0
  71. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
  72. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
  73. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
  74. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/dashboards/pools.json +0 -0
  75. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/datasource.yml +0 -0
  76. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/db_config_double.sh +0 -0
  77. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/db_config_single.sh +0 -0
  78. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/deploy_fdb.sh +0 -0
  79. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/deploy_stack.sh +0 -0
  80. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
  81. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
  82. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/foundation.yml +0 -0
  83. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/haproxy.cfg +0 -0
  84. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/install_deps.sh +0 -0
  85. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/objstore.yml +0 -0
  86. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/prepare_fdb.sh +0 -0
  87. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/prometheus.yml.j2 +0 -0
  88. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/run_ssh.sh +0 -0
  89. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/set_db_config.sh +0 -0
  90. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
  91. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/__init__.py +0 -0
  92. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
  93. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/caching_node_monitor.py +0 -0
  94. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/cap_monitor.py +0 -0
  95. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
  96. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/device_monitor.py +0 -0
  97. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/health_check_service.py +0 -0
  98. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/install_service.sh +0 -0
  99. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/lvol_monitor.py +0 -0
  100. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/lvol_stat_collector.py +0 -0
  101. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/main_distr_event_collector.py +0 -0
  102. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
  103. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/new_device_discovery.py +0 -0
  104. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/remove_service.sh +0 -0
  105. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/service_template.service +0 -0
  106. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/spdk/__init__.py +0 -0
  107. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/spdk/client.py +0 -0
  108. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/spdk_http_proxy_server.py +0 -0
  109. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/spdk_stats_collector.py +0 -0
  110. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/storage_node_monitor.py +0 -0
  111. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/tasks_runner_failed_migration.py +0 -0
  112. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/tasks_runner_migration.py +0 -0
  113. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/tasks_runner_new_dev_migration.py +0 -0
  114. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
  115. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/services/tasks_runner_restart.py +0 -0
  116. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/shell_utils.py +0 -0
  117. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/snode_client.py +0 -0
  118. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/test/test_utils.py +0 -0
  119. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/utils.py +0 -0
  120. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_core/workers/cleanup_foundationdb.py +0 -0
  121. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/README.md +0 -0
  122. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/__init__.py +0 -0
  123. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/app.py +0 -0
  124. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/auth_middleware.py +0 -0
  125. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/__init__.py +0 -0
  126. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
  127. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
  128. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/node_api_basic.py +0 -0
  129. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
  130. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
  131. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/snode_ops.py +0 -0
  132. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
  133. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/swagger_ui_blueprint.py +0 -0
  134. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
  135. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
  136. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
  137. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/web_api_device.py +0 -0
  138. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
  139. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/web_api_metrics.py +0 -0
  140. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
  141. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/web_api_pool.py +0 -0
  142. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
  143. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
  144. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/node_utils.py +0 -0
  145. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/node_utils_k8s.py +0 -0
  146. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/node_webapp.py +0 -0
  147. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/requirements.txt +0 -0
  148. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/static/SimplyBlock-API.postman_collection.json +0 -0
  149. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/static/delete.py +0 -0
  150. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/static/deploy.py +0 -0
  151. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/static/deploy_cnode.yaml +0 -0
  152. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/static/deploy_spdk.yaml +0 -0
  153. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/static/is_up.py +0 -0
  154. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/static/list_deps.py +0 -0
  155. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/static/rpac.yaml +0 -0
  156. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/static/swagger.yaml +0 -0
  157. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/static/tst.py +0 -0
  158. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
  159. {sbcli_dev-17.4.0 → sbcli_dev-17.4.2}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +0 -0
  160. {sbcli_dev-17.4.0 → sbcli_dev-17.4.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.4.0
3
+ Version: 17.4.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.4.0
3
+ Version: 17.4.2
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -271,7 +271,7 @@ class CLIWrapperBase:
271
271
  return storage_ops.dump_lvstore(node_id)
272
272
 
273
273
  def storage_node__set(self, sub_command, args):
274
- return storage_ops.set(args.node_id, args.attr_name, args.attr_value)
274
+ return storage_ops.set_value(args.node_id, args.attr_name, args.attr_value)
275
275
 
276
276
  def cluster__deploy(self, sub_command, args):
277
277
  return self.cluster_deploy(args)
@@ -1,5 +1,5 @@
1
1
  SIMPLY_BLOCK_COMMAND_NAME=sbcli-dev
2
- SIMPLY_BLOCK_VERSION=17.4.0
2
+ SIMPLY_BLOCK_VERSION=17.4.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
@@ -906,8 +906,26 @@ def add_node(cluster_id, node_ip, iface_name, data_nics_list,
906
906
 
907
907
  poller_cpu_cores = []
908
908
 
909
- if not spdk_cpu_mask:
910
- spdk_cpu_mask = cores_config["cpu_mask"]
909
+ if spdk_cpu_mask:
910
+ pass
911
+ else:
912
+ total_spdk_cpu_mask = cores_config["cpu_mask"]
913
+ total_spdk_cores = utils.hexa_to_cpu_list(total_spdk_cpu_mask)
914
+ used_cores = []
915
+ for core in total_spdk_cores:
916
+ for node in db_controller.get_storage_nodes_by_cluster_id(cluster_id):
917
+ if node.api_endpoint == node_ip:
918
+ if core in utils.hexa_to_cpu_list(node.spdk_cpu_mask):
919
+ used_cores.append(core)
920
+ break
921
+
922
+ free_cores = list(set(total_spdk_cores) - set(used_cores))
923
+ if len(free_cores) >= spdk_cpu_count:
924
+ spdk_cpu_mask = utils.generate_mask(free_cores[:spdk_cpu_count])
925
+ else:
926
+ logger.error("No more CPU cores available")
927
+ return False
928
+
911
929
  spdk_cores = utils.hexa_to_cpu_list(spdk_cpu_mask)
912
930
  req_cpu_count = len(spdk_cores)
913
931
  if cpu_count < req_cpu_count:
@@ -998,6 +1016,14 @@ def add_node(cluster_id, node_ip, iface_name, data_nics_list,
998
1016
  f"Not enough memory for the provided max_lvo: {max_lvol}, max_snap: {max_snap}, max_prov: {max_prov}.. Exiting")
999
1017
  # return False
1000
1018
 
1019
+ if ssd_pcie:
1020
+ for ssd in ssd_pcie:
1021
+ for node in db_controller.get_storage_nodes_by_cluster_id(cluster_id):
1022
+ if node.api_endpoint == node_ip:
1023
+ if ssd in node.ssd_pcie:
1024
+ logger.error(f"SSD is being used by other node, ssd: {ssd}, node: {node.get_id()}")
1025
+ return False
1026
+
1001
1027
  logger.info("Joining docker swarm...")
1002
1028
  cluster_docker = utils.get_docker_client(cluster_id)
1003
1029
  cluster_ip = cluster_docker.info()["Swarm"]["NodeAddr"]
@@ -3047,14 +3073,18 @@ def get_sorted_ha_jms(current_node):
3047
3073
  if node.mgmt_ip == current_node.mgmt_ip:
3048
3074
  continue
3049
3075
  if node.jm_device and node.jm_device.status == JMDevice.STATUS_ONLINE:
3050
- jm_count[node.jm_device.get_id()] = 1 + jm_count.get(node.jm_device.get_id(), 0)
3051
- for rem_jm_device in node.remote_jm_devices:
3052
- if rem_jm_device.get_id() != current_node.jm_device.get_id():
3053
- try:
3054
- if db_controller.get_jm_device_by_id(rem_jm_device.get_id()).status == JMDevice.STATUS_ONLINE:
3055
- jm_count[rem_jm_device.get_id()] = 1 + jm_count.get(rem_jm_device.get_id(), 0)
3056
- except :
3057
- pass
3076
+ jm_count[node.jm_device.get_id()] = 1
3077
+
3078
+ for node in db_controller.get_storage_nodes_by_cluster_id(current_node.cluster_id):
3079
+ if (node.get_id() == current_node.get_id() or node.status != StorageNode.STATUS_ONLINE or
3080
+ node.is_secondary_node): # pass
3081
+ continue
3082
+ if node.mgmt_ip == current_node.mgmt_ip or not node.jm_ids:
3083
+ continue
3084
+ for rem_jm_id in node.jm_ids:
3085
+ if rem_jm_id in jm_count:
3086
+ jm_count[rem_jm_id] += 1
3087
+
3058
3088
  jm_count = dict(sorted(jm_count.items(), key=lambda x: x[1]))
3059
3089
  return list(jm_count.keys())[:3]
3060
3090
 
@@ -3446,7 +3476,7 @@ def dump_lvstore(node_id):
3446
3476
  return True
3447
3477
 
3448
3478
 
3449
- def set(node_id, attr, value):
3479
+ def set_value(node_id, attr, value):
3450
3480
  db_controller = DBController()
3451
3481
 
3452
3482
  snode = db_controller.get_storage_node_by_id(node_id)
File without changes
File without changes
File without changes
File without changes
File without changes