Skip to content

feat: script replaying the roadmap#16 robustness scenarios on a test Pi - #70

Open
MateoLostanlen wants to merge 3 commits into
feat/fake-reolink-camerafrom
feat/pi-robustness-replay
Open

MateoLostanlen wants to merge 3 commits into
feat/fake-reolink-camerafrom
feat/pi-robustness-replay

Conversation

@MateoLostanlen

Copy link
Copy Markdown
Member
  • The robustness PRs of pyro-engine (fix(compose): restart the engine when its log goes stale pyro-engine#419, #458, #459, #461, part of Engine robustness roadmap#16) were validated by hand on a test Pi. This script makes those runs repeatable by anyone with a Pi: it builds the engine stack from the PR branches, starts the fake Reolink cameras from this repo, injects each failure (frozen process, camera that never answers, grayscale frames as infrared, frozen or still camera) and checks the expected reaction in the logs and /patrol_status.
  • One subcommand per scenario, all for the six (about 90 min, the detector's own timings), setup for the Pi, real to go back to the real cameras. FAIL exits non-zero and the iptables redirect is removed on exit.
  • README gains a short "Robustness tests on a Pi" section with the scenario table and the two warnings: point API_URL at preprod, no pi-manager deploy during a run.
  • Depends on the fake camera of feat: fake Reolink camera driven by scenarios #65, hence the base branch. Once the pyro-engine PRs are merged, run with BRANCHES= to test develop alone.

Validated on a Pi 5: every scenario passed through the script (419, 458-timeout, 458-health, 459, 461-silent, 461-frozen with its 30 min cooldown). Not run end to end: setup from a bare Pi.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant