Skip to content

ci: run federated edge e2e against real Karmada#280

Merged
ecv merged 1 commit into
mainfrom
ci/federated-e2e-rebased
Jul 15, 2026
Merged

ci: run federated edge e2e against real Karmada#280
ecv merged 1 commit into
mainfrom
ci/federated-e2e-rebased

Conversation

@ecv

@ecv ecv commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Rebase of #248 onto main. The rest of the #247 stack (#224, #225, #226, #227, #228, #276) has landed, so this collapses to the one piece still missing: the federated CI job and the tool-install task it depends on.

What this adds

  • .github/workflows/test-e2e-federated.yml — CI job that stands up the prod-fidelity edge (two kind clusters, real Karmada, EG v1.7.4, Coraza WAF, NSO extension server) and runs the test/e2e-edge/ scenarios against real traffic. Frees runner disk, raises inotify limits, dumps cross-cluster diagnostics on failure.
  • Taskfile.test-infra.yml — a test-infra:tools task installing the pinned binaries (kind v0.32.0, karmadactl v1.15.2, kustomize, cmctl, chainsaw). karmada-up already invoked bin/karmadactl but nothing installed it; this closes the repro gap so CI and a clean checkout come up without hand-placed binaries.

Why the diff is small

The edge scenarios (test/e2e-edge/) and the federation path (config/federation/, #227) had no CI coverage — the "not yet wired into CI" follow-up from #247. The env tasks it builds on (up, karmada-up, e2e) are already on main; only the workflow and the tool task are new.

Verification

  • task test-infra:tools runs clean locally — all five binaries install and execute.
  • The full two-cluster + Karmada run is green on this job (CI is linux/amd64).

Supersedes #248. Closes the last open child of #247.

Add a CI job that stands up the production-fidelity edge — two kind
clusters wired with real Karmada federation, the production Envoy Gateway
version, the Coraza WAF data plane, and the NSO extension server — and
drives the edge e2e scenarios through real traffic. The existing
test-e2e.yml only runs the non-federated test/e2e suite; the edge
scenarios and the federation delivery path had no CI coverage.

This is the last remaining piece of the #247 stack (#224-#228, #276 all
landed on main); the workflow now collapses to a single file plus the
tool-install task its steps depend on.

Key changes:
- Add .github/workflows/test-e2e-federated.yml: free disk + raise inotify
  limits for the Karmada footprint, install pinned tools, bring up the
  env, stand up Karmada, run the edge scenarios, dump cross-cluster
  diagnostics on failure
- Add a test-infra:tools task that installs the pinned binaries the env
  needs (kind, karmadactl, kustomize, cmctl, chainsaw) so CI and a clean
  checkout no longer rely on hand-placed binaries; karmadactl is pulled
  as a release binary because its go.mod replace directives block go
  install
@ecv
ecv merged commit 1194b97 into main Jul 15, 2026
12 checks passed
@ecv
ecv deleted the ci/federated-e2e-rebased branch July 15, 2026 19:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants