36 lines
1.4 KiB
YAML
36 lines
1.4 KiB
YAML
name: ci
|
|
|
|
# The gate, on every branch that is not main. Before this, a branch's only check
|
|
# was whatever its author ran locally, and the first time CI saw a change was the
|
|
# push to main — which is also the deploy (#28).
|
|
#
|
|
# Check only. No deploy job, no `secrets.*`, no artifact: nothing here can reach
|
|
# a host, so a branch cannot ship by being pushed. main is excluded because
|
|
# deploy.yaml runs the same gate there as the first half of the deploy, and
|
|
# running it twice would only race the deploy for a runner.
|
|
#
|
|
# The steps are not written here. They live in .gitea/actions/gate, which the
|
|
# `build` job in deploy.yaml uses too, so a branch that is green here has passed
|
|
# exactly the gate main will run.
|
|
|
|
on:
|
|
push:
|
|
branches-ignore: [main]
|
|
|
|
jobs:
|
|
gate:
|
|
# `rust`, not `fedora-*`: the fedora images have no cargo (gitea-runners.md
|
|
# §4). `runner-rust` is built on `runner-fedora-44`, so node and pnpm are
|
|
# there too and one job runs both halves — the same runner `build` uses.
|
|
runs-on: rust
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
# Always the whole gate. deploy.yaml can skip the Rust half on a
|
|
# frontend-only push because it diffs against what is running on bob; a
|
|
# branch has no such baseline, and a branch is where a stale-types or
|
|
# clippy failure is cheapest to find.
|
|
- uses: ./.gitea/actions/gate
|
|
with:
|
|
rust: "false"
|