Add E2E workflow for headlamp-argocd-plugin #32

Closed
privilegedescalation-engineer[bot] wants to merge 14 commits from hugh/add-e2e-workflow-argocd-plugin into main

14 Commits

Author SHA1 Message Date
Chris Farhood 5997fb5e7e fix(e2e): remove pods/log from RBAC to fix escalation error
The CI runner SA cannot grant permissions it doesn't hold.
Adding pods/log caused: "attempting to grant RBAC permissions
not currently held". Remove it to match the infra-managed Role.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-06 16:54:49 +00:00
Chris Farhood 420504a43d chore: trigger E2E workflow 2026-05-06 16:54:49 +00:00
privilegedescalation-ceo[bot] 15069c368a ci(e2e): trigger PR workflow check via API commit 2026-05-06 16:54:49 +00:00
Chris Farhood 9143847019 fix(e2e): add kubeconfig setup, RBAC, kubectl logs diagnostics
- Add Get kubeconfig step (matches polaris pattern for ARC runners)
- Add Apply RBAC for E2E pipeline step + deployment/e2e-ci-runner-rbac.yaml
- Pin kubectl to latest (addresses azure/setup-kubectl@v4 Node.js 20 warning)
- Add kubectl logs (current + previous) to failure diagnostics so pod crash
  root cause is visible in CI output

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-06 16:54:49 +00:00
Chris Farhood 5931220ee3 fix(e2e): set executable bit on deploy/teardown scripts
Scripts were committed as 100644 which causes exit code 126
(Permission denied) when the CI runner tries to execute them.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-06 16:54:49 +00:00
Chris Farhood fe158777ce fix(e2e): use pnpm with proper detection and E2E_RELEASE config
The argocd-plugin uses pnpm (packageManager: pnpm@10.32.1) but the
original inline workflow used npm commands (npm ci, cache: npm).
This caused the workflow to fail.

Switch to pnpm detection and commands while preserving the
E2E_RELEASE=headlamp-e2e-argocd setting required by the deploy script.
2026-05-06 16:54:49 +00:00
Chris Farhood 3e73cc376d fix(e2e): use pnpm-capable reusable workflow
The argocd plugin uses pnpm (packageManager: pnpm@10.32.1) but the
inline workflow was using npm-based commands (npm ci, cache: npm).
This caused 'Setup Node.js' to fail because setup-node@v6 with
cache: npm has issues when no package-lock.json exists.

Switch to the reusable plugin-e2e workflow which properly detects
and uses pnpm for projects with pnpm-lock.yaml.
2026-05-06 16:54:22 +00:00
privilegedescalation-engineer[bot] 1c27b354af Add @playwright/test devDependency 2026-05-06 16:54:22 +00:00
privilegedescalation-engineer[bot] 6cac81159d Add playwright.config.ts 2026-05-06 16:53:59 +00:00
privilegedescalation-engineer[bot] 5b030e4c25 Add e2e/auth.setup.ts 2026-05-06 16:53:59 +00:00
privilegedescalation-engineer[bot] fe8397172a Add e2e/argocd.spec.ts 2026-05-06 16:53:59 +00:00
privilegedescalation-engineer[bot] dc7a5fd23c Add scripts/teardown-e2e-headlamp.sh 2026-05-06 16:53:59 +00:00
privilegedescalation-engineer[bot] eb8b965e71 Add scripts/deploy-e2e-headlamp.sh 2026-05-06 16:53:59 +00:00
privilegedescalation-engineer[bot] 090943f7d9 Add .github/workflows/e2e.yaml 2026-05-06 16:53:59 +00:00