Commit Graph

78 Commits

Author SHA1 Message Date
Chris Farhood 1d8fa360f7 chore: re-trigger CI after fix commit
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-06 21:55:06 +00:00
Chris Farhood 40fc7b08de fix: align deploy-e2e-headlamp.sh to kube-vip plugin
- Fix comment referencing 'rook' -> 'kube-vip'
- Add error handling for kubectl apply failure
- Add cluster state dump on apply failure
- Align automountServiceAccountToken to match other plugins
- Remove spurious sleep 2 before rollout status

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-06 21:12:37 +00:00
Chris Farhood 3080e84a2b fix: correct volume name from rook-plugin to headlamp-kube-vip-plugin
The deploy script had hardcoded 'rook-plugin' as the volume name
but should be 'headlamp-kube-vip-plugin' to match the ConfigMap.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-06 18:49:08 +00:00
Chris Farhood d9a505f34c Update e2e.yaml to use @main and pass plugin-name
Use @main workflow ref and add plugin-name input so the
reusable workflow can derive ConfigMap name and mount path.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-05 19:30:45 +00:00
Chris Farhood f2b138f357 fix(e2e): disable automount SA token to avoid kubelet fetch race
Kubelet tries to fetch SA token immediately after deployment creates the pod,
but the SA may not be propagated yet. Setting automountServiceAccountToken: false
avoids this race. The SA token is not needed since E2E tests authenticate
via HEADLAMP_TOKEN passed as env var.
2026-05-05 18:46:47 +00:00
Chris Farhood 80e491c68a fix(e2e): use pnpm-capable workflow branch
Reference @hugh/add-pnpm-support-plugin-e2e which has pnpm support via corepack.

PRI-634
2026-05-05 17:52:27 +00:00
Chris Farhood 97f27af70e fix(e2e): reference @main workflow after .github merge
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-05 17:43:49 +00:00
Chris Farhood b991268523 fix(ci): guard dual-approval job against null pull_request context
When triggered by pull_request_review events, github.event.pull_request
is undefined, which can cause issues when the job tries to access
github.event.pull_request.number. Add a job-level if guard to prevent
the job from running in these conditions.

This addresses the dual approval failures seen on feature branches where
the workflow was running without a valid PR context.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-05 17:34:18 +00:00
Chris Farhood d1ff6f3a6b fix(e2e): update plugin-e2e.yaml ref to hugh/fix-e2e-playwright-install-pnpm
Updates reusable workflow ref to include Playwright cache + retry fix from
PR privilegedescalation/.github#145.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-05 16:59:50 +00:00
Chris Farhood bb93e13024 fix(e2e): add E2E workflow and deploy scripts for headlamp-kube-vip-plugin
Adds:
- .github/workflows/e2e.yaml (calls plugin-e2e.yaml reusable workflow)
- scripts/deploy-e2e-headlamp.sh (deploys Headlamp with kube-vip plugin ConfigMap)
- scripts/teardown-e2e-headlamp.sh (cleans up E2E resources)

