Reviewed: https://review.opendev.org/c/openstack/nova/+/925208 Committed: https://opendev.org/openstack/nova/commit/0809f75d7921fe01a6832211081e756a11b3ad4e Submitter: "Zuul (22348)" Branch: master
commit 0809f75d7921fe01a6832211081e756a11b3ad4e Author: Julien Le Jeune <[email protected]> Date: Tue Jul 30 15:45:48 2024 +0200 Skip snapshot test when missing qemu-img Since the commit the remove AMI snapshot format special casing has merged, we're now running the libvirt snapshot tests as expected. However, for those tests qemu-img binary needs to be installed. Because these tests have been silently and incorrectly skipped for so long, they didn't receive the same maintenance as other tests as the failures went unnoticed. Change-Id: Ia90eedbe35f4ab2b200bdc90e0e35e5a86cc2110 Closes-bug: #2075178 Signed-off-by: Julien Le Jeune <[email protected]> ** Changed in: nova Status: In Progress => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Compute (nova). https://bugs.launchpad.net/bugs/2075178 Title: test_snapshot_running test fails if qemu-img binary is missing Status in OpenStack Compute (nova): Fix Released Bug description: When qemu-img binary is not present on the system, this test fails like we can see on that log: ====================================================================== ERROR: nova.tests.unit.virt.test_virt_drivers.LibvirtConnTestCase.test_snapshot_running ---------------------------------------------------------------------- pythonlogging:'': {{{ 2024-07-30 15:47:15,058 INFO [nova.db.migration] Applying migration(s) 2024-07-30 15:47:15,170 INFO [nova.db.migration] Migration(s) applied 2024-07-30 15:47:15,245 INFO [nova.db.migration] Applying migration(s) 2024-07-30 15:47:15,901 INFO [nova.db.migration] Migration(s) applied 2024-07-30 15:47:15,997 WARNING [oslo_policy.policy] JSON formatted policy_file support is deprecated since Victoria release. You need to use YAML format which will be default in future. You can use ``oslopolicy-convert-json-to-yaml`` tool to convert existing JSON-formatted policy file to YAML-formatted in backward compatible way: https://docs.openstack.org/oslo.policy/latest/cli/oslopolicy-convert-json-to-yaml.html. 2024-07-30 15:47:15,998 WARNING [oslo_policy.policy] JSON formatted policy_file support is deprecated since Victoria release. You need to use YAML format which will be default in future. You can use ``oslopolicy-convert-json-to-yaml`` tool to convert existing JSON-formatted policy file to YAML-formatted in backward compatible way: https://docs.openstack.org/oslo.policy/latest/cli/oslopolicy-convert-json-to-yaml.html. 2024-07-30 15:47:16,000 WARNING [oslo_policy.policy] Policy Rules ['os_compute_api:extensions', 'os_compute_api:os-floating-ip-pools', 'os_compute_api:os-quota-sets:defaults', 'os_compute_api:os-availability-zone:list', 'os_compute_api:limits', 'project_member_api', 'project_reader_api', 'project_member_or_admin', 'project_reader_or_admin', 'os_compute_api:limits:other_project', 'os_compute_api:os-lock-server:unlock:unlock_override', 'os_compute_api:servers:create:zero_disk_flavor', 'compute:servers:resize:cross_cell', 'os_compute_api:os-shelve:unshelve_to_host'] specified in policy files are the same as the defaults provided by the service. You can remove these rules from policy files which will make maintenance easier. You can detect these redundant rules by ``oslopolicy-list-redundant`` tool also. 2024-07-30 15:47:17,245 INFO [os_vif] Loaded VIF plugins: linux_bridge, noop, ovs 2024-07-30 15:47:17,426 INFO [nova.virt.libvirt.driver] Creating image(s) 2024-07-30 15:47:17,560 INFO [nova.virt.libvirt.host] kernel doesn't support AMD SEV 2024-07-30 15:47:17,642 INFO [nova.virt.libvirt.driver] Instance spawned successfully. 2024-07-30 15:47:17,711 INFO [nova.virt.libvirt.driver] Beginning live snapshot process }}} Traceback (most recent call last): File "/home/jlejeune/dev/pci_repos/stash/nova/nova/virt/libvirt/driver.py", line 3110, in snapshot metadata['location'] = root_disk.direct_snapshot( File "/usr/lib/python3.10/unittest/mock.py", line 1114, in __call__ return self._mock_call(*args, **kwargs) File "/usr/lib/python3.10/unittest/mock.py", line 1118, in _mock_call return self._execute_mock_call(*args, **kwargs) File "/usr/lib/python3.10/unittest/mock.py", line 1173, in _execute_mock_call raise effect NotImplementedError: direct_snapshot() is not implemented During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/jlejeune/dev/pci_repos/stash/nova/nova/tests/unit/virt/test_virt_drivers.py", line 60, in wrapped_func return f(self, *args, **kwargs) File "/home/jlejeune/dev/pci_repos/stash/nova/nova/tests/unit/virt/test_virt_drivers.py", line 242, in test_snapshot_running self.connection.snapshot(self.ctxt, instance_ref, img_ref['id'], File "/home/jlejeune/dev/pci_repos/stash/nova/nova/virt/libvirt/driver.py", line 3149, in snapshot self._live_snapshot(context, instance, guest, File "/home/jlejeune/dev/pci_repos/stash/nova/nova/virt/libvirt/driver.py", line 3402, in _live_snapshot libvirt_utils.create_image( File "/home/jlejeune/dev/pci_repos/stash/nova/nova/virt/libvirt/utils.py", line 249, in create_image processutils.execute(*cmd) File "/home/jlejeune/dev/pci_repos/stash/nova/.tox/py310/lib/python3.10/site-packages/oslo_concurrency/processutils.py", line 438, in execute raise ProcessExecutionError(exit_code=_returncode, oslo_concurrency.processutils.ProcessExecutionError: Unexpected error while running command. Command: env LC_ALL=C LANG=C qemu-img create -f qcow2 ./tmp_bnmjhqw/e560a316990743598911504ed0cbbf41.delta 123456 Exit code: 127 Stdout: '' Stderr: 'env: ‘qemu-img’: No such file or directory\n' To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/2075178/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

