Skip to content

Live adjustments: the software H.265 rung, and the three things it needed #275

Live adjustments: the software H.265 rung, and the three things it needed

Live adjustments: the software H.265 rung, and the three things it needed #275

Workflow file for this run

name: check
# Gate pull requests on the same minification the release build runs: terser over
# every hand-written .js followed by `node --check` on the result, plus clean-css
# over the CSS.
#
# dist.yml only fires on push to master, so before this nothing ran on a PR at
# all — a syntax error or a construct terser choked on reached master unnoticed
# and broke the rolling dist release the firmware buildroot package fetches.
#
# This deliberately runs `npm run build:dist`, the very script dist.yml uses,
# rather than reimplementing the terser invocation: a gate that duplicated the
# build would be free to drift away from it. Node is pinned to the same version
# for the same reason.
on:
pull_request:
workflow_dispatch:
permissions:
contents: read
concurrency:
group: check-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- run: npm ci
- run: npm run build:dist
templates:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# universe; same 0.9.36 the cameras ship, just not the musl/mips build
- run: sudo apt-get update && sudo apt-get install -y haserl
- run: ./tools/lint-templates.sh
# The shipped bootstrap.min.css is a PurgeCSS subset of upstream, cut to the
# classes the tree actually uses — which changes whenever markup does. It was
# regenerated by hand and went 65 commits stale once: classes in live markup
# (ms-auto, col-md-8, …) silently resolved to nothing, and layout decisions
# started routing around the gaps. So regenerate here and fail the PR when
# the committed file differs: the fix is `./tools/regen-bootstrap-css.sh`
# and committing the result. Versions are pinned in that script; only a
# markup change (or a deliberate bump there) can produce a diff.
purgecss:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- run: ./tools/regen-bootstrap-css.sh
- run: git diff --exit-code --stat www/a/bootstrap.min.css