ephemeral: Add test-basic subcommand#244
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces a new ephemeral test-basic subcommand to the bcvk tool, which serves as a smoke test by booting an ephemeral VM and verifying its health using systemctl is-system-running. The update includes the command logic, a corresponding integration test, and comprehensive documentation. Feedback was provided to improve the robustness of the health check by adding the --wait flag to the systemctl command and to remove an unnecessary -- separator from the SSH arguments to ensure consistency with existing command-line behavior.
Add `bcvk ephemeral test-basic <image>` which boots an ephemeral VM and verifies systemd reached a healthy state via `systemctl is-system-running`. This provides a quick smoke test for bootc container images. Assisted-by: Claude Code (Opus 4.6) Signed-off-by: Xiaofeng Wang <henrywangxf@me.com>
|
|
cgwalters
left a comment
There was a problem hiding this comment.
I know I suggested this as a kind of offhand comment, but a few things here.
- Commands we expose should generally also appear as varlink; maybe going forward we actually try to have the CLI be sugar around varlink just to force this
- If we're making "is system healthy" commands probably it should apply to libvirt too?
- Bigger picture...I would really like bcvk to help be an awesome component of testing frameworks - but without growing into a complete framework itself ideally. But in that vein we need to ask how to make this extensible
Combining the above...one thing I was thinking about here and have some code towards in an unpushed commit is - what if we bridged e.g. the dbus socket or systemd dbus/varlink itself? Worth investigating because then it becomes way more flexible, we aren't just hardcoding one systemd API call.
Add
bcvk ephemeral test-basic <image>which boots an ephemeral VM and verifies systemd reached a healthy state viasystemctl is-system-running. This provides a quick smoke test for bootc container images.Assisted-by: Claude Code (Opus 4.6)