docs(testing): align local commands and CI diagram with actual workflow - #180
Conversation
Three drift fixes against `.github/workflows/ci.yml`: 1. §4.2 local-run snippet used `npm install / npm test`, but CI uses `pnpm install --no-frozen-lockfile / pnpm test` (workflow line 141 sets up `pnpm/action-setup@v4`; lines 156/160 invoke pnpm). A newcomer following the doc would hit a missing-lockfile error. 2. §4.2 etcd image tag was `v3.6.1`. The e2e job pins `v3.5.15` (workflow line 123). Bring the doc in line with what CI actually tests against. 3. §6 CI diagram listed `build-ui` as a node in the fan-out, with the surrounding prose claiming "six jobs". The actual workflow has five jobs (`lint`, `rust-unit`, `build-bin`, `e2e`, `coverage-gate`) and no `build-ui` exists. Drop the phantom node and correct the count. Also note: `rust-unit` already runs against an etcd service container (workflow line 50, `etcd:v3.5.18`), which the diagram now reflects.
|
Warning Rate limit exceeded
You’ve run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. Note 🎁 Summarized by CodeRabbit FreeYour organization has reached its limit of developer seats under the Pro Plan. For new users, CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please add seats to your subscription by visiting https://app.coderabbit.ai/login.If you believe this is a mistake and have available seats, please assign one to the pull request author through the subscription management page using the link above. Comment |
There was a problem hiding this comment.
Pull request overview
Updates docs/testing.md to remove doc drift and better match the repository’s actual CI configuration in .github/workflows/ci.yml, so contributors can run E2E tests locally using the same tooling and service versions CI uses.
Changes:
- Switch local E2E instructions from
npmtopnpm(matching CI). - Pin the local etcd image tag to the version used by the CI
e2ejob. - Update the CI workflow diagram to remove a nonexistent
build-uijob and correct the job count.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| `.github/workflows/ci.yml` defines five jobs that fan out from an | ||
| initial commit: | ||
|
|
||
| ``` | ||
| lint ─┬─ rust-unit (with redis service) | ||
| lint ─┬─ rust-unit (with redis + etcd services) | ||
| │ | ||
| ├─ build-ui ─┬─ build-bin ─ e2e (with etcd + redis services) | ||
| ├─ build-bin ─ e2e (with etcd + redis services) | ||
| │ | ||
| └─ … ─────────────────────────────── coverage-gate | ||
| └─ ─────────────────────────────────── coverage-gate |
Address audit findings on PR #180: 1. §3 integration-test table omitted `aisix-admin/tests/etcd_integration.rs` and its `ADMIN_TEST_ETCD_URL` env var (workflow line 68). The suite has been shipping for a while; doc was lagging. 2. §4.2 etcd version note: clarify that rust-unit pins v3.5.18 while e2e pins v3.5.15 (workflow lines 50 / 123). Either works locally — the doc previously implied a single canonical version. 3. §6 `rust-unit` row updated to mention both `redis:7-alpine` and `quay.io/coreos/etcd:v3.5.18` services.
Summary
Three drift fixes in `docs/testing.md` against `.github/workflows/ci.yml`. Surfaced by the doc-vs-code audit (companion to #179).
1. Wrong package manager (§4.2)
Local-run snippet used `npm install / npm test`, but CI is on pnpm — `pnpm install --no-frozen-lockfile` (workflow line 156) and `pnpm test` (line 160). A new contributor following the doc would hit a missing-lockfile or stale-deps error before their first e2e run.
2. Wrong etcd image tag (§4.2)
Doc said `quay.io/coreos/etcd:v3.6.1`. The CI e2e job pins `v3.5.15` (workflow line 123). Local runs should match what CI tests against.
3. Phantom `build-ui` job (§6)
The CI workflow diagram included a `build-ui` node and the surrounding prose said "six jobs". The actual workflow has five: `lint`, `rust-unit`, `build-bin`, `e2e`, `coverage-gate`. `build-ui` doesn't exist (likely deleted along with the embedded admin UI). Drop the phantom node and correct the count.
Also noted: `rust-unit` already runs against an etcd service container (workflow line 50, `etcd:v3.5.18`), which the new diagram now reflects.
Out of scope
Following PRs in the doc-drift series: `api-admin.md` schema-truth pass, `managed-mode.md` cert-bundle path, `api-proxy.md` error/header drift (latter stacked behind #178).
Test plan
🤖 Generated with Claude Code