15 Commits

Author SHA1 Message Date
github-actions[bot] 4468396e52 chore: release v0.1.3 v0.1.3 2026-02-19 12:06:38 +00:00
github-actions[bot] ead81a51a9 chore: release v0.1.1 2026-02-19 12:05:27 +00:00
Chris Farhood 8e0b95ed64 fix: rename Type -> Protocol with RBD/CephFS values to match tns-csi convention
Both plugins now inject a 'Protocol' column into the shared native tables,
so mixed-driver clusters see consistent naming. Rook values: RBD, CephFS.
tns-csi values: NFS, NVMe-oF, iSCSI. Removes unused formatStorageType import
from the column processor.

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2026-02-19 06:53:54 -05:00
Chris Farhood e54caa7be4 fix: rename 'Rook Type' -> 'Type' and 'Cluster ID' -> 'Cluster' in column processors
Cleaner column headers that don't redundantly prefix with 'Rook'.

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2026-02-19 06:48:08 -05:00
github-actions[bot] b77ecf66e7 chore: release v0.1.2 v0.1.2 2026-02-19 02:24:36 +00:00
Chris Farhood c30fc18b43 feat: add Filesystems/ObjectStores pages, fix CSI selectors, remove app bar badge (#2)
- Remove AppBarClusterBadge registration (top-bar health bubble)
- Fix CSI pod selectors to match actual pod labels in this cluster
  (was: csi-rbdplugin-provisioner, now: rook-ceph.rbd.csi.ceph.com-ctrlplugin)
- Add FilesystemsPage with detail drawer (Active MDS, data pools, status)
- Add ObjectStoresPage with detail drawer (gateway port, instances, endpoints)
- Register Filesystems and Object Stores as sidebar entries with routes
- Enhance PodsPage OSD table with OSD ID, device class, store type,
  and failure domain columns from pod labels

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Happy <yesreply@happy.engineering>
2026-02-18 21:23:53 -05:00
Chris Farhood 91e50fc316 Merge pull request #1 from privilegedescalation/fix/ci-eslint-config 2026-02-18 19:47:53 -05:00
Chris Farhood 7860778920 fix(ci): add .eslintrc.js and remove unused imports
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2026-02-18 19:42:02 -05:00
github-actions[bot] 8d56dc4a74 chore: release v0.1.1 v0.1.1 2026-02-19 00:39:59 +00:00
Chris Farhood 14d55b5eea chore: update artifacthub-pkg.yml org URLs to privilegedescalation
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2026-02-18 18:19:52 -05:00
Chris Farhood 8521a1dda2 Revert "chore: release v0.1.1"
This reverts commit 9bca80f44c.
2026-02-18 18:19:11 -05:00
Chris Farhood 9bca80f44c chore: release v0.1.1
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2026-02-18 17:52:14 -05:00
Chris Farhood 2841519e92 chore: update repo URLs to privilegedescalation org
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2026-02-18 17:51:02 -05:00
Chris Farhood 4538cc70d7 docs: update CLAUDE.md with data flow, missing scripts, and test notes
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2026-02-18 17:45:13 -05:00
Chris Farhood 25175b65b8 feat: initial release of headlamp-rook-ceph-plugin v0.1.0
Headlamp plugin for Rook-Ceph cluster visibility.

Pages:
- Overview dashboard: CephCluster health, capacity bar, resource counts
  (block pools, filesystems, object stores, PVs, PVCs), daemon pod
  health summary, non-Bound PVC alerts
- Block Pools: CephBlockPool table with replication, failure domain,
  mirroring; slide-in detail panel
- Pods: all Rook-Ceph daemon pods grouped by role with ready/total counts

Native Headlamp integrations:
- StorageClass table: Rook Type, Pool, Cluster ID columns
- PV table: Rook Type, Pool columns
- PVC detail injection: driver, type, pool, volume handle
- PV detail injection: CSI volume attributes
- Pod detail injection: Ceph daemon role badge
- App bar badge: cluster health (HEALTH_OK/WARN/ERR), color-coded

API / architecture:
- src/api/k8s.ts: types + filters for ceph.rook.io/v1 CRDs; handles
  both default rook-ceph.* and custom-namespace provisioner strings
- src/api/RookCephDataContext.tsx: shared context provider; fetches
  CephCluster, CephBlockPool, CephFilesystem, CephObjectStore CRDs
  plus daemon pods via label selectors
- 37 unit tests (vitest + @testing-library/react)
- TypeScript strict mode, zero any types
- CI + release GitHub Actions workflows

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2026-02-18 16:55:39 -05:00