sbcli-dev 3.8.44__zip → 3.8.46__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 (149) hide show
  1. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/PKG-INFO +1 -1
  2. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/env_var +1 -1
  3. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/sbcli_dev.egg-info/PKG-INFO +1 -1
  4. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/tasks_controller.py +12 -9
  5. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/tasks_runner_failed_migration.py +3 -9
  6. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/tasks_runner_migration.py +3 -9
  7. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/tasks_runner_new_dev_migration.py +3 -9
  8. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/storage_node_ops.py +99 -93
  9. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/README.md +0 -0
  10. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/pyproject.toml +0 -0
  11. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/sbcli_dev.egg-info/SOURCES.txt +0 -0
  12. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/sbcli_dev.egg-info/dependency_links.txt +0 -0
  13. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/sbcli_dev.egg-info/entry_points.txt +0 -0
  14. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/sbcli_dev.egg-info/requires.txt +0 -0
  15. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/sbcli_dev.egg-info/top_level.txt +0 -0
  16. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/setup.cfg +0 -0
  17. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/setup.py +0 -0
  18. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_cli/cli.py +0 -0
  19. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_cli/main.py +0 -0
  20. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/__init__.py +0 -0
  21. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/cluster_ops.py +0 -0
  22. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/cnode_client.py +0 -0
  23. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/compute_node_ops.py +0 -0
  24. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/constants.py +0 -0
  25. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/__init__.py +0 -0
  26. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/caching_node_controller.py +0 -0
  27. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/cluster_events.py +0 -0
  28. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/device_controller.py +0 -0
  29. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/device_events.py +0 -0
  30. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/events_controller.py +0 -0
  31. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/health_controller.py +0 -0
  32. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/lvol_controller.py +0 -0
  33. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/lvol_events.py +0 -0
  34. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/mgmt_events.py +0 -0
  35. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/pool_controller.py +0 -0
  36. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/pool_events.py +0 -0
  37. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/snapshot_controller.py +0 -0
  38. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/snapshot_events.py +0 -0
  39. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/storage_events.py +0 -0
  40. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/tasks_events.py +0 -0
  41. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/distr_controller.py +0 -0
  42. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/kv_store.py +0 -0
  43. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/mgmt_node_ops.py +0 -0
  44. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/__init__.py +0 -0
  45. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/base_model.py +0 -0
  46. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/caching_node.py +0 -0
  47. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/cluster.py +0 -0
  48. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/compute_node.py +0 -0
  49. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/deployer.py +0 -0
  50. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/events.py +0 -0
  51. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/global_settings.py +0 -0
  52. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/iface.py +0 -0
  53. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/job_schedule.py +0 -0
  54. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/lvol_model.py +0 -0
  55. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/mgmt_node.py +0 -0
  56. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/nvme_device.py +0 -0
  57. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/pool.py +0 -0
  58. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/port_stat.py +0 -0
  59. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/snapshot.py +0 -0
  60. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/stats.py +0 -0
  61. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/storage_node.py +0 -0
  62. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/pci_utils.py +0 -0
  63. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/rpc_client.py +0 -0
  64. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/__init__.py +0 -0
  65. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
  66. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
  67. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
  68. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/config_docker.sh +0 -0
  69. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboard.yml +0 -0
  70. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
  71. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboards/devices.json +0 -0
  72. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
  73. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
  74. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
  75. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboards/pools.json +0 -0
  76. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/datasource.yml +0 -0
  77. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/db_config_double.sh +0 -0
  78. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/db_config_single.sh +0 -0
  79. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/deploy_stack.sh +0 -0
  80. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
  81. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
  82. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/haproxy.cfg +0 -0
  83. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/install_deps.sh +0 -0
  84. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/objstore.yml +0 -0
  85. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/prometheus.yml +0 -0
  86. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/run_ssh.sh +0 -0
  87. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/set_db_config.sh +0 -0
  88. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
  89. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/__init__.py +0 -0
  90. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
  91. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/caching_node_monitor.py +0 -0
  92. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/cap_monitor.py +0 -0
  93. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
  94. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/device_monitor.py +0 -0
  95. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/distr_event_collector.py +0 -0
  96. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/health_check_service.py +0 -0
  97. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/install_service.sh +0 -0
  98. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/log_agg_service.py +0 -0
  99. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/lvol_monitor.py +0 -0
  100. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/lvol_stat_collector.py +0 -0
  101. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/main_distr_event_collector.py +0 -0
  102. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
  103. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/new_device_discovery.py +0 -0
  104. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/port_stat_collector.py +0 -0
  105. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/remove_service.sh +0 -0
  106. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/service_template.service +0 -0
  107. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/storage_node_monitor.py +0 -0
  108. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
  109. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/tasks_runner_restart.py +0 -0
  110. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/shell_utils.py +0 -0
  111. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/snode_client.py +0 -0
  112. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/utils.py +0 -0
  113. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/__init__.py +0 -0
  114. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/app.py +0 -0
  115. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/auth_middleware.py +0 -0
  116. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/__init__.py +0 -0
  117. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
  118. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
  119. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/node_api_basic.py +0 -0
  120. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
  121. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
  122. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/snode_ops.py +0 -0
  123. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
  124. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
  125. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
  126. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
  127. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_device.py +0 -0
  128. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
  129. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
  130. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_pool.py +0 -0
  131. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
  132. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
  133. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/caching_node_app.py +0 -0
  134. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/caching_node_app_k8s.py +0 -0
  135. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/node_utils.py +0 -0
  136. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/node_webapp.py +0 -0
  137. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/snode_app.py +0 -0
  138. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/snode_app_k8s.py +0 -0
  139. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/delete.py +0 -0
  140. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/deploy.py +0 -0
  141. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/deploy_cnode.yaml +0 -0
  142. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/deploy_spdk.yaml +0 -0
  143. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/is_up.py +0 -0
  144. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/list_deps.py +0 -0
  145. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/rpac.yaml +0 -0
  146. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/tst.py +0 -0
  147. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
  148. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +0 -0
  149. {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sbcli-dev
3
- Version: 3.8.44
3
+ Version: 3.8.46
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-dev
2
- SIMPLY_BLOCK_VERSION=3.8.44
2
+ SIMPLY_BLOCK_VERSION=3.8.46
3
3
 
4
4
 
5
5
  SIMPLY_BLOCK_DOCKER_IMAGE=simplyblock/simplyblock:main
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sbcli-dev
3
- Version: 3.8.44
3
+ Version: 3.8.46
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -56,9 +56,10 @@ def _add_task(function_name, cluster_id, node_id, device_id,
56
56
  def add_device_mig_task(device_id):
57
57
  device = db_controller.get_storage_devices(device_id)
58
58
  for node in db_controller.get_storage_nodes_by_cluster_id(device.cluster_id):
59
- for lvol_id in node.lvols:
60
- _add_task(JobSchedule.FN_DEV_MIG, device.cluster_id, node.get_id(), device.get_id(),
61
- max_retry=0, function_params={'lvol_id': lvol_id})
59
+ for bdev in node.lvstore_stack:
60
+ if bdev['type'] == "bdev_distr":
61
+ _add_task(JobSchedule.FN_DEV_MIG, device.cluster_id, node.get_id(), device.get_id(),
62
+ max_retry=0, function_params={'distr_name': bdev['name']})
62
63
  return True
63
64
 
64
65
 
@@ -137,18 +138,20 @@ def get_active_node_mig_task(cluster_id, node_id):
137
138
  def add_device_failed_mig_task(device_id):
138
139
  device = db_controller.get_storage_devices(device_id)
139
140
  for node in db_controller.get_storage_nodes_by_cluster_id(device.cluster_id):
140
- for lvol_id in node.lvols:
141
- _add_task(JobSchedule.FN_FAILED_DEV_MIG, device.cluster_id, node.get_id(), device.get_id(),
142
- max_retry=0, function_params={'lvol_id': lvol_id})
141
+ for bdev in node.lvstore_stack:
142
+ if bdev['type'] == "bdev_distr":
143
+ _add_task(JobSchedule.FN_FAILED_DEV_MIG, device.cluster_id, node.get_id(), device.get_id(),
144
+ max_retry=0, function_params={'distr_name': bdev['name']})
143
145
  return True
144
146
 
145
147
 
146
148
  def add_new_device_mig_task(device_id):
147
149
  device = db_controller.get_storage_devices(device_id)
148
150
  for node in db_controller.get_storage_nodes_by_cluster_id(device.cluster_id):
149
- for lvol_id in node.lvols:
150
- _add_task(JobSchedule.FN_NEW_DEV_MIG, device.cluster_id, node.get_id(), device.get_id(),
151
- max_retry=0, function_params={'lvol_id': lvol_id})
151
+ for bdev in node.lvstore_stack:
152
+ if bdev['type'] == "bdev_distr":
153
+ _add_task(JobSchedule.FN_NEW_DEV_MIG, device.cluster_id, node.get_id(), device.get_id(),
154
+ max_retry=0, function_params={'distr_name': bdev['name']})
152
155
  return True
153
156
 
154
157
 
@@ -42,13 +42,7 @@ def task_runner(task):
42
42
 
43
43
  if "migration" not in task.function_params:
44
44
  device = db_controller.get_storage_devices(task.device_id)
45
- lvol = db_controller.get_lvol_by_id(task.function_params["lvol_id"])
46
-
47
- if not lvol:
48
- task.status = JobSchedule.STATUS_DONE
49
- task.function_result = "LVol not found"
50
- task.write_to_db(db_controller.kv_store)
51
- return True
45
+ distr_name = task.function_params["distr_name"]
52
46
 
53
47
  if not device:
54
48
  task.status = JobSchedule.STATUS_DONE
@@ -56,7 +50,7 @@ def task_runner(task):
56
50
  task.write_to_db(db_controller.kv_store)
57
51
  return True
58
52
 
59
- rsp = rpc_client.distr_migration_failure_start(lvol.base_bdev, device.cluster_device_order)
53
+ rsp = rpc_client.distr_migration_failure_start(distr_name, device.cluster_device_order)
60
54
  if not rsp:
61
55
  logger.error(f"Failed to start device migration task, storage_ID: {device.cluster_device_order}")
62
56
  task.function_result = "Failed to start device migration task"
@@ -66,7 +60,7 @@ def task_runner(task):
66
60
 
67
61
  task.function_params = {
68
62
  "migration": {
69
- "name": lvol.base_bdev}
63
+ "name": distr_name}
70
64
  }
71
65
  task.write_to_db(db_controller.kv_store)
72
66
  time.sleep(3)
@@ -53,13 +53,7 @@ def task_runner(task):
53
53
  return False
54
54
 
55
55
  device = db_controller.get_storage_devices(task.device_id)
56
- lvol = db_controller.get_lvol_by_id(task.function_params["lvol_id"])
57
-
58
- if not lvol:
59
- task.status = JobSchedule.STATUS_DONE
60
- task.function_result = "LVol not found"
61
- task.write_to_db(db_controller.kv_store)
62
- return True
56
+ distr_name = task.function_params["distr_name"]
63
57
 
64
58
  if not device:
65
59
  task.status = JobSchedule.STATUS_DONE
@@ -67,7 +61,7 @@ def task_runner(task):
67
61
  task.write_to_db(db_controller.kv_store)
68
62
  return True
69
63
 
70
- rsp = rpc_client.distr_migration_to_primary_start(device.cluster_device_order, lvol.base_bdev)
64
+ rsp = rpc_client.distr_migration_to_primary_start(device.cluster_device_order, distr_name)
71
65
  if not rsp:
72
66
  logger.error(f"Failed to start device migration task, storage_ID: {device.cluster_device_order}")
73
67
  task.function_result = "Failed to start device migration task"
@@ -75,7 +69,7 @@ def task_runner(task):
75
69
  task.write_to_db(db_controller.kv_store)
76
70
  return False
77
71
  task.function_params['migration'] = {
78
- "name": lvol.base_bdev}
72
+ "name": distr_name}
79
73
  task.write_to_db(db_controller.kv_store)
