Test steps/results (Upgrade: Ussuri -> Victoria) ------------------------------------------------ The 'test' server with UEFI was started on Ussuri with the patch applied (i.e., it boots correctly; see comment #15). Now we upgrade from Openstack Ussuri to Victoria, apply the patch, and restart the 'test' server (it still boots correctly; as in comment #16). Upgrade Reference: https://docs.openstack.org/project-deploy-guide/charm-deployment-guide/wallaby/upgrade-openstack.html Commands and versions before/after: $ juju config rabbitmq-server source=cloud:focal-victoria $ juju config keystone openstack-origin=cloud:focal-victoria keystone 17.0.1 ... keystone 18.1.0 ... $ juju config cinder openstack-origin=cloud:focal-victoria cinder 16.4.2 ... cinder 17.4.0 ... $ juju config glance openstack-origin=cloud:focal-victoria glance 20.2.0 ... glance 21.1.0 ... $ juju config neutron-api openstack-origin=cloud:focal-victoria neutron-api 16.4.2 ... neutron-api 17.4.1 ... $ juju config neutron-gateway openstack-origin=cloud:focal-victoria neutron-gateway 16.4.2 ... neutron-gateway 17.4.1 ... $ juju config placement openstack-origin=cloud:focal-victoria placement 3.0.1 ... placement 4.0.0 ... $ juju config nova-cloud-controller openstack-origin=cloud:focal-victoria nova-cloud-controller 21.2.4 ... nova-cloud-controller 22.4.0 ... $ juju config nova-compute openstack-origin=cloud:focal-victoria nova-compute 21.2.4 ... nova-compute 22.4.0 ... Verified that the config option is still in nova.conf: /etc/nova/nova.conf:ubuntu_libvirt_uefi_loader_path = True Applied the changes. Restarted nova-compute.service. The old XML from Ussuri (VM is still running) $ juju ssh nova-compute/0 sudo virsh dumpxml instance-00000002 2>&1 | sed -n '//,/<\/os>/p' hvm /usr/share/OVMF/OVMF_CODE.fd /var/lib/libvirt/qemu/nvram/instance-00000002_VARS.fd Stop/Start the server: $ openstack server stop test $ openstack server show test | grep -e vm_state -e status -e task_state -e instance_name | OS-EXT-SRV-ATTR:instance_name | instance-00000002 | | OS-EXT-STS:task_state | None | | OS-EXT-STS:vm_state | stopped | | status | SHUTOFF | $ openstack server start test $ openstack server show test | grep -e vm_state -e status -e task_state -e instance_name | OS-EXT-SRV-ATTR:instance_name | instance-00000002 | | OS-EXT-STS:task_state | None | | OS-EXT-STS:vm_state | active | | status | ACTIVE | The new XML from Victoria (VM restarted; loader changed as expected in Victoria too): $ juju ssh nova-compute/0 sudo virsh dumpxml instance-00000002 2>&1 | sed -n '//,/<\/os>/p' hvm /usr/share/OVMF/OVMF_CODE.fd /var/lib/libvirt/qemu/nvram/instance-00000002_VARS.fd $ openstack console log show test | grep -o 'test login:' test login: