RFC: Configurable list of PXE loaders for host provisioning
Context and Problem Statement
Foreman provides several options for the PXE loader in the host creation form. For some users, many of the options are not available in their environment, or they don’t have a use for them.
We could do it like with templates, assign a default to the operating system and then perhaps override it by conditions. This would require some more setup by the Foreman admin, but reducing the list to only the correct one will definitely prevent selecting an incorrect one. (And also not add another setting to the already overwhelming number.)
Decision Outcome
This proposal was discussed at Devconf 2025 with one of our users.
+1 from my side, but also an idea for an alternative design.
We could do it like with templates, assign a default to the operating system and then perhaps override it by conditions. This would require some more setup by the Foreman admin, but reducing the list to only the correct one will definitely prevent selecting an incorrect one. (And also not add another setting to the already overwhelming number.)
I hadn’t thought of this approach, but it could be an alternative to the variant with the settings.
The only downside of this approach is that it adds even more complexity to the process, primarily at the beginning when the process needs to be configured.
+1 for a template approach controlled by assigning it to an operating system or architecture or some other anchor similar to how you assign boot loaders/pxe templates etc
Keeping in mind the critique I have of persistently having to re-assign templates every time a new version of the OS comes out,
The first proposal lets the Foreman Admin reduce the list of PXE loaders to the ones that site infrastructure have been configured for.
The second proposal would be better served by linking it to the subnets. Most of the PXE loaders require dhcpserver setup for the subnet. At our site that config is not the same for all subnets.