diff --git a/playbooks/roles/bifrost-ironic-install/README.md b/playbooks/roles/bifrost-ironic-install/README.md index aca9c136d..859b35629 100644 --- a/playbooks/roles/bifrost-ironic-install/README.md +++ b/playbooks/roles/bifrost-ironic-install/README.md @@ -210,6 +210,10 @@ inspector_default_node_driver: The default driver to utilize when adding setting for their install environment if an alternative default driver is required. +inspector_extra_kernel_options: String value, default undefined. Extra + kernel parameters for the inspector default + PXE configuration. + ### Virtual Environment Install Bifrost can install ironic into a python virtual environment using the diff --git a/playbooks/roles/bifrost-ironic-install/defaults/main.yml b/playbooks/roles/bifrost-ironic-install/defaults/main.yml index de7ba521d..860db3489 100644 --- a/playbooks/roles/bifrost-ironic-install/defaults/main.yml +++ b/playbooks/roles/bifrost-ironic-install/defaults/main.yml @@ -141,6 +141,10 @@ inspector_port_addition: "pxe" # Note: inspector_keep_ports has three valid values: all, present, added inspector_keep_ports: "present" +# String value containing extra kernel parameters for the inspector default +# PXE configuration. +#inspector_extra_kernel_options: + # Inspector defaults inspector: discovery: diff --git a/playbooks/roles/bifrost-ironic-install/templates/inspector-default-boot-ipxe.j2 b/playbooks/roles/bifrost-ironic-install/templates/inspector-default-boot-ipxe.j2 index 696145398..7541cc7b3 100644 --- a/playbooks/roles/bifrost-ironic-install/templates/inspector-default-boot-ipxe.j2 +++ b/playbooks/roles/bifrost-ironic-install/templates/inspector-default-boot-ipxe.j2 @@ -5,6 +5,6 @@ dhcp || reboot goto introspect :introspect -kernel {{ ipa_kernel_url }} ipa-inspection-callback-url=http://{{ hostvars[inventory_hostname]['ansible_' + ans_network_interface ]['ipv4']['address'] }}:5050/v1/continue systemd.journald.forward_to_console=yes ip=${ip}:${next-server}:${gateway}:${netmask} BOOTIF=${mac} nofb nomodeset vga=normal console=ttyS0 +kernel {{ ipa_kernel_url }} ipa-inspection-callback-url=http://{{ hostvars[inventory_hostname]['ansible_' + ans_network_interface ]['ipv4']['address'] }}:5050/v1/continue systemd.journald.forward_to_console=yes ip=${ip}:${next-server}:${gateway}:${netmask} BOOTIF=${mac} nofb nomodeset vga=normal console=ttyS0 {{ inspector_extra_kernel_options | default('') }} initrd {{ ipa_ramdisk_url }} boot diff --git a/releasenotes/notes/inspector-pxe-args-c65acb610507ab08.yaml b/releasenotes/notes/inspector-pxe-args-c65acb610507ab08.yaml new file mode 100644 index 000000000..8eb357065 --- /dev/null +++ b/releasenotes/notes/inspector-pxe-args-c65acb610507ab08.yaml @@ -0,0 +1,11 @@ +--- +features: + - | + Allows additional kernel arguments to be specified in inspector PXE config. + + A number of optional features in the Ironic Python Agent (IPA) are + configured via kernel command line arguments, e.g. ``ipa-collect-lldp``. + + It is now possible to specify additional kernel arguments for use by the + IPA ramdisk during inspection with the ``inspector_extra_kernel_options`` + variable.