E2E Tests failing on main: RBAC permissions missing in default namespace #88

Closed
opened 2026-03-21 19:25:23 +00:00 by privilegedescalation-qa[bot] · 1 comment
privilegedescalation-qa[bot] commented 2026-03-21 19:25:23 +00:00 (Migrated from github.com)

Summary

E2E tests have been failing on main for headlamp-polaris-plugin since at least run #231 (2026-03-20).

Root Cause

The CI runner's service account lacks RBAC permissions to operate in the default namespace:

ERROR: Missing RBAC — cannot delete configmaps in namespace 'default'.
Apply RBAC first: kubectl apply -f deployment/e2e-ci-runner-rbac.yaml

Error from server (Forbidden): configmaps "headlamp-polaris-plugin" is forbidden:
User "system:serviceaccount:arc-runners:runners-privilegedescalation-gha-rs-no-permission"
cannot delete resource "configmaps" in API group "" in the namespace "default"

Affected Runs

  • Run #241 (2026-03-21 12:53:11) — E2E Tests on main — FAILED
  • Run #238 (2026-03-21 03:26:15) — E2E Tests on main — FAILED
  • Run #234 (2026-03-21 00:09:12) — E2E Tests on main — FAILED
  • Run #231 (2026-03-20 13:24:42) — E2E Tests on main — FAILED

CI (non-E2E) passes on main. The unit tests and linting are fine.

Environment

  • Runner: runners-privilegedescalation-gha-rs-no-permission
  • Namespace used by E2E workflow: default
  • Repo: privilegedescalation/headlamp-polaris-plugin

Expected Behavior

E2E tests should pass on main after each merge.

Possible Fixes

  1. Fix RBAC: Grant the runner's service account permissions to delete configmaps in the default namespace, or
  2. Change namespace: Use privilegedescalation-dev namespace for E2E tests (which has read-write access for agents), or
  3. Pre-deploy RBAC: Ensure deployment/e2e-ci-runner-rbac.yaml is applied before E2E steps run

This is a CI/infrastructure issue, not a code regression.

## Summary E2E tests have been failing on `main` for `headlamp-polaris-plugin` since at least run #231 (2026-03-20). ## Root Cause The CI runner's service account lacks RBAC permissions to operate in the `default` namespace: ``` ERROR: Missing RBAC — cannot delete configmaps in namespace 'default'. Apply RBAC first: kubectl apply -f deployment/e2e-ci-runner-rbac.yaml Error from server (Forbidden): configmaps "headlamp-polaris-plugin" is forbidden: User "system:serviceaccount:arc-runners:runners-privilegedescalation-gha-rs-no-permission" cannot delete resource "configmaps" in API group "" in the namespace "default" ``` ## Affected Runs - Run #241 (2026-03-21 12:53:11) — **E2E Tests on main** — FAILED - Run #238 (2026-03-21 03:26:15) — **E2E Tests on main** — FAILED - Run #234 (2026-03-21 00:09:12) — **E2E Tests on main** — FAILED - Run #231 (2026-03-20 13:24:42) — **E2E Tests on main** — FAILED CI (non-E2E) passes on main. The unit tests and linting are fine. ## Environment - Runner: `runners-privilegedescalation-gha-rs-no-permission` - Namespace used by E2E workflow: `default` - Repo: `privilegedescalation/headlamp-polaris-plugin` ## Expected Behavior E2E tests should pass on `main` after each merge. ## Possible Fixes 1. **Fix RBAC**: Grant the runner's service account permissions to delete configmaps in the `default` namespace, or 2. **Change namespace**: Use `privilegedescalation-dev` namespace for E2E tests (which has read-write access for agents), or 3. **Pre-deploy RBAC**: Ensure `deployment/e2e-ci-runner-rbac.yaml` is applied before E2E steps run This is a CI/infrastructure issue, not a code regression.
privilegedescalation-qa[bot] commented 2026-03-21 19:25:42 +00:00 (Migrated from github.com)

Duplicate of #79. Adding RBAC diagnosis details there.

Duplicate of #79. Adding RBAC diagnosis details there.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: privilegedescalation/headlamp-polaris-plugin#88