ci(frontend): vitest job in Forgejo Actions gate #1135

Merged
bot-backend merged 1 commit from ci/frontend-vitest-job into main 2026-06-07 11:52:10 +00:00
Collaborator

Что

Добавляет job frontend-tests в Forgejo Actions, чтобы влитый vitest-сьют (PR #1132) гонялся на каждом frontend-PR (иначе тесты «сгниют» — будущие PR их не запустят).

Содержимое

Зеркалит backend-gate (#1032): per-job dorny/paths-filter@v3 (новый output frontend, фильтр frontend/** + ci.yml), node:20 + npm-cache на lockfile, npm ci --legacy-peer-deps --no-audit --no-fund (точные флаги frontend/Dockerfile), затем npm run test. Аддитивно — backend-tests не тронут; next build НЕ здесь (тяжёлый, verified в deploy). Новый чек: CI / frontend-tests (pull_request).

Качество

Self-reviewed: YAML валиден, все 3 job на ubuntu-latest (консистентный runner), backend-job byte-unchanged, npm-флаги совпадают с Dockerfile, paths-filter зеркалит существующий паттерн. Этот PR (меняет ci.yml) сам триггерит и backend-tests, и frontend-tests → self-test нового job.

Follow-up (owner/admin — бот не может)

Сделать frontend-tests required-чеком в Forgejo UI (Settings → Branches → branch-protection main), как backend-tests в #1032. До этого job гоняется и репортит, но не блокирует merge.

Refs #999.

## Что Добавляет job `frontend-tests` в Forgejo Actions, чтобы влитый vitest-сьют (PR #1132) гонялся на каждом frontend-PR (иначе тесты «сгниют» — будущие PR их не запустят). ## Содержимое Зеркалит backend-gate (#1032): per-job `dorny/paths-filter@v3` (новый output `frontend`, фильтр `frontend/**` + `ci.yml`), node:20 + npm-cache на lockfile, `npm ci --legacy-peer-deps --no-audit --no-fund` (точные флаги `frontend/Dockerfile`), затем `npm run test`. Аддитивно — `backend-tests` не тронут; `next build` НЕ здесь (тяжёлый, verified в deploy). Новый чек: `CI / frontend-tests (pull_request)`. ## Качество Self-reviewed: YAML валиден, все 3 job на `ubuntu-latest` (консистентный runner), backend-job byte-unchanged, npm-флаги совпадают с Dockerfile, paths-filter зеркалит существующий паттерн. Этот PR (меняет ci.yml) сам триггерит и backend-tests, и frontend-tests → self-test нового job. ## Follow-up (owner/admin — бот не может) Сделать `frontend-tests` **required**-чеком в Forgejo UI (Settings → Branches → branch-protection main), как `backend-tests` в #1032. До этого job гоняется и репортит, но не блокирует merge. Refs #999.
bot-backend added the
scope/frontend
label 2026-06-07 11:52:07 +00:00
bot-backend added 1 commit 2026-06-07 11:52:08 +00:00
ci(frontend): add vitest job to Forgejo Actions gate
All checks were successful
CI / changes (push) Successful in 7s
CI / changes (pull_request) Successful in 5s
CI / frontend-tests (push) Successful in 45s
CI / frontend-tests (pull_request) Successful in 49s
CI / backend-tests (push) Successful in 6m25s
CI / backend-tests (pull_request) Successful in 6m19s
9f32153126
Run the merged frontend vitest suite on every frontend-touching PR so the
tests don't rot. Mirrors the #1032 backend gate: per-job dorny/paths-filter
(new `frontend` output, `frontend/**`), node:20 + npm cache on the lockfile,
`npm ci --legacy-peer-deps --no-audit --no-fund` (exact frontend/Dockerfile
flags), then `npm run test`. Additive — backend-tests job unchanged; no
top-level paths filter so frontend-only PRs already trigger the workflow.
Making frontend-tests a required check is a follow-up in the Forgejo UI.

Refs #999.
bot-backend merged commit 795661557f into main 2026-06-07 11:52:10 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lekss361/gendesign#1135
No description provided.