80
74
  time.sleep(3)
81
75
 
@@ -56,13 +56,7 @@ def task_runner(task):
56
56
  return False
57
57
 
58
58
  device = db_controller.get_storage_devices(task.device_id)
59
- lvol = db_controller.get_lvol_by_id(task.function_params["lvol_id"])
60
-
61
- if not lvol:
62
- task.status = JobSchedule.STATUS_DONE
63
- task.function_result = "LVol not found"
64
- task.write_to_db(db_controller.kv_store)
65
- return True
59
+ distr_name = task.function_params["distr_name"]
66
60
 
67
61
  if not device:
68
62
  task.status = JobSchedule.STATUS_DONE
@@ -70,7 +64,7 @@ def task_runner(task):
70
64
  task.write_to_db(db_controller.kv_store)
71
65
  return True
72
66
 
73
- rsp = rpc_client.distr_migration_expansion_start(lvol.base_bdev)
67
+ rsp = rpc_client.distr_migration_expansion_start(distr_name)
74
68
  if not rsp:
75
69
  logger.error(f"Failed to start device migration task, storage_ID: {device.cluster_device_order}")
76
70
  task.function_result = "Failed to start device migration task"
@@ -79,7 +73,7 @@ def task_runner(task):
79
73
  return False
80
74
 
