mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-27 22:27:21 -05:00
fix: build the site in pull request validation
mkdocs was installed by the deploy alone, after the merge, and wiki/ was not a validation path: a dead link or a stray heading failed the deploy on main with nothing in front of it. The test job now runs the deploy's site build, and every site input triggers validation.
This commit is contained in:
1 parent
348c56e94c
commit
fbc8b1877e
4 files changed
+82
-7
No files matched your search
@@ -14,7 +14,7 @@ Budget target: ~175 minutes/month on the GitHub free tier.
|
||||
| Workflow | File | Trigger |
|
||||
|----------|------|---------|
|
||||
| Deploy Site | `deploy-site.yml` | Push to main (platforms, emulators, provenance, wiki, scripts, database.json, mkdocs.yml), manual |
|
||||
| Validation | `validate.yml` | PR and push to main touching `bios/**`, `platforms/**`, `emulators/**`, `schemas/**`, `scripts/**`, `tests/**`, `install.py`, `install.sh` or `install.ps1` |
|
||||
| Validation | `validate.yml` | PR and push to main touching `bios/**`, `platforms/**`, `emulators/**`, `schemas/**`, `scripts/**`, `tests/**`, `install.py`, `install.sh`, `install.ps1`, or any other input of the site build (`wiki/**`, `docs_assets/**`, `provenance/**`, `exports/**`, `install/**`, `database.json`, `release.json`, `derivable.json`, `mkdocs.yml`) |
|
||||
|
||||
Upstream BIOS lists are not scraped on a schedule. A maintainer runs the
|
||||
scrapers by hand (see [adding a scraper](adding-a-scraper.md)), reviews the
|
||||
@@ -110,8 +110,10 @@ A profile written from a clone can cite lines that do not hold the value it
|
||||
declares while schemas and tests pass it. This job confronts it with its
|
||||
upstream. An edited profile is not held to it.
|
||||
|
||||
**run-tests.** Runs `python -m unittest discover -s tests -t . -v`. Must pass before a
|
||||
merge, and again on the commit a direct push puts at the head of main.
|
||||
**run-tests.** Runs `python -m unittest discover -s tests -t . -v`, then builds the
|
||||
site as Deploy Site does (`generate_site.py`, `mkdocs build --strict`,
|
||||
`validate_site.py`) whatever the suite returned. Must pass before a merge, and
|
||||
again on the commit a direct push puts at the head of main.
|
||||
|
||||
**label-pr** (pull requests only). Auto-labels the PR based on changed paths:
|
||||
|
||||
|
||||
@@ -299,8 +299,10 @@ files it points at gives the installer a 404.
|
||||
|
||||
The `validate.yml` workflow runs `python -m unittest discover -s tests -t . -v` on both
|
||||
roads into main: every pull request, and every direct push, that touches
|
||||
`bios/`, `platforms/`, `emulators/`, `schemas/`, `scripts/`, `tests/` or
|
||||
`install.py`. Work reaches main by push as often as by pull request, so a suite
|
||||
`bios/`, `platforms/`, `emulators/`, `schemas/`, `scripts/`, `tests/`,
|
||||
`install.py` or an input of the site build such as `wiki/`. The same job then
|
||||
builds the site with `mkdocs build --strict`, so a page that would fail the
|
||||
deploy fails the pull request. Work reaches main by push as often as by pull request, so a suite
|
||||
wired to pull requests alone would guard the road nobody takes. The test job
|
||||
(`run-tests`) runs in parallel with schema validation, and on a pull request
|
||||
with BIOS validation and auto-labeling too. Those two read pull request context
|
||||
|
||||
Reference in new issue
Block a user