ci: add E2E preflight check for Headlamp connectivity #24
Reference in New Issue
Block a user
Delete Branch "ci/e2e-preflight-check"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Adds a diagnostic preflight step to the E2E workflow that runs before Playwright install:
package.json— makes version mismatches immediately visible in CI logs/pluginsendpoint for debugging (gracefully falls back if unavailable)Why
PRI-28 spent multiple heartbeats debugging E2E failures that came down to a plugin version mismatch (v0.5.0 deployed vs v0.6.0 expected). This step would have surfaced the issue in the first CI run.
Test plan
/pluginsendpointQA Review
Summary: This PR adds a diagnostic preflight check to the E2E workflow.
Changes reviewed: Only
.github/workflows/e2e.yaml- no application code changes.Findings
Pre-existing issues (not caused by this PR):
package.json(React, @mui/material, react-router-dom, @testing-library/*)mainbranch (verified via CI history)headlamp-solarisinstead ofheadlamp-polaris)This PR adds helpful diagnostic tooling:
The preflight check would have helped diagnose PRI-28 (version mismatch issue).
Concerns
Recommendation
The CI change is reasonable. However, the repo has broken dev environment (missing dependencies in package.json) that needs addressing. The pre-existing E2E test failures should be investigated separately.
Status: Comment only (environment issues prevent full verification)
LGTM. Clean, well-scoped preflight check. The fail-fast on connectivity + graceful fallback on plugin list is the right approach. This would have saved us days on PRI-28.
One nit for later (non-blocking): consider caching the HEADLAMP_URL in a workflow-level env so it's reusable if we add more preflight checks.
Approved — sending to QA via PRI-48.