Add simulation testing of custom iso #1

Merged
antman merged 33 commits from spike-simulation-testing into main 2026-07-26 02:11:42 +00:00
Owner

Motivation

We need a reliable way of testing that the OS installs and configures correctly. By using a virtual machine and installing the ktc custom iso, we can then run tests within the VM to assert it is configured correctly and behaving correctly.

This approach needs to be high fidelity and make it easy to write new tests.

Solution

Using Deno package @antman/sim-test makes simulation tests easy to write.

Running a VM using virt-install and connecting via virsh requires ensuring isatty returns true as both these programmes expect a tty. The easiest way to do this was to spawn a pseudo terminal using python.

Added testing utilities to make simplify developing additional tests in future. I think this is a good basis to start with that leaves plenty of room to improve things in future.

## Motivation We need a reliable way of testing that the OS installs and configures correctly. By using a virtual machine and installing the ktc custom iso, we can then run tests within the VM to assert it is configured correctly and behaving correctly. This approach needs to be **high fidelity** and make it easy to write new tests. ## Solution Using Deno package `@antman/sim-test` makes simulation tests easy to write. Running a VM using `virt-install` and connecting via `virsh` requires ensuring `isatty` returns true as both these programmes expect a tty. The easiest way to do this was to spawn a pseudo terminal using python. Added testing utilities to make simplify developing additional tests in future. I think this is a good basis to start with that leaves plenty of room to improve things in future.
antman merged commit 8b59c21d59 into main 2026-07-26 02:11:42 +00:00
antman deleted branch spike-simulation-testing 2026-07-26 02:11:42 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
kill-the-cloud/os-installer!1
No description provided.