Assuming the operating system already exists, go to “Hosts > Provision Templates”, select the matching one like “Kickstart default PXEGrub2”, on the “Association” tab move the operating sytem from applicable to selected and submit.
Afterwards go to “Hosts > Operating systems”, select the operating system, on the “Templates” tab make the associated template the default for Grub2.
Now in the Host wizard you can chose the bootloader.
What should the bootloader be set to? I currently have it as Grub2 UEFI, and when that happens my system boots to a grub prompt. It appears to pull down grub2/grubx64.efi without issue. But then just drops into a grub prompt. How do I get it beyond here?
Foreman-installed should have installed grub2-efi and copied from /boot/efi/EFI automatically for you. Check installer logs why it was missing, it only does this if you enable TFTP smart-proxy tho.
Anyway, all you need to do at this point is to use the PXE loader option. Grub2 is the best option because this is what Red Hat engineers maintain for EFI environment, you can also build PXELinux EFI from sources and then you can use PXELinux as well.
Also, HTTP UEFI works in Foreman now, just enable “httpboot” smart-proxy module and pick Grub2 HTTP UEFI boot option. I suggest to use HTTP booting from now on, if you can get rid of TFTP/PXE, just do it!
Warning: In that case you need to copy grub2 from Fedora Rawhide as Grub2 developers fixed few bugs for us just few weeks ago.