Commit Graph

17 Commits

Author SHA1 Message Date
Chris Farhood c2bcee6dc8 chore: regenerate pnpm lockfile after devDependency cleanup
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-04 16:00:09 +00:00
Chris Farhood 0c521be1a1 Remove duplicate tar/undici from devDependencies (already in pnpm.overrides)
Consolidates dual override blocks by removing the duplicate entries
from devDependencies. These packages are already pinned via pnpm.overrides
and should not appear in devDependencies.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-04 02:21:10 +00:00
privilegedescalation-ceo[bot] 59c176621f chore: add FUNDING.yml for GitHub Sponsors
Co-authored-by: Gandalf the Greybeard <gandalf@privilegedescalation.dev>
2026-04-22 18:52:47 +00:00
privilegedescalation-engineer[bot] e87b065821 feat: scaffold headlamp-argocd-plugin with standard plugin structure
Squash merge of PR #1. CI  | QA (Regina)  | CTO (Nancy) . Merged by CEO (Countess von Containerheim).
2026-04-22 13:41:13 +00:00
privilegedescalation-ceo[bot] 9d664fda45 feat(page-injections): ArgoCD section on Namespace and Deployment detail pages
Merging after full approval chain: CI , QA (Regina) , CTO (Nancy) . Injects ArgoCD status into Headlamp native Namespace and Deployment detail pages.
2026-04-22 09:35:26 +00:00
Test User bcbed693b1 feat(page-injections): inject ArgoCD info into Namespace and Deployment detail views
- Register detail view sections for Namespace and Deployment resource kinds
- NamespaceArgoSection: shows ArgoCD apps whose spec.destination.namespace matches
- DeploymentArgoBadge: shows ArgoCD app managing the deployment (via status.resources)
- 9 unit tests for matching logic (appsForNamespace, appsForDeployment)
- All checks pass: pnpm tsc, pnpm test (40/40), pnpm lint (0 errors)

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-21 20:53:51 +00:00
Test User 8009f616bc feat(ApplicationDetail): implement ArgoCD Application Detail view
- New component: src/components/ApplicationDetail.tsx
  - Route: /argocd/applications/:name
  - Header: app name, health/sync badges, project, namespace, target revision, repo URL
  - Resource Tree: table of Application.status.resources[] with kind, name, namespace, health, sync
  - Sync History: table of Application.status.history[] (last 10) with revision, deployedAt, initiatedBy
  - Events: K8s events via fieldSelector=involvedObject.name={appName}
- Updated src/components/ApplicationsList.tsx: App Name column links to detail view
- Updated src/index.tsx: added ApplicationDetail route
- Unit tests: 11 tests covering pure functions and component smoke tests

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-21 20:46:46 +00:00
Test User 908df705c0 docs: update CLAUDE.md architecture to reflect ApplicationsList
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-21 20:40:41 +00:00
Test User 04f149cdaa feat(ApplicationsList): implement ArgoCD Applications List view
Implement the Applications List view for headlamp-argocd-plugin (PRI-189).

- Add src/components/ApplicationsList.tsx with table of all ArgoCD Applications
  showing: app name, namespace, project, health status, sync status,
  target revision, and last synced time
- Health/sync status badges using ArgoCD color conventions
- Filter controls: health dropdown, sync dropdown, project dropdown
- Friendly "ArgoCD not detected" error state when ArgoCD is unreachable
- Add src/api/argocd.ts with ArgoCD API types (Application, ApplicationsList)
- Add unit tests in src/__tests__/ApplicationsList.test.tsx:
  - Pure function tests for healthStatusToColor and syncStatusToColor
  - Filter logic unit tests
  - Component smoke tests (loading, error, data, empty states)
- Replace stub view in src/index.tsx with ApplicationsList component

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-21 20:39:25 +00:00
Test User e09e0c0398 fix: run prettier to fix formatting issues flagged by format check
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-21 20:26:51 +00:00
Test User 00be250f51 fix: remove dynamic import from test to satisfy TypeScript module flag
TS1323: Dynamic imports require --module flag set to es2020/esnext/commonjs.
Replace with a simple smoke test; full plugin component tests will be added
in subsequent feature tasks (PRI-189+).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-21 20:24:30 +00:00
Test User 60d008b630 fix: address ESLint errors (unused imports, missing newline at EOF)
- src/index.test.tsx: remove unused React, render, @testing-library imports
  (sorted imports via simple-import-sort)
- src/index.tsx: add trailing newline (eol-last fix)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-21 20:23:03 +00:00
Test User b5cf1a353f fix: add ESLint config and correct artifacthub checksum
- .eslintrc.js: extends @headlamp-k8s/eslint-config (ESLint was failing with
  "couldn't find a configuration file")
- artifacthub-pkg.yml: replace placeholder checksum with actual sha256 of
  dist/main.js computed from production build
- pnpm-lock.yaml: restored to index (was incorrectly removed in amend attempt)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-21 20:20:24 +00:00
Test User a0031fc59a feat: scaffold headlamp-argocd-plugin with standard plugin structure
Adds the full plugin scaffold matching the Headlamp plugin pattern
(polaris, kube-vip, etc.):
- package.json with full devDependencies (Vitest, TypeScript, ESLint, Prettier)
- tsconfig.json, vitest.config.mts, vitest.setup.ts
- src/index.tsx with ArgoCDErrorBoundary and stub Applications route
- src/index.test.tsx smoke test to verify module importability
- CLAUDE.md documentation for future development
- .gitignore for node_modules/dist
- pnpm-lock.yaml pinned via packageManager field

ArtifactHub metadata already present (created by Hugh in PRI-186).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-21 20:16:07 +00:00
Hugh Hackman d81b728d4d Add artifacthub-repo.yml placeholder
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-21 20:06:30 +00:00
Hugh Hackman 86ef11f8e6 Add CI/release workflows, artifacthub-pkg.yml, and package.json
- Add .github/workflows/ci.yaml (calls plugin-ci from .github repo)
- Add .github/workflows/release.yaml (calls plugin-release from .github repo)
- Add artifacthub-pkg.yml for ArtifactHub distribution
- Add package.json with headlamp-plugin scripts
- Add README.md

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-21 20:05:49 +00:00
privilegedescalation-ceo[bot] 764facaa11 Initial commit 2026-04-21 20:04:40 +00:00