81
75
  task.function_params['migration'] = {
82
- "name": lvol.base_bdev
76
+ "name": distr_name
83
77
  }
84
78
  task.write_to_db(db_controller.kv_store)
85
79
  time.sleep(3)
@@ -286,40 +286,42 @@ def _create_jm_stack_on_raid(rpc_client, jm_nvme_bdevs, snode, after_restart):
286
286
  logger.error(f"Failed to create {jm_bdev}")
287
287
  return False
288
288
 
289
-
290
289
  alceml_id = str(uuid.uuid4())
291
- # add pass through
292
- pt_name = f"{jm_bdev}_PT"
293
- ret = rpc_client.bdev_PT_NoExcl_create(pt_name, jm_bdev)
294
- if not ret:
295
- logger.error(f"Failed to create pt noexcl bdev: {pt_name}")
296
- return False
297
-
298
- subsystem_nqn = snode.subsystem + ":dev:" + jm_bdev
299
- logger.info("creating subsystem %s", subsystem_nqn)
300
- ret = rpc_client.subsystem_create(subsystem_nqn, 'sbcli-cn', jm_bdev)
301
- IP = None
302
- for iface in snode.data_nics:
303
- if iface.ip4_address:
304
- tr_type = iface.get_transport_type()
305
- ret = rpc_client.transport_list()
306
- found = False
307
- if ret:
308
- for ty in ret:
309
- if ty['trtype'] == tr_type:
310
- found = True
311
- if found is False:
312
- ret = rpc_client.transport_create(tr_type)
313
- logger.info("adding listener for %s on IP %s" % (subsystem_nqn, iface.ip4_address))
314
- ret = rpc_client.listeners_create(subsystem_nqn, tr_type, iface.ip4_address, "4420")
315
- IP = iface.ip4_address
316
- break
317
- logger.info(f"add {pt_name} to subsystem")
318
- ret = rpc_client.nvmf_subsystem_add_ns(subsystem_nqn, pt_name)
319
- if not ret:
320
- logger.error(f"Failed to add: {pt_name} to the subsystem: {subsystem_nqn}")
321
- return False
290
+ pt_name = ""
291
+ subsystem_nqn = ""
292
+ IP = ""
293
+ if snode.enable_ha_jm:
294
+ # add pass through
295
+ pt_name = f"{jm_bdev}_PT"
296
+ ret = rpc_client.bdev_PT_NoExcl_create(pt_name, jm_bdev)
297
+ if not ret:
298
+ logger.error(f"Failed to create pt noexcl bdev: {pt_name}")
299
+ return False
322
300
 
