Files
daynivo-kiosk-os/.github/workflows/ci.yml
T
rothmanandClaude Opus 5.5 f8303754f7 Releases on Gitea, one-line installer and auto-update (1.1.0)
- .github/workflows/release.yml: a tag vX.Y.Z runs the tests, publishes
  daynivo-kiosk-os-X.Y.Z.tar.gz (+ .sha256) and install-online.sh as a
  Gitea release, then builds the SD image with pi-gen and attaches it.
- install-online.sh: curl | sudo bash installer for the latest release.
- voxip-kiosk-updater: checks the latest release, verifies and unpacks a
  newer one under /opt/daynivo-kiosk-os and runs its update.sh. A daily
  timer checks around 03:00 and installs when auto_update is on.
- Web interface: Systeem -> Software-updates with the auto-update switch,
  check now and install now (helper verbs update-check / update-install).
- CI checks out with plain git, so it runs on Gitea's act_runner too.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-05 19:30:34 +01:00

38 lines
1.3 KiB
YAML

name: CI
on:
push:
branches: ["**"]
pull_request:
jobs:
test-bookworm:
# Same Python, Flask and argon2 versions as Raspberry Pi OS Bookworm.
runs-on: ubuntu-latest
container: debian:bookworm
steps:
- name: Install Debian packages
run: |
apt-get update
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
ca-certificates git python3 python3-flask python3-argon2 python3-websocket python3-pytest shellcheck
- name: Checkout
# Plain git: JavaScript actions need Node, which debian:bookworm doesn't have.
run: |
git clone "${{ github.server_url }}/${{ github.repository }}.git" .
git checkout "${{ github.sha }}"
- name: Tests
run: python3 -m pytest -p no:cacheprovider
- name: Shellcheck
run: shellcheck -S warning install.sh install-online.sh update.sh uninstall.sh tools/release-upload.sh image/build.sh image/stage-voxip/prerun.sh image/stage-voxip/00-voxip/00-run.sh bin/voxip-kiosk-x
test-latest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.13"
- run: pip install -r requirements-dev.txt
- run: python -m pytest