Releases: LogicIQ/pvc-chonker
Releases · LogicIQ/pvc-chonker
v0.4.0
This release focuses on code quality improvements, bug fixes, and enhanced reliability.
Improvements:
- Code Quality: Comprehensive refactoring to improve maintainability, error handling, and logging throughout the codebase
- Error Handling: Enhanced error handling in core controllers, webhook, and kubelet metrics collection
- Logging: Improved logging consistency and clarity across all components
- Annotations: Better handling of default scale-up values and annotation parsing
- Testing: Improved E2E test reliability and error handling
Bug Fixes
- Fixed various edge cases in PVC controller, PVCGroup controller, and PVCPolicy controller
- Resolved issues in webhook certificate generation script
- Improved cache storage and kubelet metrics handling
- Fixed annotation policy application logic
0.3.0 - added PVCGoup
- PVCGroupCR was added
- improved e2e and unitest coverage
- misc bugfixes
0.2.0 - added PVCPolicy
-
PVCPolicy CRD: Added policy-based configuration with label selectors for centralized PVC management
-
Enhanced E2E Testing: Comprehensive test suite with minikube integration and policy validation
-
Policy Controller: New controller for managing PVCPolicy resources with namespace-scoped policies
-
Configuration Hierarchy: PVC annotations → PVCPolicy → Global flags → Defaults precedence order
0.1.0 - test dev release
PVC Chonker v0.1.0 - Development Release
Development release. APIs may change in future versions.
Features
Core Functionality
- Automatic PVC expansion based on storage/inode usage thresholds
- Annotation-based configuration per PVC
- Cooldown protection against rapid expansions
- Size limits and minimum expansion controls
- Global defaults via flags/environment variables
Monitoring
- Storage and inode usage threshold detection
- ext3/ext4 filesystem detection with inode pressure warnings
- Handles volumes without inode metrics
- Prometheus metrics endpoint at
:8080/metrics
Operations
- Dry-run mode for testing
- Kubernetes event recording for PVC operations
- Health and readiness probes at
:8081 - Structured logging (JSON/console formats)
- Leader election support
Testing
- Unit tests with coverage reporting
- End-to-end integration tests using kind
- Mock kubelet metrics for reliable testing
- GitHub Actions for automated testing and releases
Build
- Version and git hash injection in binaries
- Multi-architecture Docker images (amd64/arm64)
- Cross-platform binary releases (Linux/macOS)