301
+ subsystem_nqn = snode.subsystem + ":dev:" + jm_bdev
302
+ logger.info("creating subsystem %s", subsystem_nqn)
303
+ ret = rpc_client.subsystem_create(subsystem_nqn, 'sbcli-cn', jm_bdev)
304
+ IP = None
305
+ for iface in snode.data_nics:
306
+ if iface.ip4_address:
307
+ tr_type = iface.get_transport_type()
308
+ ret = rpc_client.transport_list()
309
+ found = False
310
+ if ret:
311
+ for ty in ret:
312
+ if ty['trtype'] == tr_type:
313
+ found = True
314
+ if found is False:
315
+ ret = rpc_client.transport_create(tr_type)
316
+ logger.info("adding listener for %s on IP %s" % (subsystem_nqn, iface.ip4_address))
317
+ ret = rpc_client.listeners_create(subsystem_nqn, tr_type, iface.ip4_address, "4420")
318
+ IP = iface.ip4_address
319
+ break
320
+ logger.info(f"add {pt_name} to subsystem")
321
+ ret = rpc_client.nvmf_subsystem_add_ns(subsystem_nqn, pt_name)
322
+ if not ret:
323
+ logger.error(f"Failed to add: {pt_name} to the subsystem: {subsystem_nqn}")
324
+ return False
323
325
 
