-
Notifications
You must be signed in to change notification settings - Fork 123
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The virtual
provision does not work with fedora-40
#2771
Comments
Curiously, It doesn't really work though, it hangs at "progress: booting..." for two minutes and then "fail: Failed to connect in 120s.". But that's a different issue. |
This is with tmt-1.31.0-1.fc39.noarch |
I've tried to debug and it So until @frantisekz finds a solution in testcloud and/or fedora metadata are back to normal, this should work: |
Ah, that explains why my ``testcloud -c qemu:///session create fedora:40` attempt also failed, thanks! |
That direct URL command fails to boot unfortunately, similar to
|
Yeah, image seems to be broken :/ |
same here :( |
This may be due to the shim fallback path bug, if this winds up trying to boot the image with Secure Boot enabled. Does https://kojipkgs.fedoraproject.org//work/tasks/3511/115213511/Fedora-Cloud-Base-Generic.x86_64-40-40.qcow2 work? As for the testcloud issue, I'm a bit confused. I don't see why the linked code wouldn't work. I would expect it to find the file Fedora-Cloud-Base-Generic.x86_64-40-20240320.n.0.qcow2 . If you look in the nightlies.json , there's a dict for that file, it has arch x86_64, subvariant Cloud_Base, and type qcow2, and its url is https://kojipkgs.fedoraproject.org/compose/branched/Fedora-40-20240320.n.0/compose/Cloud/x86_64/images/Fedora-Cloud-Base-Generic.x86_64-40-20240320.n.0.qcow2 , which has "branched" in it. |
Hum, no, that image doesn't boot either. However, these images are not completely broken. The same image boots fine and passes tests in openQA - https://openqa.stg.fedoraproject.org/tests/overview?distri=fedora&version=40&build=kiwi-test-NOREPORT&groupid=1 . Unfortunately, it seems the VMs created by testcloud have no display and do not appear to log anything to the serial console, so it's hard to see why the VM doesn't boot. You can connect to it in virt-manager once testcloud creates it, but you can't see any indication of what's going wrong. The obvious thing that changed here is that the images are now being built with Kiwi instead of ImageFactory. |
@frantisekz we might need you to help debug here. |
OK, this is weird. I wanted to get more info out of the VM, so I added a video device to the guest XML:
that had two effects: it makes the VM start logging to the serial console (though virt-manager still says there isn't a display available, I probably missed adding some other device that's required, a device representing the monitor or something), and...it made it all work fine. With that change, the logs I can now see on the serial console show the system booting fine, and |
and on the
and indeed with the video patch, this works fine:
...
...
...
It actually ran some tests and they failed, but I think that's okay, I think it just auto-discovered testcloud's own tests (which are in tmt format) - since I was running out of the testcloud directory - and tried to run them in the wrong context or something... |
yeah, works for me also with the provided patch, thanks @AdamWill |
@AdamWill At the time of investigation i've donwloaded this json and |
Wow. No such image again, @AdamWill . It's Thu Mar 21 08:45:18 AM CET 2024,
File attached (
|
And this is a typo, wrong muscle memory, apparently I've written the |
ahh, that's a candidate compose. yes, those are put in a different directory. I kinda thought, though, that the JSON was supposed to keep data for multiple composes around, so it should still have at least one nightly compose in there. If not, yes, the testcloud code would need changing (it'll need to know the branched release number, which it can from various sources). @frantisekz is responsible for that bit, I think. |
@frantisekz, any quick idea about why
Is there anything special/different about |
as I said above, the obvious difference between f39 and f40 images is that the former were/are produced with ImageFactory, the latter are produced with Kiwi. I don't know exactly why this causes testcloud not to like booting them unless they have a video device, though. |
FTR, the current F40 images don't boot in our more "classic" qemu/libvirt CI infra either. The image refresh failed, and the log shows that both the serial console is broken and also the machine doesn't boot/shutdown properly. I didn't yet investigate, but it may not just affect testcloud. |
They do boot fine in openQA (which runs qemu itself, it doesn't use libvirt). openQA always attaches a video output, though. It also attaches a couple of serial consoles, both of which seem to work fine. CC @Conan-Kudo for the Kiwi angle, I guess. Neal, the issue here is that F40+ Cloud images don't work in testcloud by default; they do seem to work if we hack testcloud up to attach a video device to the VM, for some reason. |
virtual
provision does not work with fedora-40
I don't know what we would be stuck at. The only thing I can think of is maybe GRUB defaulting to a graphical console somehow if we don't specify a console type for grub in the description file? |
CC @schaefi |
Filled https://pagure.io/fedora-kiwi-descriptions/pull-request/42 Thanks @Conan-Kudo for help! |
So, I've verified this with the latest-built fedora-40 (Fedora-Cloud-Base-Generic.x86_64-40-20240408.n.0.qcow2), it works just fine! I'll leave closing the bug to @martinpitt or somebody else after second verification. |
Thanks @frantisekz and @Conan-Kudo ! Works fine now indeed! |
Fixes booting the Generic image on systems without any video device. ref. teemtee/tmt#2771
I want to get an interactive login to a "standard tmt" Fedora 40 machine, to investigate a bug.
tmt try
seems very promising, and indeedtmt try -l fedora
works -- it gets me a Fedora 39 VM login.However, I need Fedora 40. I tried this:
tmt try --help
says:Which is a bit confusing -- why does it suddenly talk about
tmt run
? This doesn't work,tmt run fedora-40@virtual
fails with "No such command 'fedora-40@virtual'".tmt try -l fedora-40@virtual
fails with the same "Could not get image url" as above.The text was updated successfully, but these errors were encountered: