v0.9.0: Storage paths registry, per-app HDD_PATH resolution, storage management UI
- Fix backup toggles not appearing (read each app's own HDD_PATH from app.yaml) - Storage paths registry in settings.json with auto-discovery from deployed apps - Settings page "Adattárolók" section with disk usage, add/remove/default/schedulable - Deploy page path field as dropdown of registered storage paths - Health check storage monitoring (mount point, disk usage alerts) - Mount-point validation utilities (Linux syscall + cross-platform stubs) - Controller docker-compose mount changed to /mnt:/mnt:rw for multi-storage Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,99 @@
|
||||
# Changelog
|
||||
|
||||
## v0.9.0 — Storage Paths Foundation & Backup Toggle Fix (2026-02-17)
|
||||
|
||||
### Fixed
|
||||
- Per-app backup toggles not appearing on backup page (root cause: missing global `hdd_path` in controller.yaml made `ParseComposeHDDMounts` return nil)
|
||||
- Each app's HDD_PATH is now read from its own `app.yaml` env section instead of relying on a global config value
|
||||
|
||||
### Added
|
||||
- **Storage paths registry** — multiple external storage paths managed in `settings.json` with auto-discovery from deployed apps on startup
|
||||
- **Settings page "Adattárolók" section** — view, add, remove, set default, toggle schedulable for storage paths. Disk usage bars, app counts, mount status badges
|
||||
- **Deploy page storage dropdown** — `path` field type shows registered schedulable paths as dropdown instead of free-text input
|
||||
- **Health check storage monitoring** — checks path accessibility, mount-point validation (warns if data would write to SSD), disk usage alerts at 90%/95%
|
||||
- **Mount-point validation** — `IsMountPoint()`, `IsWritable()`, `PathsOverlap()`, `GetDiskUsage()` (Linux via syscall, stubs for other platforms)
|
||||
|
||||
### Changed
|
||||
- Controller docker-compose mount changed from `${HDD_PATH}:${HDD_PATH}:ro` to `/mnt:/mnt:rw` for multi-storage + restore support
|
||||
- `RunHealthCheck()` now accepts storage paths parameter for per-path monitoring
|
||||
- `BuildReport()` accepts storage paths for accurate system info in hub reports
|
||||
- Removed unused `hddPath` parameter from `DiscoverAppData()` signature
|
||||
|
||||
## v0.8.0 — Storage Overview, Per-App Backup Toggles & Limited Restore (2026-02-16)
|
||||
|
||||
- Storage overview on backup page (SSD/HDD progress bars + repo stats)
|
||||
- Restic password visibility with show/copy for disaster recovery
|
||||
- App data discovery (`DiscoverAppData()` with `StackDataProvider` interface)
|
||||
- Per-app backup toggles (HDD data paths per app)
|
||||
- Dynamic backup paths based on enabled apps
|
||||
- Limited app restore from restic snapshots
|
||||
- Flash messages on backup page
|
||||
|
||||
## v0.7.2 — Fix Notification Preferences Sync (2026-02-16)
|
||||
|
||||
- Hub: `POST /api/v1/preferences` endpoint
|
||||
- Hub: Notification section on customer detail page
|
||||
- Controller: `SyncPreferences` method for hub sync
|
||||
- Controller: Sync on settings save + startup
|
||||
|
||||
## v0.7.1 — Monitoring Warnings, Dashboard Alerts & Notification System (2026-02-16)
|
||||
|
||||
- Monitoring page "Távoli monitoring" section
|
||||
- Dashboard alert banners (error/warning/info)
|
||||
- Hub notification relay (Resend email)
|
||||
- Controller-side notifier with cooldown tracking
|
||||
- Notification preferences UI on settings page
|
||||
|
||||
## v0.7.0 — Authentication, Persistence & Settings Page (2026-02-16)
|
||||
|
||||
- `settings.json` persistence layer
|
||||
- Password change via settings page
|
||||
- Session management improvements
|
||||
- DB validation persistence across restarts
|
||||
|
||||
## v0.6.3 — Bug fixes (2026-02-16)
|
||||
|
||||
- `--hdd-path` validation in docker-setup.sh
|
||||
- `window.event` deprecation fix
|
||||
- Page title separator fix
|
||||
- `nextPruneLabel()` Sunday fix
|
||||
|
||||
## v0.6.0 — Healthcheck + Central Push + Hub Dashboard (2026-02-16)
|
||||
|
||||
- Heartbeat + backup integrity pings
|
||||
- Central hub reporting (report builder + pusher)
|
||||
- Hub service with SQLite store + dark theme dashboard
|
||||
|
||||
## v0.5.0 — Monitoring Page with Metrics Store (2026-02-16)
|
||||
|
||||
- SQLite metrics store with WAL mode
|
||||
- Background metrics collector (60s interval)
|
||||
- System + container charts (Chart.js 4.4.7)
|
||||
- Per-container detail views
|
||||
|
||||
## v0.4.5 — Dedicated Backup Page (2026-02-16)
|
||||
|
||||
- Full backup system visibility
|
||||
- DB dump engine + restic integration
|
||||
- Snapshot history + validation
|
||||
- Manual backup trigger
|
||||
|
||||
## v0.4.0 — Monitoring & Health + Backups (2026-02-15)
|
||||
|
||||
- Central job scheduler
|
||||
- CPU/temperature/load monitoring
|
||||
- Healthchecks.io integration
|
||||
- Database dump + restic backup engine
|
||||
|
||||
## v0.3.0 — Templates + Server Split (2026-02-15)
|
||||
|
||||
- go:embed template migration
|
||||
- Server decomposition (auth, handlers, funcmap)
|
||||
- Domain rename (dashboard → felhom)
|
||||
|
||||
## v0.2.x — Initial Development (2026-02-13 to 2026-02-15)
|
||||
|
||||
- Core stack management (deploy, start, stop, restart, update)
|
||||
- Dashboard, stacks page, deploy flow, logs
|
||||
- System info, memory validation
|
||||
- Git sync, app catalog, delete flow
|
||||
Reference in New Issue
Block a user