Open jlebon opened 5 months ago
In the case where the iscsi target is mounted on the live system before running coreos-installer (this is how we test it), it appears as any other block device, so the only way to detect that is to look for specific kargs. I'll try to do something but i fear this may be brittle. That is not a real issue if it's just a warning though
We have pretty good APIs around handling kargs so it shouldn't be too bad to look for any rd.iscsi.*
kargs to trigger the warning.
It's also possible to tell if the block device is an iSCSI target using iscsiadm
(or just looking at the same e.g. sysfs spot it looks for). But just keying off the kargs is probably enough.
When installing to an iSCSI device, using
--copy-network
to define networking in the initramfs is explicitly unsupported: https://github.com/coreos/fedora-coreos-config/blob/206cc56fe0f0866f18f4c5c0fbd117dec77944ea/overlay.d/05core/usr/lib/dracut/modules.d/35coreos-ignition/coreos-diskful-generator#L114-L117As the comment there explains,
--copy-network
relies on having access to the bootfs during early boot, which is not possible in iSCSI since you need networking in the first place to access the disk.We should have coreos-installer detect and warn about this case.
It could still be valid though to use
--copy-network
with that caveat if you don't need it defined in the initramfs, but you still want to use it as a way to propagate to the real root. (Though... hmm, I think we need to adapt the code above so that instead of neutering it entirely, we still run it, but after we have access to the bootfs.)