sbcli-down 0.0.1__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- sbcli_down-0.0.1/PKG-INFO +84 -0
- sbcli_down-0.0.1/README.md +49 -0
- sbcli_down-0.0.1/pyproject.toml +3 -0
- sbcli_down-0.0.1/requirements.txt +19 -0
- sbcli_down-0.0.1/sbcli_down.egg-info/PKG-INFO +84 -0
- sbcli_down-0.0.1/sbcli_down.egg-info/SOURCES.txt +155 -0
- sbcli_down-0.0.1/sbcli_down.egg-info/dependency_links.txt +1 -0
- sbcli_down-0.0.1/sbcli_down.egg-info/entry_points.txt +2 -0
- sbcli_down-0.0.1/sbcli_down.egg-info/requires.txt +19 -0
- sbcli_down-0.0.1/sbcli_down.egg-info/top_level.txt +3 -0
- sbcli_down-0.0.1/setup.cfg +4 -0
- sbcli_down-0.0.1/setup.py +99 -0
- sbcli_down-0.0.1/simplyblock_cli/__init__.py +0 -0
- sbcli_down-0.0.1/simplyblock_cli/cli.py +1437 -0
- sbcli_down-0.0.1/simplyblock_cli/main.py +15 -0
- sbcli_down-0.0.1/simplyblock_core/__init__.py +0 -0
- sbcli_down-0.0.1/simplyblock_core/cluster_ops.py +1198 -0
- sbcli_down-0.0.1/simplyblock_core/cnode_client.py +124 -0
- sbcli_down-0.0.1/simplyblock_core/constants.py +129 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/__init__.py +0 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/caching_node_controller.py +801 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/cluster_events.py +71 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/device_controller.py +949 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/device_events.py +45 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/events_controller.py +120 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/health_controller.py +568 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/lvol_controller.py +1557 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/lvol_events.py +45 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/mgmt_events.py +40 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/pool_controller.py +347 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/pool_events.py +31 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/snapshot_controller.py +478 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/snapshot_events.py +33 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/storage_events.py +54 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/tasks_controller.py +260 -0
- sbcli_down-0.0.1/simplyblock_core/controllers/tasks_events.py +33 -0
- sbcli_down-0.0.1/simplyblock_core/db_controller.py +311 -0
- sbcli_down-0.0.1/simplyblock_core/distr_controller.py +334 -0
- sbcli_down-0.0.1/simplyblock_core/env_var +5 -0
- sbcli_down-0.0.1/simplyblock_core/mgmt_node_ops.py +206 -0
- sbcli_down-0.0.1/simplyblock_core/models/__init__.py +0 -0
- sbcli_down-0.0.1/simplyblock_core/models/base_model.py +194 -0
- sbcli_down-0.0.1/simplyblock_core/models/caching_node.py +56 -0
- sbcli_down-0.0.1/simplyblock_core/models/cluster.py +69 -0
- sbcli_down-0.0.1/simplyblock_core/models/deployer.py +56 -0
- sbcli_down-0.0.1/simplyblock_core/models/events.py +37 -0
- sbcli_down-0.0.1/simplyblock_core/models/iface.py +18 -0
- sbcli_down-0.0.1/simplyblock_core/models/job_schedule.py +39 -0
- sbcli_down-0.0.1/simplyblock_core/models/lvol_model.py +62 -0
- sbcli_down-0.0.1/simplyblock_core/models/mgmt_node.py +12 -0
- sbcli_down-0.0.1/simplyblock_core/models/nvme_device.py +71 -0
- sbcli_down-0.0.1/simplyblock_core/models/pool.py +33 -0
- sbcli_down-0.0.1/simplyblock_core/models/port_stat.py +23 -0
- sbcli_down-0.0.1/simplyblock_core/models/snapshot.py +23 -0
- sbcli_down-0.0.1/simplyblock_core/models/stats.py +109 -0
- sbcli_down-0.0.1/simplyblock_core/models/storage_node.py +88 -0
- sbcli_down-0.0.1/simplyblock_core/pci_utils.py +28 -0
- sbcli_down-0.0.1/simplyblock_core/rpc_client.py +987 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/__init__.py +63 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +116 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/alerting/alert_rules.yaml +426 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/clean_local_storage_deploy.sh +13 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/config_docker.sh +28 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/dashboard.yml +12 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/dashboards/cluster.json +2356 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/dashboards/devices.json +2433 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/dashboards/lvols.json +2529 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/dashboards/node-exporter.json +23743 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/dashboards/nodes.json +2522 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/dashboards/pools.json +2399 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/datasource.yml +20 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/db_config_double.sh +3 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/db_config_single.sh +2 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/deploy_fdb.sh +7 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/deploy_stack.sh +44 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +235 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/docker-compose-swarm.yml +338 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/foundation.yml +40 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/haproxy.cfg +89 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/install_deps.sh +39 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/objstore.yml +3 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/prepare_fdb.sh +12 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/prometheus.yml +16 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/run_ssh.sh +2 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/set_db_config.sh +3 -0
- sbcli_down-0.0.1/simplyblock_core/scripts/stack_deploy_wait.sh +182 -0
- sbcli_down-0.0.1/simplyblock_core/services/__init__.py +125 -0
- sbcli_down-0.0.1/simplyblock_core/services/cached_lvol_stat_collector.py +88 -0
- sbcli_down-0.0.1/simplyblock_core/services/caching_node_monitor.py +86 -0
- sbcli_down-0.0.1/simplyblock_core/services/cap_monitor.py +54 -0
- sbcli_down-0.0.1/simplyblock_core/services/capacity_and_stats_collector.py +194 -0
- sbcli_down-0.0.1/simplyblock_core/services/device_monitor.py +43 -0
- sbcli_down-0.0.1/simplyblock_core/services/health_check_service.py +335 -0
- sbcli_down-0.0.1/simplyblock_core/services/install_service.sh +34 -0
- sbcli_down-0.0.1/simplyblock_core/services/log_agg_service.py +66 -0
- sbcli_down-0.0.1/simplyblock_core/services/lvol_monitor.py +76 -0
- sbcli_down-0.0.1/simplyblock_core/services/lvol_stat_collector.py +234 -0
- sbcli_down-0.0.1/simplyblock_core/services/main_distr_event_collector.py +226 -0
- sbcli_down-0.0.1/simplyblock_core/services/mgmt_node_monitor.py +86 -0
- sbcli_down-0.0.1/simplyblock_core/services/new_device_discovery.py +54 -0
- sbcli_down-0.0.1/simplyblock_core/services/port_stat_collector.py +63 -0
- sbcli_down-0.0.1/simplyblock_core/services/remove_service.sh +7 -0
- sbcli_down-0.0.1/simplyblock_core/services/service_template.service +16 -0
- sbcli_down-0.0.1/simplyblock_core/services/spdk/__init__.py +0 -0
- sbcli_down-0.0.1/simplyblock_core/services/spdk/client.py +281 -0
- sbcli_down-0.0.1/simplyblock_core/services/spdk_http_proxy_server.py +168 -0
- sbcli_down-0.0.1/simplyblock_core/services/spdk_stats_collector.py +37 -0
- sbcli_down-0.0.1/simplyblock_core/services/storage_node_monitor.py +288 -0
- sbcli_down-0.0.1/simplyblock_core/services/tasks_runner_failed_migration.py +158 -0
- sbcli_down-0.0.1/simplyblock_core/services/tasks_runner_migration.py +145 -0
- sbcli_down-0.0.1/simplyblock_core/services/tasks_runner_new_dev_migration.py +168 -0
- sbcli_down-0.0.1/simplyblock_core/services/tasks_runner_node_add.py +60 -0
- sbcli_down-0.0.1/simplyblock_core/services/tasks_runner_restart.py +242 -0
- sbcli_down-0.0.1/simplyblock_core/shell_utils.py +9 -0
- sbcli_down-0.0.1/simplyblock_core/snode_client.py +148 -0
- sbcli_down-0.0.1/simplyblock_core/storage_node_ops.py +3372 -0
- sbcli_down-0.0.1/simplyblock_core/utils.py +735 -0
- sbcli_down-0.0.1/simplyblock_core/workers/cleanup_foundationdb.py +126 -0
- sbcli_down-0.0.1/simplyblock_web/README.md +999 -0
- sbcli_down-0.0.1/simplyblock_web/__init__.py +0 -0
- sbcli_down-0.0.1/simplyblock_web/app.py +58 -0
- sbcli_down-0.0.1/simplyblock_web/auth_middleware.py +51 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/__init__.py +0 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/caching_node_ops.py +470 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/caching_node_ops_k8s.py +352 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/node_api_basic.py +110 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/node_api_caching_docker.py +173 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/node_api_caching_ks.py +163 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/snode_ops.py +510 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/snode_ops_k8s.py +458 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/web_api_caching_node.py +179 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/web_api_cluster.py +183 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/web_api_deployer.py +421 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/web_api_device.py +103 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/web_api_lvol.py +306 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/web_api_mgmt_node.py +37 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/web_api_pool.py +215 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/web_api_snapshot.py +68 -0
- sbcli_down-0.0.1/simplyblock_web/blueprints/web_api_storage_node.py +299 -0
- sbcli_down-0.0.1/simplyblock_web/caching_node_app.py +33 -0
- sbcli_down-0.0.1/simplyblock_web/caching_node_app_k8s.py +33 -0
- sbcli_down-0.0.1/simplyblock_web/node_utils.py +219 -0
- sbcli_down-0.0.1/simplyblock_web/node_webapp.py +56 -0
- sbcli_down-0.0.1/simplyblock_web/requirements.txt +8 -0
- sbcli_down-0.0.1/simplyblock_web/snode_app.py +33 -0
- sbcli_down-0.0.1/simplyblock_web/snode_app_k8s.py +32 -0
- sbcli_down-0.0.1/simplyblock_web/static/delete.py +36 -0
- sbcli_down-0.0.1/simplyblock_web/static/deploy.py +50 -0
- sbcli_down-0.0.1/simplyblock_web/static/deploy_cnode.yaml +22 -0
- sbcli_down-0.0.1/simplyblock_web/static/deploy_spdk.yaml +60 -0
- sbcli_down-0.0.1/simplyblock_web/static/is_up.py +17 -0
- sbcli_down-0.0.1/simplyblock_web/static/list_deps.py +16 -0
- sbcli_down-0.0.1/simplyblock_web/static/rpac.yaml +26 -0
- sbcli_down-0.0.1/simplyblock_web/static/tst.py +11 -0
- sbcli_down-0.0.1/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +109 -0
- sbcli_down-0.0.1/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +161 -0
- sbcli_down-0.0.1/simplyblock_web/utils.py +107 -0
@@ -0,0 +1,84 @@
|
|
1
|
+
Metadata-Version: 2.2
|
2
|
+
Name: sbcli-down
|
3
|
+
Version: 0.0.1
|
4
|
+
Summary: CLI for managing SimplyBlock cluster
|
5
|
+
Home-page: https://www.simplyblock.io/
|
6
|
+
Author: Hamdy
|
7
|
+
Author-email: hamdy@simplyblock.io
|
8
|
+
Description-Content-Type: text/markdown
|
9
|
+
Requires-Dist: foundationdb
|
10
|
+
Requires-Dist: requests
|
11
|
+
Requires-Dist: numpy
|
12
|
+
Requires-Dist: prettytable>=3.10.0
|
13
|
+
Requires-Dist: docker
|
14
|
+
Requires-Dist: psutil
|
15
|
+
Requires-Dist: py-cpuinfo
|
16
|
+
Requires-Dist: pytest
|
17
|
+
Requires-Dist: mock
|
18
|
+
Requires-Dist: setuptools
|
19
|
+
Requires-Dist: flask
|
20
|
+
Requires-Dist: kubernetes
|
21
|
+
Requires-Dist: PyYAML
|
22
|
+
Requires-Dist: urllib3
|
23
|
+
Requires-Dist: graypy==2.1.0
|
24
|
+
Requires-Dist: boto3
|
25
|
+
Requires-Dist: jinja2
|
26
|
+
Requires-Dist: argcomplete
|
27
|
+
Requires-Dist: jc
|
28
|
+
Dynamic: author
|
29
|
+
Dynamic: author-email
|
30
|
+
Dynamic: description
|
31
|
+
Dynamic: description-content-type
|
32
|
+
Dynamic: home-page
|
33
|
+
Dynamic: requires-dist
|
34
|
+
Dynamic: summary
|
35
|
+
|
36
|
+
|
37
|
+
# Simply Block
|
38
|
+
[](https://github.com/simplyblock-io/sbcli/actions/workflows/docker-image.yml)
|
39
|
+
|
40
|
+
[](https://github.com/simplyblock-io/sbcli/actions/workflows/python-testing.yml)
|
41
|
+
|
42
|
+
|
43
|
+
## Install
|
44
|
+
Add the package repo from AWS CodeArtifact using [awscli](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)
|
45
|
+
|
46
|
+
```bash
|
47
|
+
aws codeartifact login --tool pip --repository sbcli --domain simplyblock --domain-owner 565979732541 --region eu-west-1
|
48
|
+
```
|
49
|
+
Install package
|
50
|
+
```bash
|
51
|
+
pip install --extra-index-url https://pypi.org/simple sbcli-dev
|
52
|
+
```
|
53
|
+
|
54
|
+
# Components
|
55
|
+
|
56
|
+
## Simply Block Core
|
57
|
+
Contains core logic and controllers for the simplyblock cluster
|
58
|
+
|
59
|
+
## Simply Block CLI
|
60
|
+
Please see this document
|
61
|
+
[README.md](../main/simplyblock_cli/README.md)
|
62
|
+
|
63
|
+
|
64
|
+
## Simply Block Web API
|
65
|
+
Please see this document
|
66
|
+
[README.md](../main/simplyblock_web/README.md)
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
### local development
|
71
|
+
|
72
|
+
FoundationDB requires a client library (libfdb_c.dylib) for the Python bindings to interact with the database.
|
73
|
+
Depending on the OS architecture, please install the appropriate version from the official github repo
|
74
|
+
|
75
|
+
```
|
76
|
+
wget https://github.com/apple/foundationdb/releases/download/7.3.3/FoundationDB-7.3.3_arm64.pkg
|
77
|
+
```
|
78
|
+
|
79
|
+
setup the code on a management node and the webApp code can be developed by building the `docker-compose-dev.yml` file.
|
80
|
+
|
81
|
+
|
82
|
+
```
|
83
|
+
sudo docker compose -f docker-compose-dev.yml up --build -d
|
84
|
+
```
|
@@ -0,0 +1,49 @@
|
|
1
|
+
|
2
|
+
# Simply Block
|
3
|
+
[](https://github.com/simplyblock-io/sbcli/actions/workflows/docker-image.yml)
|
4
|
+
|
5
|
+
[](https://github.com/simplyblock-io/sbcli/actions/workflows/python-testing.yml)
|
6
|
+
|
7
|
+
|
8
|
+
## Install
|
9
|
+
Add the package repo from AWS CodeArtifact using [awscli](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)
|
10
|
+
|
11
|
+
```bash
|
12
|
+
aws codeartifact login --tool pip --repository sbcli --domain simplyblock --domain-owner 565979732541 --region eu-west-1
|
13
|
+
```
|
14
|
+
Install package
|
15
|
+
```bash
|
16
|
+
pip install --extra-index-url https://pypi.org/simple sbcli-dev
|
17
|
+
```
|
18
|
+
|
19
|
+
# Components
|
20
|
+
|
21
|
+
## Simply Block Core
|
22
|
+
Contains core logic and controllers for the simplyblock cluster
|
23
|
+
|
24
|
+
## Simply Block CLI
|
25
|
+
Please see this document
|
26
|
+
[README.md](../main/simplyblock_cli/README.md)
|
27
|
+
|
28
|
+
|
29
|
+
## Simply Block Web API
|
30
|
+
Please see this document
|
31
|
+
[README.md](../main/simplyblock_web/README.md)
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
### local development
|
36
|
+
|
37
|
+
FoundationDB requires a client library (libfdb_c.dylib) for the Python bindings to interact with the database.
|
38
|
+
Depending on the OS architecture, please install the appropriate version from the official github repo
|
39
|
+
|
40
|
+
```
|
41
|
+
wget https://github.com/apple/foundationdb/releases/download/7.3.3/FoundationDB-7.3.3_arm64.pkg
|
42
|
+
```
|
43
|
+
|
44
|
+
setup the code on a management node and the webApp code can be developed by building the `docker-compose-dev.yml` file.
|
45
|
+
|
46
|
+
|
47
|
+
```
|
48
|
+
sudo docker compose -f docker-compose-dev.yml up --build -d
|
49
|
+
```
|
@@ -0,0 +1,84 @@
|
|
1
|
+
Metadata-Version: 2.2
|
2
|
+
Name: sbcli-down
|
3
|
+
Version: 0.0.1
|
4
|
+
Summary: CLI for managing SimplyBlock cluster
|
5
|
+
Home-page: https://www.simplyblock.io/
|
6
|
+
Author: Hamdy
|
7
|
+
Author-email: hamdy@simplyblock.io
|
8
|
+
Description-Content-Type: text/markdown
|
9
|
+
Requires-Dist: foundationdb
|
10
|
+
Requires-Dist: requests
|
11
|
+
Requires-Dist: numpy
|
12
|
+
Requires-Dist: prettytable>=3.10.0
|
13
|
+
Requires-Dist: docker
|
14
|
+
Requires-Dist: psutil
|
15
|
+
Requires-Dist: py-cpuinfo
|
16
|
+
Requires-Dist: pytest
|
17
|
+
Requires-Dist: mock
|
18
|
+
Requires-Dist: setuptools
|
19
|
+
Requires-Dist: flask
|
20
|
+
Requires-Dist: kubernetes
|
21
|
+
Requires-Dist: PyYAML
|
22
|
+
Requires-Dist: urllib3
|
23
|
+
Requires-Dist: graypy==2.1.0
|
24
|
+
Requires-Dist: boto3
|
25
|
+
Requires-Dist: jinja2
|
26
|
+
Requires-Dist: argcomplete
|
27
|
+
Requires-Dist: jc
|
28
|
+
Dynamic: author
|
29
|
+
Dynamic: author-email
|
30
|
+
Dynamic: description
|
31
|
+
Dynamic: description-content-type
|
32
|
+
Dynamic: home-page
|
33
|
+
Dynamic: requires-dist
|
34
|
+
Dynamic: summary
|
35
|
+
|
36
|
+
|
37
|
+
# Simply Block
|
38
|
+
[](https://github.com/simplyblock-io/sbcli/actions/workflows/docker-image.yml)
|
39
|
+
|
40
|
+
[](https://github.com/simplyblock-io/sbcli/actions/workflows/python-testing.yml)
|
41
|
+
|
42
|
+
|
43
|
+
## Install
|
44
|
+
Add the package repo from AWS CodeArtifact using [awscli](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)
|
45
|
+
|
46
|
+
```bash
|
47
|
+
aws codeartifact login --tool pip --repository sbcli --domain simplyblock --domain-owner 565979732541 --region eu-west-1
|
48
|
+
```
|
49
|
+
Install package
|
50
|
+
```bash
|
51
|
+
pip install --extra-index-url https://pypi.org/simple sbcli-dev
|
52
|
+
```
|
53
|
+
|
54
|
+
# Components
|
55
|
+
|
56
|
+
## Simply Block Core
|
57
|
+
Contains core logic and controllers for the simplyblock cluster
|
58
|
+
|
59
|
+
## Simply Block CLI
|
60
|
+
Please see this document
|
61
|
+
[README.md](../main/simplyblock_cli/README.md)
|
62
|
+
|
63
|
+
|
64
|
+
## Simply Block Web API
|
65
|
+
Please see this document
|
66
|
+
[README.md](../main/simplyblock_web/README.md)
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
### local development
|
71
|
+
|
72
|
+
FoundationDB requires a client library (libfdb_c.dylib) for the Python bindings to interact with the database.
|
73
|
+
Depending on the OS architecture, please install the appropriate version from the official github repo
|
74
|
+
|
75
|
+
```
|
76
|
+
wget https://github.com/apple/foundationdb/releases/download/7.3.3/FoundationDB-7.3.3_arm64.pkg
|
77
|
+
```
|
78
|
+
|
79
|
+
setup the code on a management node and the webApp code can be developed by building the `docker-compose-dev.yml` file.
|
80
|
+
|
81
|
+
|
82
|
+
```
|
83
|
+
sudo docker compose -f docker-compose-dev.yml up --build -d
|
84
|
+
```
|
@@ -0,0 +1,155 @@
|
|
1
|
+
README.md
|
2
|
+
pyproject.toml
|
3
|
+
requirements.txt
|
4
|
+
setup.py
|
5
|
+
sbcli_down.egg-info/PKG-INFO
|
6
|
+
sbcli_down.egg-info/SOURCES.txt
|
7
|
+
sbcli_down.egg-info/dependency_links.txt
|
8
|
+
sbcli_down.egg-info/entry_points.txt
|
9
|
+
sbcli_down.egg-info/requires.txt
|
10
|
+
sbcli_down.egg-info/top_level.txt
|
11
|
+
simplyblock_cli/__init__.py
|
12
|
+
simplyblock_cli/cli.py
|
13
|
+
simplyblock_cli/main.py
|
14
|
+
simplyblock_core/__init__.py
|
15
|
+
simplyblock_core/cluster_ops.py
|
16
|
+
simplyblock_core/cnode_client.py
|
17
|
+
simplyblock_core/constants.py
|
18
|
+
simplyblock_core/db_controller.py
|
19
|
+
simplyblock_core/distr_controller.py
|
20
|
+
simplyblock_core/env_var
|
21
|
+
simplyblock_core/mgmt_node_ops.py
|
22
|
+
simplyblock_core/pci_utils.py
|
23
|
+
simplyblock_core/rpc_client.py
|
24
|
+
simplyblock_core/shell_utils.py
|
25
|
+
simplyblock_core/snode_client.py
|
26
|
+
simplyblock_core/storage_node_ops.py
|
27
|
+
simplyblock_core/utils.py
|
28
|
+
simplyblock_core/controllers/__init__.py
|
29
|
+
simplyblock_core/controllers/caching_node_controller.py
|
30
|
+
simplyblock_core/controllers/cluster_events.py
|
31
|
+
simplyblock_core/controllers/device_controller.py
|
32
|
+
simplyblock_core/controllers/device_events.py
|
33
|
+
simplyblock_core/controllers/events_controller.py
|
34
|
+
simplyblock_core/controllers/health_controller.py
|
35
|
+
simplyblock_core/controllers/lvol_controller.py
|
36
|
+
simplyblock_core/controllers/lvol_events.py
|
37
|
+
simplyblock_core/controllers/mgmt_events.py
|
38
|
+
simplyblock_core/controllers/pool_controller.py
|
39
|
+
simplyblock_core/controllers/pool_events.py
|
40
|
+
simplyblock_core/controllers/snapshot_controller.py
|
41
|
+
simplyblock_core/controllers/snapshot_events.py
|
42
|
+
simplyblock_core/controllers/storage_events.py
|
43
|
+
simplyblock_core/controllers/tasks_controller.py
|
44
|
+
simplyblock_core/controllers/tasks_events.py
|
45
|
+
simplyblock_core/models/__init__.py
|
46
|
+
simplyblock_core/models/base_model.py
|
47
|
+
simplyblock_core/models/caching_node.py
|
48
|
+
simplyblock_core/models/cluster.py
|
49
|
+
simplyblock_core/models/deployer.py
|
50
|
+
simplyblock_core/models/events.py
|
51
|
+
simplyblock_core/models/iface.py
|
52
|
+
simplyblock_core/models/job_schedule.py
|
53
|
+
simplyblock_core/models/lvol_model.py
|
54
|
+
simplyblock_core/models/mgmt_node.py
|
55
|
+
simplyblock_core/models/nvme_device.py
|
56
|
+
simplyblock_core/models/pool.py
|
57
|
+
simplyblock_core/models/port_stat.py
|
58
|
+
simplyblock_core/models/snapshot.py
|
59
|
+
simplyblock_core/models/stats.py
|
60
|
+
simplyblock_core/models/storage_node.py
|
61
|
+
simplyblock_core/scripts/__init__.py
|
62
|
+
simplyblock_core/scripts/clean_local_storage_deploy.sh
|
63
|
+
simplyblock_core/scripts/config_docker.sh
|
64
|
+
simplyblock_core/scripts/dashboard.yml
|
65
|
+
simplyblock_core/scripts/datasource.yml
|
66
|
+
simplyblock_core/scripts/db_config_double.sh
|
67
|
+
simplyblock_core/scripts/db_config_single.sh
|
68
|
+
simplyblock_core/scripts/deploy_fdb.sh
|
69
|
+
simplyblock_core/scripts/deploy_stack.sh
|
70
|
+
simplyblock_core/scripts/docker-compose-swarm-monitoring.yml
|
71
|
+
simplyblock_core/scripts/docker-compose-swarm.yml
|
72
|
+
simplyblock_core/scripts/foundation.yml
|
73
|
+
simplyblock_core/scripts/haproxy.cfg
|
74
|
+
simplyblock_core/scripts/install_deps.sh
|
75
|
+
simplyblock_core/scripts/objstore.yml
|
76
|
+
simplyblock_core/scripts/prepare_fdb.sh
|
77
|
+
simplyblock_core/scripts/prometheus.yml
|
78
|
+
simplyblock_core/scripts/run_ssh.sh
|
79
|
+
simplyblock_core/scripts/set_db_config.sh
|
80
|
+
simplyblock_core/scripts/stack_deploy_wait.sh
|
81
|
+
simplyblock_core/scripts/alerting/alert_resources.yaml.j2
|
82
|
+
simplyblock_core/scripts/alerting/alert_rules.yaml
|
83
|
+
simplyblock_core/scripts/dashboards/cluster.json
|
84
|
+
simplyblock_core/scripts/dashboards/devices.json
|
85
|
+
simplyblock_core/scripts/dashboards/lvols.json
|
86
|
+
simplyblock_core/scripts/dashboards/node-exporter.json
|
87
|
+
simplyblock_core/scripts/dashboards/nodes.json
|
88
|
+
simplyblock_core/scripts/dashboards/pools.json
|
89
|
+
simplyblock_core/services/__init__.py
|
90
|
+
simplyblock_core/services/cached_lvol_stat_collector.py
|
91
|
+
simplyblock_core/services/caching_node_monitor.py
|
92
|
+
simplyblock_core/services/cap_monitor.py
|
93
|
+
simplyblock_core/services/capacity_and_stats_collector.py
|
94
|
+
simplyblock_core/services/device_monitor.py
|
95
|
+
simplyblock_core/services/health_check_service.py
|
96
|
+
simplyblock_core/services/install_service.sh
|
97
|
+
simplyblock_core/services/log_agg_service.py
|
98
|
+
simplyblock_core/services/lvol_monitor.py
|
99
|
+
simplyblock_core/services/lvol_stat_collector.py
|
100
|
+
simplyblock_core/services/main_distr_event_collector.py
|
101
|
+
simplyblock_core/services/mgmt_node_monitor.py
|
102
|
+
simplyblock_core/services/new_device_discovery.py
|
103
|
+
simplyblock_core/services/port_stat_collector.py
|
104
|
+
simplyblock_core/services/remove_service.sh
|
105
|
+
simplyblock_core/services/service_template.service
|
106
|
+
simplyblock_core/services/spdk_http_proxy_server.py
|
107
|
+
simplyblock_core/services/spdk_stats_collector.py
|
108
|
+
simplyblock_core/services/storage_node_monitor.py
|
109
|
+
simplyblock_core/services/tasks_runner_failed_migration.py
|
110
|
+
simplyblock_core/services/tasks_runner_migration.py
|
111
|
+
simplyblock_core/services/tasks_runner_new_dev_migration.py
|
112
|
+
simplyblock_core/services/tasks_runner_node_add.py
|
113
|
+
simplyblock_core/services/tasks_runner_restart.py
|
114
|
+
simplyblock_core/services/spdk/__init__.py
|
115
|
+
simplyblock_core/services/spdk/client.py
|
116
|
+
simplyblock_core/workers/cleanup_foundationdb.py
|
117
|
+
simplyblock_web/README.md
|
118
|
+
simplyblock_web/__init__.py
|
119
|
+
simplyblock_web/app.py
|
120
|
+
simplyblock_web/auth_middleware.py
|
121
|
+
simplyblock_web/caching_node_app.py
|
122
|
+
simplyblock_web/caching_node_app_k8s.py
|
123
|
+
simplyblock_web/node_utils.py
|
124
|
+
simplyblock_web/node_webapp.py
|
125
|
+
simplyblock_web/requirements.txt
|
126
|
+
simplyblock_web/snode_app.py
|
127
|
+
simplyblock_web/snode_app_k8s.py
|
128
|
+
simplyblock_web/utils.py
|
129
|
+
simplyblock_web/blueprints/__init__.py
|
130
|
+
simplyblock_web/blueprints/caching_node_ops.py
|
131
|
+
simplyblock_web/blueprints/caching_node_ops_k8s.py
|
132
|
+
simplyblock_web/blueprints/node_api_basic.py
|
133
|
+
simplyblock_web/blueprints/node_api_caching_docker.py
|
134
|
+
simplyblock_web/blueprints/node_api_caching_ks.py
|
135
|
+
simplyblock_web/blueprints/snode_ops.py
|
136
|
+
simplyblock_web/blueprints/snode_ops_k8s.py
|
137
|
+
simplyblock_web/blueprints/web_api_caching_node.py
|
138
|
+
simplyblock_web/blueprints/web_api_cluster.py
|
139
|
+
simplyblock_web/blueprints/web_api_deployer.py
|
140
|
+
simplyblock_web/blueprints/web_api_device.py
|
141
|
+
simplyblock_web/blueprints/web_api_lvol.py
|
142
|
+
simplyblock_web/blueprints/web_api_mgmt_node.py
|
143
|
+
simplyblock_web/blueprints/web_api_pool.py
|
144
|
+
simplyblock_web/blueprints/web_api_snapshot.py
|
145
|
+
simplyblock_web/blueprints/web_api_storage_node.py
|
146
|
+
simplyblock_web/static/delete.py
|
147
|
+
simplyblock_web/static/deploy.py
|
148
|
+
simplyblock_web/static/deploy_cnode.yaml
|
149
|
+
simplyblock_web/static/deploy_spdk.yaml
|
150
|
+
simplyblock_web/static/is_up.py
|
151
|
+
simplyblock_web/static/list_deps.py
|
152
|
+
simplyblock_web/static/rpac.yaml
|
153
|
+
simplyblock_web/static/tst.py
|
154
|
+
simplyblock_web/templates/caching_deploy_spdk.yaml.j2
|
155
|
+
simplyblock_web/templates/storage_deploy_spdk.yaml.j2
|
@@ -0,0 +1 @@
|
|
1
|
+
|
@@ -0,0 +1,99 @@
|
|
1
|
+
import os
|
2
|
+
|
3
|
+
from setuptools import setup, find_packages
|
4
|
+
|
5
|
+
from setuptools.command.install import install as _install
|
6
|
+
|
7
|
+
|
8
|
+
def _post_install():
|
9
|
+
from subprocess import getstatusoutput
|
10
|
+
_, out = getstatusoutput('activate-global-python-argcomplete --user')
|
11
|
+
print(out)
|
12
|
+
|
13
|
+
if os.environ.get("SHELL") and os.environ.get("HOME"):
|
14
|
+
if "zsh" in os.environ.get("SHELL", ""):
|
15
|
+
path = f"{os.environ.get('HOME')}/.zshenv"
|
16
|
+
else:
|
17
|
+
path = f"{os.environ.get('HOME')}/.bash_completion"
|
18
|
+
if os.path.isfile(path):
|
19
|
+
_, out = getstatusoutput(f'source {path}')
|
20
|
+
|
21
|
+
|
22
|
+
class install(_install):
|
23
|
+
def run(self):
|
24
|
+
_install.run(self)
|
25
|
+
self.execute(_post_install, (), msg="Running post install task")
|
26
|
+
|
27
|
+
|
28
|
+
def get_env_var(name, default=None):
|
29
|
+
if not name:
|
30
|
+
return False
|
31
|
+
with open("simplyblock_core/env_var", "r", encoding="utf-8") as fh:
|
32
|
+
lines = fh.readlines()
|
33
|
+
data = {}
|
34
|
+
for line in lines:
|
35
|
+
if not line or line.startswith("#"):
|
36
|
+
continue
|
37
|
+
try:
|
38
|
+
k, v = line.split("=")
|
39
|
+
data[k.strip()] = v.strip()
|
40
|
+
except:
|
41
|
+
pass
|
42
|
+
return data.get(name, default)
|
43
|
+
|
44
|
+
|
45
|
+
def gen_data_files(*dirs):
|
46
|
+
results = []
|
47
|
+
for src_dir in dirs:
|
48
|
+
files = [f for f in os.listdir(src_dir) if os.path.isfile(f"{src_dir}/{f}") and f != ".DS_Store"]
|
49
|
+
if not files:
|
50
|
+
return []
|
51
|
+
results.append((src_dir, [f"{src_dir}/{f}" for f in files]))
|
52
|
+
dirs = [f for f in os.listdir(src_dir) if os.path.isdir(f"{src_dir}/{f}")]
|
53
|
+
for dir in dirs:
|
54
|
+
results.extend(gen_data_files(os.path.join(src_dir, dir)))
|
55
|
+
return results
|
56
|
+
|
57
|
+
|
58
|
+
def get_long_description():
|
59
|
+
with open("README.md", "r", encoding="utf-8") as fh:
|
60
|
+
return fh.read()
|
61
|
+
|
62
|
+
|
63
|
+
def get_requirements():
|
64
|
+
with open("requirements.txt", "r", encoding="utf-8") as fh:
|
65
|
+
return fh.readlines()
|
66
|
+
|
67
|
+
|
68
|
+
COMMAND_NAME = get_env_var("SIMPLY_BLOCK_COMMAND_NAME", "sbcli")
|
69
|
+
VERSION = get_env_var("SIMPLY_BLOCK_VERSION", "1")
|
70
|
+
|
71
|
+
data_files = gen_data_files("simplyblock_core","simplyblock_web")
|
72
|
+
data_files.append(('', ["requirements.txt"]))
|
73
|
+
# data_files.append(('/etc/simplyblock', ["requirements.txt"]))
|
74
|
+
|
75
|
+
|
76
|
+
setup(
|
77
|
+
name=COMMAND_NAME,
|
78
|
+
version=VERSION,
|
79
|
+
packages=find_packages(exclude=["e2e*"]),
|
80
|
+
url='https://www.simplyblock.io/',
|
81
|
+
author='Hamdy',
|
82
|
+
author_email='hamdy@simplyblock.io',
|
83
|
+
description='CLI for managing SimplyBlock cluster',
|
84
|
+
long_description=get_long_description(),
|
85
|
+
long_description_content_type="text/markdown",
|
86
|
+
install_requires=get_requirements(),
|
87
|
+
entry_points={
|
88
|
+
'console_scripts': [
|
89
|
+
f'{COMMAND_NAME}=simplyblock_cli.cli:main',
|
90
|
+
]
|
91
|
+
},
|
92
|
+
include_package_data=True,
|
93
|
+
data_files=data_files,
|
94
|
+
package_data={
|
95
|
+
'': ["/etc/simplyblock/requirements.txt"],
|
96
|
+
'/etc/simplyblock': ["requirements.txt"]
|
97
|
+
},
|
98
|
+
cmdclass={'install': install},
|
99
|
+
)
|
File without changes
|