feat: initial kube-vip Headlamp plugin
Headlamp plugin providing visibility into kube-vip virtual IP and load balancer deployments. Features: - Overview dashboard with deployment status, VIP mode, leader election - Services page with LoadBalancer VIP assignments and detail panels - Nodes page showing kube-vip pod status and leader designation - Configuration page with DaemonSet config, IP pools, leases - Service detail section injected into native Headlamp Service views Read-only plugin — no cluster write operations. Uses standard K8s resources (no CRDs): Services, Nodes, Pods, DaemonSets, Leases, ConfigMaps with kube-vip.io/* annotations. 74 tests across 7 test files. All tsc/lint/format/test checks pass. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
# Contributing
|
||||
|
||||
Contributions are welcome! Please follow these guidelines.
|
||||
|
||||
## Development Setup
|
||||
|
||||
```bash
|
||||
git clone https://github.com/privilegedescalation/headlamp-kube-vip-plugin.git
|
||||
cd headlamp-kube-vip-plugin
|
||||
npm install
|
||||
npm start
|
||||
```
|
||||
|
||||
## Before Submitting a PR
|
||||
|
||||
```bash
|
||||
npm run tsc # TypeScript type check
|
||||
npm run lint # ESLint
|
||||
npm run format:check # Prettier
|
||||
npm test # All tests must pass
|
||||
```
|
||||
|
||||
## Code Style
|
||||
|
||||
- TypeScript strict mode (no `any`)
|
||||
- Functional React components only
|
||||
- All UI from `@kinvolk/headlamp-plugin/lib/CommonComponents`
|
||||
- Tests with vitest + @testing-library/react
|
||||
|
||||
## Commit Messages
|
||||
|
||||
Use conventional commit format:
|
||||
- `feat:` new features
|
||||
- `fix:` bug fixes
|
||||
- `chore:` maintenance
|
||||
- `docs:` documentation
|
||||
Reference in New Issue
Block a user