tmt icon indicating copy to clipboard operation
tmt copied to clipboard

Improve TMT user experience on SilverBlue system

Open jkonecny12 opened this issue 3 years ago • 10 comments

When you are on SilverBlue system you are trying to avoid adding packages as layers to the system. So, it's great that you have podman example in the documentation but you can't use this for running the tests if they using container or VM. Could you please improve this experince?

Pain points I saw now:

  • The install example will not mount existing project directory.
  • The container tests won't work out of the box.
  • The VM tests won't work out of the box. (not tested but without access to /dev/kvm it won't work)

The best option would be to have a working Toolbx image, however, I guess that is not doable because it's always rootless and you probably need privilege and rootfull container.

jkonecny12 avatar Jan 29 '22 09:01 jkonecny12

Thanks for filing, I have also Silverblue on my refreshed laptop, so I believe I can try to come up here with some solutions.

thrix avatar Jan 29 '22 09:01 thrix

If I run the existing container test with: podman run --privileged -it --rm -v .:/my_project:z quay.io/testing-farm/tmt-all bash the output is:

stderr (1/1 lines)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Error: 'overlay' is not supported over overlayfs, a mount_program is required: backing file system is unsupported for this graph driver

Failed to check for container image 'fedora:rawhide'. Reason: Command returned '125'.

jkonecny12 avatar Jan 29 '22 09:01 jkonecny12

Another great possibility would be to use flatpak-spawn for running working with the podman outside of the container?

Not sure if that is doable, never used that command :stuck_out_tongue_winking_eye: .

jkonecny12 avatar Jan 29 '22 09:01 jkonecny12

  • The VM tests won't work out of the box. (not tested but without access to /dev/kvm it won't work)

Addressed in https://copr.fedorainfracloud.org/coprs/frantisekz/testcloud-wip/ ( https://pagure.io/testcloud/pull-request/115# ), updated tmt build will be submitted there later today.

On missing /dev/kvm, testcloud will now fall back to TCG even on x86.

frantisekz avatar Mar 07 '22 13:03 frantisekz

I wasn't aware of the test cloud, it looks great!

However, it needs to be documented. If I understand it correctly it needs user in a testcloud group which is not that straight forward on SB right now.

Or is the testcloud used even now by the TMT and you are just extending it?

jkonecny12 avatar Mar 25 '22 22:03 jkonecny12

I think that the best solution to this issue would be:

  • quay.io/testing-farm/tmt-* to support podman in podman solution
  • add --device /dev/kvm (or how it is correctly used?) to the container parameters in the documentation

jkonecny12 avatar Mar 25 '22 22:03 jkonecny12

So a small update here, I use tmt in toolbox, and that works well, except container provisioner.

thrix avatar Apr 30 '24 09:04 thrix

Would it be working if we use host-spawn as podman executable?

jkonecny12 avatar May 07 '24 08:05 jkonecny12

For some reason it doesn't seem to work. Not sure why, I can try to investigate later.

jkonecny12 avatar May 14 '24 12:05 jkonecny12

Some additional news, I have a patch for also supporting container provisioner :)

thrix avatar Sep 19 '24 22:09 thrix