chore(ci): check icons and i18n

This commit is contained in:
Edouard Vanbelle
2026-06-05 14:18:27 +02:00
parent 49f9a14ef0
commit 8b08b081c5
2 changed files with 31 additions and 2 deletions
+22
View File
@@ -35,6 +35,10 @@ jobs:
- '.grit'
- '.stylelintrc.json'
- 'jsconfig.json'
# Audit scripts that gate frontend correctness — touch
# them and the frontend job must re-run.
- 'tools/check-missing-translations.py'
- 'tools/check-icons.py'
backend:
- 'src/**'
- 'Cargo.toml'
@@ -75,6 +79,24 @@ jobs:
- name: Run TypeScript check
run: tsc -p jsconfig.json --noEmit
- name: Check locale files are at parity with en.json
# Python 3 stdlib only — no setup step needed.
# `--check-only` keeps the CI log terse; failures still surface
# via exit code (the script returns 1 when any non-English
# locale is missing a key present in en.json). Mirrors the
# `--check-only` flag on `tools/check-icons.py` below.
# Run locally without --check-only to see the missing keys.
run: python3 tools/check-missing-translations.py --check-only
- name: Check FA icons referenced in static/ are registered
# `--check-only` skips the Font-Awesome clone and the icons.js
# patch — it just scans `fas fa-<name>` references and diffs
# them against OxiIcons. Exit 1 if any used icon is absent
# from the registry. Run locally without --check-only to
# auto-add missing entries from a checked-out Font-Awesome
# source.
run: python3 tools/check-icons.py --check-only
rust-fmt:
name: Rustfmt
needs: changes
+9 -2
View File
@@ -74,8 +74,8 @@ db-down:
front-dev:
PROFILE=dev cargo run
# front: check all (linter, format, type, ...)
front-check: front-fmt front-lint front-type front-rules
# front: check all (linter, format, type, icons, translations...)
front-check: front-fmt front-lint front-type front-rules front-check-icons front-check-i18n
front-fmt:
biome format static/
@@ -91,6 +91,13 @@ front-type:
front-rules:
stylelint static/css/
front-check-icons:
tools/check-icons.py --check-only
front-check-i18n:
tools/check-missing-translations.py --check-only
# end-to-end Playwright tests
front-test:
cd tests/e2e && npm test