324
326
  ret = rpc_client.get_bdevs(raid_bdev)
325
327
 
@@ -380,38 +382,41 @@ def _create_jm_stack_on_device(rpc_client, nvme, snode, after_restart):
380
382
  logger.error(f"Failed to create {jm_bdev}")
381
383
  return False
382
384
 
383
- # add pass through
384
- pt_name = f"{jm_bdev}_PT"
385
- ret = rpc_client.bdev_PT_NoExcl_create(pt_name, jm_bdev)
386
- if not ret:
387
- logger.error(f"Failed to create pt noexcl bdev: {pt_name}")
388
- return False
389
-
390
- subsystem_nqn = snode.subsystem + ":dev:" + jm_bdev
391
- logger.info("creating subsystem %s", subsystem_nqn)
392
- ret = rpc_client.subsystem_create(subsystem_nqn, 'sbcli-cn', jm_bdev)
393
- IP = None
394
- for iface in snode.data_nics:
395
- if iface.ip4_address:
396
- tr_type = iface.get_transport_type()
397
- ret = rpc_client.transport_list()
398
- found = False
399
- if ret:
400
- for ty in ret:
401
- if ty['trtype'] == tr_type:
402
- found = True
403
- if found is False:
404
- ret = rpc_client.transport_create(tr_type)
405
- logger.info("adding listener for %s on IP %s" % (subsystem_nqn, iface.ip4_address))
406
- ret = rpc_client.listeners_create(subsystem_nqn, tr_type, iface.ip4_address, "4420")
407
- IP = iface.ip4_address
408
- break
409
- logger.info(f"add {pt_name} to subsystem")
410
- ret = rpc_client.nvmf_subsystem_add_ns(subsystem_nqn, pt_name)
411
- if not ret:
412
- logger.error(f"Failed to add: {pt_name} to the subsystem: {subsystem_nqn}")
413
- return False
385
+ pt_name = ""
386
+ subsystem_nqn = ""
387
+ IP = ""
388
+ if snode.enable_ha_jm:
389
+ # add pass through
390
+ pt_name = f"{jm_bdev}_PT"
391
+ ret = rpc_client.bdev_PT_NoExcl_create(pt_name, jm_bdev)
392
+ if not ret:
393
+ logger.error(f"Failed to create pt noexcl bdev: {pt_name}")
394
+ return False
414
395
 
396
+ subsystem_nqn = snode.subsystem + ":dev:" + jm_bdev
397
+ logger.info("creating subsystem %s", subsystem_nqn)
398
+ ret = rpc_client.subsystem_create(subsystem_nqn, 'sbcli-cn', jm_bdev)
399
+ IP = None
400
+ for iface in snode.data_nics:
401
+ if iface.ip4_address:
402
+ tr_type = iface.get_transport_type()
403
+ ret = rpc_client.transport_list()
404
+ found = False
405
+ if ret:
406
+ for ty in ret:
407
+ if ty['trtype'] == tr_type:
408
+ found = True
409
+ if found is False:
410
+ ret = rpc_client.transport_create(tr_type)
411
+ logger.info("adding listener for %s on IP %s" % (subsystem_nqn, iface.ip4_address))
412
+ ret = rpc_client.listeners_create(subsystem_nqn, tr_type, iface.ip4_address, "4420")
413
+ IP = iface.ip4_address
414
+ break
415
+ logger.info(f"add {pt_name} to subsystem")
416
+ ret = rpc_client.nvmf_subsystem_add_ns(subsystem_nqn, pt_name)
417
+ if not ret:
418
+ logger.error(f"Failed to add: {pt_name} to the subsystem: {subsystem_nqn}")
419
+ return False
415
420
 
