-
Notifications
You must be signed in to change notification settings - Fork 169
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
Add metal-bios and metal-uefi targets #305
Conversation
Depends #302 |
An architectural question here is whether we should follow the "buildextend" model instead. The issue with that is that the "cloud/metal" split introduced here has changes around the kernel cmdline/networking that would be tricky to do as a "transformation" of a cloud image (or vice versa). One thing that might be nice is if we actually pushed handling the early networking logic to Ignition; e.g. it could detect the oemid and e.g. tell dracut to request networking, and also configure the network adapter. That way the disk image would look a lot closer between the two cases - we'd be doing things dynamically in Ignition. |
@ajeddeloh re my random network/Ignition musings ⬆️ |
OK rebased 🏄♂️ and lifting WIP. This still requires Ignition to read |
OK and now with GPT partitioning by default and a |
Which actually boots when I |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes mostly LGTM some comments scattered.
nice! 🥳 |
One thing I do wonder: If the "no anaconda" work lands soon we will be ripping some of this out. Is that something you'd be OK with ? |
cc @ajeddeloh |
Yeah of course, but the external API should stay the same - e.g. the |
Squashed in the fixes ⬆️ |
re: |
I had thought we'd just have them refer to the same image. |
I guess we can cross that bridge when we get there, but if we do the work to get a combined image I'd rather deprecate |
shrug - we're talking about a few lines of JSON. I don't think it's worth worrying over too much. |
agree. just wanted to set expectations accordingly |
ok relooked over this.. only outstanding comment is #305 (comment) I think |
/me running through a test now |
Split out the "net.ifnames" stuff into a separate kickstart, and generate a raw disk image `metal-bios` if specified. Note to really be useful this requires Ignition to load `/boot/config.ign` or so.
Let's be clear these two things are tightly coupled. Also virt-install is already in Python and it makes sense to do more that way than via bash.
With a `/boot` partition. But today Anaconda doesn't expose an API to explicitly label it `/boot` (or even change the filesystem type). We'll live with that for now. Prep for UEFI.
This builds but I haven't tested running it yet.
And updated again to fix ShellCheck. |
ran a |
Yes but let's not block merging this on that.
|
OK Finally got through with testing. I was able to take the output |
This was deployed in FCOS in coreos/fedora-coreos-pipeline#43 |
Split out the "net.ifnames" stuff into a separate kickstart, and
generate a raw disk image
metal-bios
if specified.Note to really be useful this requires Ignition to load
/boot/config.ign
or so.