Fixes PRI-729: E2E DNS failure caused by missing E2E workflow in this repo.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-05 15:40:26 +00:00
privilegedescalation-engineer[bot] 6459913304 feat(workflows): add renovate-app-token reusable workflow for Mend Renovate (#43)
workflow_call reusable workflow that exposes a GitHub App installation
token. Mend Renovate will use this token to push commits.

Refs: PRI-413

Co-authored-by: Chris Farhood <chris@farhood.org>
2026-05-04 21:19:09 +00:00
privilegedescalation-engineer[bot] d9fec8b93c fix: add markdownlint config to resolve CI failures (#42)
Co-authored-by: Chris Farhood <chris@farhood.org>
Co-authored-by: Paperclip <noreply@paperclip.ing>
2026-05-04 20:02:52 +00:00
privilegedescalation-engineer[bot] dd2d942d39 fix: override lodash >=4.18.0 to patch code injection vulnerability (#40)
Defensive override floor for GHSA-r5fr-rjxr-66jc. Main already resolves lodash@4.18.1 transitively, so override prevents future regressions. CI green on 1d65d51. Approved by CEO via admin override per stopgap during PRI-309 adapter outage.
2026-05-03 23:24:51 +00:00
privilegedescalation-engineer[bot] 8e9b2c2645 fix: update vite to >=6.4.2 to patch arbitrary file read vulnerability (#39)
Vite versions >=6.0.0 <=6.4.1 are vulnerable to arbitrary file read via
the Vite Dev Server WebSocket (server.fs.deny bypass with queries).

CVE: GHSA-p9ff-h696-f583

Co-authored-by: Gandalf the Greybeard <gandalf@privilegedescalation.dev>
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-03 17:44:02 +00:00
privilegedescalation-engineer[bot] ac3d9e87ca release: v1.0.2 (#38)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-04-15 04:00:53 +00:00
privilegedescalation-ceo[bot] ad99689f47 fix: correct artifacthub-pkg.yml checksum on main for v1.0.1
Co-authored-by: privilegedescalation-ceo[bot] <269721483+privilegedescalation-ceo[bot]@users.noreply.github.com>
2026-04-15 03:50:58 +00:00
privilegedescalation-engineer[bot] 90623e32c7 fix: pass pr_number to dual-approval-check workflow (#34)
Companion PR to privilegedescalation/.github#81

Co-authored-by: Hugh Hackman <hugh@paperclip.ing>
Co-authored-by: Paperclip <noreply@paperclip.ing>
2026-04-15 03:30:22 +00:00
privilegedescalation-ceo[bot] aeb762ff85 chore: add repository_dispatch trigger for automated release 2026-04-15 02:54:35 +00:00
privilegedescalation-ceo[bot] a86fb9f596 Merge pull request #36 from privilegedescalation/release/v1.0.1
release: v1.0.1 - fix ArtifactHub checksum
2026-04-15 02:21:17 +00:00
Pawla Abdul 079a96f7d2 release: v1.0.1 - fix ArtifactHub checksum 2026-04-13 11:05:36 +00:00
privilegedescalation-ceo[bot] f6abc14a95 Merge pull request #31 from privilegedescalation/fix/add-package-manager-field
fix: add packageManager field to package.json
2026-03-24 22:45:31 +00:00
privilegedescalation-ceo[bot] 8f32bb3545 Merge pull request #30 from privilegedescalation/release/v1.0.0
release: v1.0.0
2026-03-24 22:37:14 +00:00
github-actions[bot] acf8ce55ca release: v1.0.0 v1.0.0 2026-03-24 22:30:16 +00:00
Gandalf the Greybeard f5fd03fe75 fix: add packageManager field to package.json
pnpm/action-setup@v5 requires either a version key in the action config
or a packageManager field in package.json. Add the field to unblock the
release workflow.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-24 22:12:36 +00:00
privilegedescalation-ceo[bot] 91abf23ceb Merge pull request #26 from privilegedescalation/release/v1.0.0
release: kube-vip v1.0.0
2026-03-24 22:01:19 +00:00
Gandalf the Greybeard 44efa23362 fix(ci): add missing eslint/prettier/typescript devDeps
Add eslint@^8.57.0, @headlamp-k8s/eslint-config@^0.6.0, prettier@^2.8.8,
typescript@~5.6.2 as explicit devDependencies. pnpm strict hoisting does
not expose transitive bins, so these must be direct deps.
2026-03-24 21:48:56 +00:00
Gandalf the Greybeard 78f4db1b46 release: prepare v1.0.0
- Bump version from 0.1.5 to 1.0.0 in package.json
- Add missing devDependencies: @mui/material ^5.15.14, @types/react ^18.0.0,
  @types/react-dom ^18.0.0, notistack ^3.0.0; pin vitest to ^3.2.4
- Replace package-lock.json with pnpm-lock.yaml (switch to pnpm)
- Update artifacthub-pkg.yml: version 1.0.0, v1.0.0 archive URL,
  TBD checksum placeholder, add changes block
- Add [1.0.0] entry to CHANGELOG.md with version comparison links
- All 74 tests pass

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-24 21:29:29 +00:00
privilegedescalation-ceo[bot] 4b6b57a198 Merge pull request #25 from privilegedescalation/feat/renovate-extend-org-config
feat: extend Renovate config from org-level preset
2026-03-24 18:46:14 +00:00
Hugh Hackman b18c738327 feat: extend Renovate config from org-level preset
Replaces the duplicated Renovate config with a simple extend from the
org-level preset (privilegedescalation/.github:renovate-config). All
rules (schedule, pinDigests, npm/github-actions minor+patch+major groups)
are now inherited from the org config, which was updated in PR #66 to add
major-version update rules for GitHub Actions.

This eliminates config drift between repos and reduces maintenance toil —
future rule changes only need to be made in one place.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-24 16:16:19 +00:00
privilegedescalation-engineer[bot] 7ad3069235 chore(renovate): add pinDigests for GitHub Actions SHA pinning (#24)
Adds pinDigests: true so Renovate pins all GitHub Actions references to
full commit SHAs for supply-chain hardening. This repo extends
config:recommended directly, so pinDigests must be set here explicitly —
the org-level config alone is not sufficient.

Recreated from main after closing stale PR #23 (branch was created before
the dual-approval PR #22 landed).

Co-authored-by: Gandalf the Greybeard <gandalf@privilegedescalation.com>
Co-authored-by: Paperclip <noreply@paperclip.ing>
2026-03-22 11:13:23 +00:00
privilegedescalation-ceo[bot] 8800d73d68 Merge pull request #22 from privilegedescalation/feat/dual-approval-status-check
ci: add dual-approval status check (CTO + QA)
2026-03-22 04:12:40 +00:00
privilegedescalation-engineer[bot] 2a8646a831 ci: add dual-approval caller workflow
Calls the shared privilegedescalation/.github dual-approval-check
reusable workflow to enforce CTO + QA approval as a GitHub status check.

Once privilegedescalation/.github#47 is merged, this status check can
be added to required_status_checks in branch protection.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-21 23:55:43 +00:00
privilegedescalation-ceo[bot] 8d0c1b4cee Merge pull request #21 from privilegedescalation/release/v0.1.5
release: v0.1.5
2026-03-21 23:46:25 +00:00
github-actions[bot] d7eebd2f4a release: v0.1.5 v0.1.5 2026-03-21 22:51:07 +00:00
privilegedescalation-paperclip[bot] fe1d1dcf3e ci: pass GitHub App token secrets to release workflow (#20)
The shared release workflow now requires RELEASE_APP_ID and
RELEASE_APP_PRIVATE_KEY secrets for PR creation, since the org
blocks GITHUB_TOKEN from creating PRs.

Depends on privilegedescalation/.github#31

Co-authored-by: privilegedescalation-paperclip[bot] <268365651+privilegedescalation-paperclip[bot]@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-20 13:24:36 +00:00
privilegedescalation-paperclip[bot] be9fe7ebd5 Merge pull request #19 from privilegedescalation/release/v0.1.4
release: v0.1.4
2026-03-19 21:50:46 +00:00
github-actions[bot] 4a17053e69 release: v0.1.4 v0.1.4 2026-03-19 21:38:56 +00:00
privilegedescalation-paperclip[bot] da041d52c6 fix: add pull-requests write permission to release workflow (#18)
The reusable release workflow declares pull-requests:write but the
caller didn't grant it, causing startup_failure on GitHub Actions.

Co-authored-by: Hugh Hackman [bot] <hugh-hackman[bot]@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-19 21:33:04 +00:00
null-pointer-nancy[bot] 6989ec32f1 Merge pull request #17 from privilegedescalation/fix/dep-security-overrides-tar-undici
fix: add npm overrides for tar and undici security advisories
2026-03-18 23:14:07 +00:00
Hugh Hackman e0f0349a76 fix: regenerate package-lock.json for undici override
Resolves lockfile mismatch where undici@7.24.1 did not satisfy the
^7.24.3 override. Running npm install updated the resolved version
to undici@7.24.4.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-18 23:04:41 +00:00
Hugh Hackman 9904f8f405 fix: add npm overrides for tar and undici security advisories
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-18 22:55:27 +00:00
null-pointer-nancy[bot] 829c0b4825 Merge pull request #15 from privilegedescalation/docs/remove-manual-install
docs: remove manual install sections from README
2026-03-17 17:39:08 +00:00
Gandalf the Greybeard 272b6655eb docs: remove manual install sections from README
Only the ArtifactHub/Plugin Manager installation path is supported.
Removed manual Helm-based and kubectl-based install sections.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-17 17:31:30 +00:00
hugh-hackman[bot] 06c0a69357 fix: sync package-lock.json (#14)
Co-authored-by: gandalf-the-greybeard[bot] <gandalf-the-greybeard[bot]@users.noreply.github.com>
2026-03-15 18:04:58 +00:00
null-pointer-nancy[bot] 0579c3457b ci: retrigger after shared workflow fix (#13)
CI retrigger after shared workflow fix (.github PR#14)
2026-03-15 17:54:43 +00:00
Chris Farhood 901e1bb25e Merge pull request #12 from privilegedescalation/policy/artifacthub-only
policy: add ArtifactHub-only installation requirement
2026-03-15 12:45:25 -04:00
null-pointer-nancy[bot] 81b30e55c6 policy: add ArtifactHub-only installation policy
Per CEO directive, ArtifactHub via the Headlamp plugin installer is the
only approved installation method. No exceptions.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-15 16:36:34 +00:00
gandalf-the-greybeard[bot] f2bf4c2e50 fix: add explicit dev dependencies and fix React test environment (#11)
* fix: add explicit dev dependencies and fix React test environment

- Add react, react-dom, vitest, jsdom, and testing-library as explicit
  devDependencies instead of relying on transitive deps from
  @kinvolk/headlamp-plugin
- Add peerDependencies for react/react-dom
- Set process.env.NODE_ENV to "test" in vitest config to prevent React
  from loading its production build (which blocks act())
- Do NOT include canvas as a dependency — it requires native build tools
  (pangocairo, etc.) not present in the CI node:22 container

Fixes CI install failures from prior PR #10 which included canvas.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: add react-router-dom devDep and remove unused vite types

- Add react-router-dom as explicit devDependency to fix
  ServicesPage.test.tsx import resolution failure
- Remove vite/client and vite-plugin-svgr/client from tsconfig types
  (not needed, aligns with polaris plugin pattern)

Addresses QA review feedback on PR#11.

---------

Co-authored-by: gandalf-the-greybeard[bot] <gandalf-the-greybeard[bot]@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 06:37:01 +00:00
Chris Farhood 84bfc04917 Merge pull request #9 from privilegedescalation/feat/add-upstream-appversion-tracking
feat: auto-track upstream appVersion in releases
2026-03-08 12:28:02 -04:00
Chris Farhood ae8f303d51 Merge pull request #8 from privilegedescalation/fix/artifacthub-rename
Update ArtifactHub metadata for rename to headlamp-kube-vip
2026-03-08 12:27:42 -04:00