416
421
  return JMDevice({
417
422
  'uuid': alceml_id,
@@ -701,37 +706,38 @@ def _prepare_cluster_devices_on_restart(snode):
701
706
  logger.error(f"Failed to create {jm_bdev}")
702
707
  return False
703
708
 
704
- # add pass through
705
- pt_name = f"{jm_bdev}_PT"
706
- ret = rpc_client.bdev_PT_NoExcl_create(pt_name, jm_bdev)
707
- if not ret:
708
- logger.error(f"Failed to create pt noexcl bdev: {pt_name}")
709
- return False
709
+ if snode.enable_ha_jm:
710
+ # add pass through
711
+ pt_name = f"{jm_bdev}_PT"
712
+ ret = rpc_client.bdev_PT_NoExcl_create(pt_name, jm_bdev)
713
+ if not ret:
714
+ logger.error(f"Failed to create pt noexcl bdev: {pt_name}")
715
+ return False
710
716
 
711
- subsystem_nqn = snode.subsystem + ":dev:" + jm_bdev
712
- logger.info("creating subsystem %s", subsystem_nqn)
713
- ret = rpc_client.subsystem_create(subsystem_nqn, 'sbcli-cn', jm_bdev)
714
- IP = None
715
- for iface in snode.data_nics:
716
- if iface.ip4_address:
717
- tr_type = iface.get_transport_type()
718
- ret = rpc_client.transport_list()
719
- found = False
720
- if ret:
721
- for ty in ret:
722
- if ty['trtype'] == tr_type:
723
- found = True
724
- if found is False:
725
- ret = rpc_client.transport_create(tr_type)
726
- logger.info("adding listener for %s on IP %s" % (subsystem_nqn, iface.ip4_address))
727
- ret = rpc_client.listeners_create(subsystem_nqn, tr_type, iface.ip4_address, "4420")
728
- IP = iface.ip4_address
729
- break
730
- logger.info(f"add {pt_name} to subsystem")
731
- ret = rpc_client.nvmf_subsystem_add_ns(subsystem_nqn, pt_name)
732
- if not ret:
733
- logger.error(f"Failed to add: {pt_name} to the subsystem: {subsystem_nqn}")
734
- return False
717
+ subsystem_nqn = snode.subsystem + ":dev:" + jm_bdev
718
+ logger.info("creating subsystem %s", subsystem_nqn)
719
+ ret = rpc_client.subsystem_create(subsystem_nqn, 'sbcli-cn', jm_bdev)
720
+ IP = None
721
+ for iface in snode.data_nics:
722
+ if iface.ip4_address:
723
+ tr_type = iface.get_transport_type()
724
+ ret = rpc_client.transport_list()
725
+ found = False
726
+ if ret:
727
+ for ty in ret:
728
+ if ty['trtype'] == tr_type:
729
+ found = True
730
+ if found is False:
731
+ ret = rpc_client.transport_create(tr_type)
732
+ logger.info("adding listener for %s on IP %s" % (subsystem_nqn, iface.ip4_address))
733
+ ret = rpc_client.listeners_create(subsystem_nqn, tr_type, iface.ip4_address, "4420")
734
+ IP = iface.ip4_address
735
+ break
736
+ logger.info(f"add {pt_name} to subsystem")
737
+ ret = rpc_client.nvmf_subsystem_add_ns(subsystem_nqn, pt_name)
738
+ if not ret:
739
+ logger.error(f"Failed to add: {pt_name} to the subsystem: {subsystem_nqn}")
740
+ return False
735
741
 
736
742
  return True
737
743
 
File without changes
File without changes
File without changes
File without changes