tiny-pilot / tinypilot

Use your Raspberry Pi as a browser-based KVM.
https://tinypilotkvm.com
MIT License
2.95k stars 244 forks source link

Mega: End-to-end test the TinyPilot Debian package install #1691

Closed mtlynch closed 7 months ago

mtlynch commented 7 months ago

One of the things we lost when we vanquished Ansible from our install process (https://github.com/tiny-pilot/tinypilot/issues/1596) was that Ansible tested the idempotence of a TinyPilot install.

Currently, changes to our installer are error-prone and time-consuming to test (see regression of https://github.com/tiny-pilot/tinypilot/pull/1615). It's worth investing in some e2e testing scripts to make sure the install works as we expect.

Notes

The rough idea I have in mind is:

  1. Create a Dockerfile that inherits from debian:bullseye and makes whatever changes to make our install work (e.g., we'll probably have to populate a /boot/config.txt file with dummy data)
  2. Build that Dockerfile in CI and run it on an ARM instance
  3. Run a script that runs through different install scenarios to verify that our install does what we expect

Things to test

mtlynch commented 7 months ago

Forgot we already had this in #1659. Closing as dupe.