Commit Graph

6 Commits

Author SHA1 Message Date
Chris Farhood fb6bdb50c9 fix(e2e): add diagnostic output to RBAC apply step to diagnose remaining failure
E2E still failing at step 11 after --namespace fix. Adding detailed
diagnostic output to capture actual kubectl error message before
it cascades. Also verifying RoleExists before apply to detect if
Flux already synced the RBAC from infra repo.

Ref: PRI-851
2026-05-06 15:48:54 +00:00
Chris Farhood ac2292e175 fix(e2e): add --namespace to RBAC apply in E2E workflow
E2E workflow was failing at step 'Apply RBAC for E2E pipeline' with
kubectl apply returning exit code 1 with no output. The RBAC file
contains a Role and RoleBinding with metadata.namespace: headlamp-dev.
Adding explicit --namespace=headlamp-dev to the kubectl apply command
resolves the namespace-scoped resource conflict.

Investigation of run 25444677449 (hugh/add-e2e-workflow-argocd-plugin):
- Step 11 'Apply RBAC for E2E pipeline' failed in <1s
- Subsequent steps 12-17 skipped (cascading failure)
- Diagnostics and teardown steps ran correctly

Ref: PRI-851
2026-05-06 15:39:05 +00:00
Chris Farhood 8d564dc373 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 13:45:45 +00:00
Chris Farhood 825fed0446 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-05 15:19:19 +00:00
Chris Farhood 8a603d6c9b 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-05 15:10:59 +00:00
privilegedescalation-engineer[bot] dc79422417 Add .github/workflows/e2e.yaml 2026-05-05 14:55:51 +00:00