Commit 128d1ec
committed
[Feature] Phase 6: cluster wiring, Helm chart, operator logic, CLI, and E2E tests
Complete the NovaStor implementation with full cluster wiring:
- gRPC metadata service with JSON-envelope pattern (single Execute RPC)
- gRPC client wrappers for metadata and chunk services
- All 7 binaries wired with real dependencies (no stubs)
- Helm chart with 17 templates for full Kubernetes deployment
- Operator reconcilers with real logic (StoragePool, BlockVolume,
SharedFilesystem, ObjectStore)
- novactl CLI with cobra (pool/volume/bucket/status commands)
- NFS server upgraded to JSON-RPC protocol
- CSI node with real stage/unstage, NVMe-oF initiator, volume stats
- CSI controller with RWX support
- S3 presigned URLs and object versioning
- Adapter layers bridging S3 and filer interfaces to gRPC clients
- Scrubber rate limiting, cert rotation
- Zap structured logging package
- 6 E2E integration tests (behind //go:build e2e tag)
237 tests passing across 25 packages.1 parent 39cc728 commit 128d1ec
74 files changed
Lines changed: 8420 additions & 135 deletions
File tree
- api
- proto/metadata
- v1alpha1
- cmd
- agent
- cli
- csi
- filer
- meta
- s3gw
- deploy/helm/novastor
- templates
- internal
- agent
- chunk
- cli
- controller
- csi
- filer
- logging
- metadata
- s3
- transport
- test/e2e
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
59 | 59 | | |
60 | 60 | | |
61 | 61 | | |
62 | | - | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | | - | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
67 | 68 | | |
68 | 69 | | |
69 | 70 | | |
| |||
97 | 98 | | |
98 | 99 | | |
99 | 100 | | |
| 101 | + | |
| 102 | + | |
100 | 103 | | |
101 | 104 | | |
102 | 105 | | |
| |||
0 commit comments