sbcli-pre 1.1.1__zip → 1.1.2__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.
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/PKG-INFO +1 -1
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/env_var +1 -1
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/sbcli_pre.egg-info/PKG-INFO +1 -1
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/tasks_runner_migration.py +3 -1
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/tasks_runner_restart.py +18 -17
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/README.md +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/pyproject.toml +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/sbcli_pre.egg-info/SOURCES.txt +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/sbcli_pre.egg-info/dependency_links.txt +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/sbcli_pre.egg-info/entry_points.txt +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/sbcli_pre.egg-info/requires.txt +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/sbcli_pre.egg-info/top_level.txt +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/setup.cfg +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/setup.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_cli/cli.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_cli/main.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/__init__.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/cluster_ops.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/cnode_client.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/compute_node_ops.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/constants.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/__init__.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/caching_node_controller.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/cluster_events.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/device_controller.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/device_events.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/events_controller.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/health_controller.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/lvol_controller.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/lvol_events.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/mgmt_events.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/pool_controller.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/pool_events.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/snapshot_controller.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/snapshot_events.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/storage_events.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/tasks_controller.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/controllers/tasks_events.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/distr_controller.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/kv_store.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/mgmt_node_ops.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/__init__.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/base_model.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/caching_node.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/cluster.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/compute_node.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/events.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/global_settings.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/iface.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/job_schedule.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/lvol_model.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/mgmt_node.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/nvme_device.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/pool.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/port_stat.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/snapshot.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/stats.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/models/storage_node.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/pci_utils.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/rpc_client.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/__init__.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/alerting/alert_resources.yaml +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/config_docker.sh +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/dashboards/devices.json +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/dashboards/pools.json +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/datasource.yml +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/db_config_double.sh +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/db_config_single.sh +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/deploy_stack.sh +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/haproxy.cfg +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/install_deps.sh +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/prometheus.yml +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/run_ssh.sh +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/set_db_config.sh +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/__init__.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/caching_node_monitor.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/cap_monitor.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/device_monitor.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/distr_event_collector.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/health_check_service.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/install_service.sh +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/log_agg_service.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/lvol_monitor.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/lvol_stat_collector.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/port_stat_collector.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/remove_service.sh +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/service_template.service +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/storage_node_monitor.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/shell_utils.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/snode_client.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/storage_node_ops.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/utils.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/__init__.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/app.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/auth_middleware.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/__init__.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/node_api_basic.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/snode_ops.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/web_api_device.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/web_api_pool.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/caching_node_app.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/caching_node_app_k8s.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/node_utils.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/node_webapp.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/snode_app.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/static/delete.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/static/deploy.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/static/deploy_cnode.yaml +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/static/deploy_spdk.yaml +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/static/is_up.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/static/list_deps.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/static/rpac.yaml +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/static/tst.py +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/templates/deploy_spdk.yaml.j2 +0 -0
- {sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_web/utils.py +0 -0
@@ -54,6 +54,8 @@ while True:
|
|
54
54
|
if task.function_name == JobSchedule.FN_DEV_MIG:
|
55
55
|
while task.status != JobSchedule.STATUS_DONE:
|
56
56
|
res = task_runner(task)
|
57
|
-
if res
|
57
|
+
if res:
|
58
|
+
tasks_events.task_updated(task)
|
59
|
+
else:
|
58
60
|
time.sleep(delay_seconds)
|
59
61
|
delay_seconds *= 2
|
@@ -81,15 +81,15 @@ def task_runner_device(task):
|
|
81
81
|
|
82
82
|
node = db_controller.get_storage_node_by_id(task.node_id)
|
83
83
|
if node.status != StorageNode.STATUS_ONLINE:
|
84
|
-
logger.error(f"Node is not online: {node.get_id()}
|
84
|
+
logger.error(f"Node is not online: {node.get_id()}, retry")
|
85
85
|
task.function_result = "Node is offline"
|
86
86
|
task.retry += 1
|
87
87
|
task.write_to_db(db_controller.kv_store)
|
88
88
|
return False
|
89
89
|
|
90
90
|
if device.status == NVMeDevice.STATUS_ONLINE and device.io_error is False:
|
91
|
-
logger.info(f"Device is online: {device.get_id()}
|
92
|
-
task.function_result = "
|
91
|
+
logger.info(f"Device is online: {device.get_id()}")
|
92
|
+
task.function_result = "Device is online"
|
93
93
|
task.status = JobSchedule.STATUS_DONE
|
94
94
|
task.write_to_db(db_controller.kv_store)
|
95
95
|
return True
|
@@ -106,17 +106,17 @@ 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
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
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
120
|
|
121
121
|
logger.info(f"Restarting device {device.get_id()}")
|
122
122
|
device_controller.restart_device(device.get_id(), force=True)
|
@@ -153,7 +153,7 @@ def task_runner_node(task):
|
|
153
153
|
# if _get_node_unavailable_devices_count(node.get_id()) == 0:
|
154
154
|
if node.status == StorageNode.STATUS_ONLINE:
|
155
155
|
logger.info(f"Node is online: {node.get_id()}, no restart needed")
|
156
|
-
task.function_result = "
|
156
|
+
task.function_result = "Node is online"
|
157
157
|
task.status = JobSchedule.STATUS_DONE
|
158
158
|
task.write_to_db(db_controller.kv_store)
|
159
159
|
return True
|
@@ -203,7 +203,8 @@ while True:
|
|
203
203
|
if task.function_name in [JobSchedule.FN_DEV_RESTART, JobSchedule.FN_NODE_RESTART]:
|
204
204
|
while task.status != JobSchedule.STATUS_DONE:
|
205
205
|
res = task_runner(task)
|
206
|
-
if res
|
206
|
+
if res:
|
207
|
+
tasks_events.task_updated(task)
|
208
|
+
else:
|
207
209
|
time.sleep(delay_seconds)
|
208
210
|
delay_seconds *= 2
|
209
|
-
tasks_events.task_updated(task)
|
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
|
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
|
{sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml
RENAMED
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
|
{sbcli_pre-1.1.1 → sbcli_pre-1.1.2}/simplyblock_core/services/capacity_and_stats_collector.py
RENAMED
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
|