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
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
- 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>
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>
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.
The lockfile had 'overrides' section that no longer exists in package.json,
causing 'pnpm install --frozen-lockfile' to fail with config mismatch error.
Regenerated lockfile to match current package.json state.
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.