Ycluster
D 54 completed
Other
library / python · small
231
Files
22,457
LOC
1
Frameworks
9
Languages
Pipeline State
completedRun ID
#1543073Phase
doneProgress
0%Started
2026-04-16 21:51:07Finished
2026-04-16 21:51:07LLM tokens
0Pipeline Metadata
Stage
CatalogedDecision
proceedNovelty
49.47Framework unique
—Isolation
—Last stage change
2026-05-10 03:34:51Deduplication group #50329
Powered by Repobility — scan your code at https://repobility.com
🧪 Code Distillation
Browse all specs →AI Prompt
Create a self-bootstrapping infrastructure platform, similar to YCluster, using Python and Flask. The system needs to manage AI clusters, incorporating distributed storage using Ceph and PostgreSQL. Key features to include are auto-discovery via MAC addresses, PXE provisioning for new nodes, and high availability using etcd. I also need functionality for setting up HTTPS certificates, supporting both self-signed and Let's Encrypt options, and providing a web dashboard for monitoring cluster health and certificate status.
python flask infrastructure ai-cluster ceph postgresql automation networking
Generated by gemma4:latest
Catalog Information
Create a self-bootstrapping infrastructure platform, similar to YCluster, using Python and Flask. The system needs to manage AI clusters, incorporating distributed storage using Ceph and PostgreSQL. Key features to include are auto-discovery via MAC addresses, PXE provisioning for new nodes, and high availability using etcd. I also need functionality for setting up HTTPS certificates, supporting both self-signed and Let's Encrypt options, and providing a web dashboard for monitoring cluster heal
Tags
python flask infrastructure ai-cluster ceph postgresql automation networking
Quality Score
D
53.7/100
Structure
51
Code Quality
72
Documentation
78
Testing
0
Practices
41
Security
75
Dependencies
90
Strengths
- Code linting configured (ruff (possible))
- Containerized deployment (Docker)
Weaknesses
- No LICENSE file — legal ambiguity for contributors
- No tests found — high risk of regressions
- No CI/CD configuration — manual testing and deployment
- 42 bare except/catch blocks swallowing errors
- 775 duplicate lines detected — consider DRY refactoring
- 2 'god files' with >500 LOC need decomposition
Recommendations
- Add a test suite — start with critical path integration tests
- Set up CI/CD (GitHub Actions recommended) to automate testing and deployment
- Add a LICENSE file (MIT recommended for open source)
- Replace bare except/catch blocks with specific exception types
Languages
Frameworks
Flask
Symbols
function314
constant53
method40
variable13
class4
API Endpoints (39)
| Method | Path | Handler | Framework | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| All rows above produced by Repobility · https://repobility.com | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/alert-webhook | alert_webhook | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/allocate | allocate_hostname | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/allocate | allocate_hostname | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/allocations | allocations | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/allocations | allocations | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/cluster-status | cluster_status_api | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/dhcp-config | get_dhcp_config | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/dhcp-config | get_dhcp_config | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/drain | drain_node | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/drain/status | drain_status | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/drain/status/<target_hostname> | drain_status_target | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/drain/<target_hostname> | drain_target_node | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/health | health | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/health | health | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/health | health | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/host/<hostname>/disable | disable_host | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/host/<hostname>/enable | enable_host | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/hosts | get_hosts | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/hosts | get_hosts | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/ping | ping | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/ping | ping | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/status | status | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/status | status | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/time | get_time | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/time | get_time | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/undrain | undrain_node | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/undrain/<target_hostname> | undrain_target_node | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /api/wg/poll/<hostname> | wg_poll | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /api/wg/register | wg_register | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /autoinstall/meta-data | serve_meta_data | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /autoinstall/user-data | serve_user_data | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /bootstrap/ | serve_bootstrap_index | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /bootstrap/<node_type> | serve_bootstrap | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /health | health | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | length | s.get | Express | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /metrics | prometheus_metrics | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /static/<path:filename> | static_files | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| GET | /status | status_page | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| POST | /webhook | webhook | FastAPI/Flask | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Repobility (the analyzer behind this table) · https://repobility.com
Embed Badge
Add to your README:
BinComp Dependency Hardening
All packages →8 of this repo's dependencies have been scanned for binary hardening. Grade reflects RELRO / stack canary / FORTIFY / PIE coverage.
Dcryptography46.0.7 · 2,147 gadgets · risk 7302.1Nlitellm1.83.7 · 0 gadgets · risk 5510.8Njinja23.1.6 · 0 gadgets · risk 4187.0Nrequests2.33.1 · 0 gadgets · risk 3687.0Nflask3.1.3 · 0 gadgets · risk 574.2Fasyncpg0.31.0 · 456 gadgets · risk 0.0Nfastapi0.135.3 · 0 gadgets · risk 0.0Nsetuptools82.0.1 · 0 gadgets · risk 0.0