diff --git a/docker/nova/nova-libvirt/Dockerfile.j2 b/docker/nova/nova-libvirt/Dockerfile.j2 index fb75e443a8..003bd9d3b3 100644 --- a/docker/nova/nova-libvirt/Dockerfile.j2 +++ b/docker/nova/nova-libvirt/Dockerfile.j2 @@ -31,6 +31,16 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build ] %} {% endif %} + {% if base_arch == 'x86_64' %} + {% set nova_libvirt_packages = nova_libvirt_packages + [ + 'OVMF' + ] %} + {% elif base_arch == 'aarch64' %} + {% set nova_libvirt_packages = nova_libvirt_packages + [ + 'AAVMF' + ] %} + {% endif %} + {% elif base_package_type == 'deb' %} {% set nova_libvirt_packages = [ @@ -54,6 +64,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build ] %} {% elif base_arch == "x86_64" %} {% set nova_libvirt_packages = nova_libvirt_packages + [ + 'ovmf', 'qemu-kvm' ] %} {% endif %} @@ -78,6 +89,13 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build RUN rm -f /etc/libvirt/qemu/networks/default.xml /etc/libvirt/qemu/networks/autostart/default.xml +{% elif base_package_type == 'rpm' %} + + {% if base_arch == 'x86_64' %} +# NOTE(jeffrey4l): for x86_64, nova will validate the existence of /usr/share/OVMF/OVMF_CODE.fd +RUN ln -sf /usr/share/OVMF/OVMF_CODE.secboot.fd /usr/share/OVMF/OVMF_CODE.fd + {% endif %} + {% endif %} COPY extend_start.sh /usr/local/bin/kolla_extend_start diff --git a/releasenotes/notes/bug-1814552-a037354969dcf7e5.yaml b/releasenotes/notes/bug-1814552-a037354969dcf7e5.yaml new file mode 100644 index 0000000000..207f6de5c7 --- /dev/null +++ b/releasenotes/notes/bug-1814552-a037354969dcf7e5.yaml @@ -0,0 +1,6 @@ +--- +fixes: + - | + Fix inability to run UEFI-based images/instances by installing UEFI packages + also in nova-libvirt image which is not based on nova-base. + `LP#1814552 `