Commit Graph

9 Commits

Author SHA1 Message Date
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