92eb477798
As an operator, I may wish to provide DHCP boot options for hosts not managed by bifrost using the bifrost dnsmasq server. If a dhcp-boot configuration option is provided to dnsmasq via a file in /etc/dnsmasq.d/, and the server is not booted via iPXE, it will be overridden by the undionly.kpxe option added by bifrost in /etc/dnsmasq.conf. This occurs because the negated tag match !ipxe used in the /undionly.kpxe dhcp-boot entry will match all hosts not using iPXE. The dhcp-boot entries are processed in order and the last matching entry wins. Since the config-dir option appears before the dhcp-boot options, user-provided options are processed first and are therefore overridden. The solution here is fairly simple - use a positive match for the ipxe tag: dhcp-boot=tag:ipxe,http://host:port/boot.ipxe dhcp-boot=/undionly.kpxe An entry with a tag will always win over the entry without a tag specified, so it is now possible to add a rule to override undionly.kpxe. Change-Id: Ic0637e14504def73fbc0333eee9dc2456c57c32e Closes-Bug: #1675367
18 lines
735 B
YAML
18 lines
735 B
YAML
---
|
|
fixes:
|
|
- |
|
|
Allows ``undionly.kpxe`` boot option to be overridden.
|
|
|
|
As an operator, I may wish to provide DHCP boot options for hosts not
|
|
managed by bifrost using the bifrost dnsmasq server.
|
|
|
|
Previously, if a ``dhcp-boot`` configuration option was provided to dnsmasq
|
|
via a file in ``/etc/dnsmasq.d/``, and the server was not booted via iPXE,
|
|
the option would have been overridden by the ``undionly.kpxe`` option added
|
|
by bifrost in ``/etc/dnsmasq.conf``.
|
|
|
|
Bifrost now supports user-provided ``dhcp-boot`` options in
|
|
``/etc/dnsmasq.d``. These should be specified with an appropriate set of
|
|
tags to match against to ensure that the rule overrides the default rule
|
|
configured by bifrost.
|