generated from CubeCraft-Creations/Tracehound
ci: consolidate frontend gates into one job
The 3-job ci.yaml re-cloned actions/checkout from github.com per job, and those clones intermittently fail with connection resets (build job died there even though lint/typecheck/test passed). Collapse to a single job: one checkout, then lint -> typecheck -> test -> build. Fewer github.com clones, faster, less flaky. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -1,8 +1,9 @@
|
||||
name: CI
|
||||
|
||||
# Frontend quality gates (lint, typecheck, test, build-check).
|
||||
# Actual build + deploy of the hub is handled by build-dev.yaml
|
||||
# (pull-based release → Pi self-update).
|
||||
# One job on purpose: the runner fetches each action from github.com,
|
||||
# which is flaky (connection resets), so we check out once instead of
|
||||
# re-cloning per job. The real hub build + deploy is build-dev.yaml.
|
||||
|
||||
on:
|
||||
push:
|
||||
@@ -11,29 +12,12 @@ on:
|
||||
branches: [dev, main]
|
||||
|
||||
jobs:
|
||||
lint-and-typecheck:
|
||||
quality:
|
||||
runs-on: go-react
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- run: npm ci
|
||||
- run: npm run lint
|
||||
- run: npx tsc --noEmit
|
||||
|
||||
test:
|
||||
needs: lint-and-typecheck
|
||||
runs-on: go-react
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- run: npm ci
|
||||
- run: npm test
|
||||
|
||||
# Verify the frontend compiles. No artifact upload — Gitea Actions
|
||||
# doesn't support upload-artifact@v4, and build-dev.yaml produces the
|
||||
# real, deployed artifact anyway.
|
||||
build:
|
||||
needs: test
|
||||
runs-on: go-react
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- run: npm ci
|
||||
- run: npm run build
|
||||
|
||||
Reference in New Issue
Block a user