Add a Rust CI job (test + clippy + fmt + embed-web build) #25
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context
Until the frontend milestone, the repo had no CI workflow at all — the backend was verified only by local
cargo test. The frontend M1 work added.gitea/workflows/ci.yamlwith awebjob (typecheck/lint/test/build/bundle-size), but there is still no Rust job. So the whole Rust workspace (domain/db/api/auth/search/server) is currently unguarded in CI.What to do
Add a
rustjob to.gitea/workflows/ci.yaml(alongsideweb):#[sqlx::test]provisioning temp DBs — needs a role that canCREATE DATABASE) and Meilisearch (thesearchcrate tests +api's on-writereindextest requireMEILI_URL/MEILI_MASTER_KEY).cargo +nightly fmt --check,cargo clippy --workspace --all-targets -- -D warnings,cargo test --workspace(withDATABASE_URL+MEILI_URL+MEILI_MASTER_KEYenv).cargo build -p server --features embed-web(and optionallycargo test -p server --features embed-web --test embed). This needs thewebbuild output, so either chain it after the web job or build the SPA within the rust job.Acceptance
rustCI job runs fmt-check + clippy + workspace tests against Postgres + Meili services and is green.embed-webbuild path is exercised in CI so the embedded-SPA release artifact can't silently break.Source: frontend SPA milestone 1 final review — pre-existing gap (no Rust CI).