diff options
author | ricolin <rico.lin.guanyu@gmail.com> | 2021-03-24 11:15:17 +0800 |
---|---|---|
committer | Rico Lin <ricolin@ricolky.com> | 2021-03-24 12:09:13 +0000 |
commit | 020e46094a7871cd5fa42d18e53d18f21e47a8fa (patch) | |
tree | 282f9909f5e294f23d94699dcfa193c30c821a7e | |
parent | 50f48400483f9cb66b323920ccf1ea40b0fd0cd1 (diff) | |
download | nova-020e46094a7871cd5fa42d18e53d18f21e47a8fa.tar.gz |
[Arm64][libvirt] Fix read bytes from json files
This fix issue that we might get str stream from json files instead of bytes
and make sure we read bytes from json files under
QEMU_FIRMWARE_DESCRIPTOR_PATHS.
Add `rb` mode ([1]) to return contents as bytes objects.
[1] https://docs.python.org/3.8/library/functions.html#open
Closes-Bug: #1921075
Change-Id: I446be58f7f3e972d8e10cc5cbf83ebd42edb34e3
-rw-r--r-- | nova/tests/unit/virt/libvirt/test_host.py | 2 | ||||
-rw-r--r-- | nova/virt/libvirt/host.py | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/nova/tests/unit/virt/libvirt/test_host.py b/nova/tests/unit/virt/libvirt/test_host.py index 1abb0458ab..20279a91a2 100644 --- a/nova/tests/unit/virt/libvirt/test_host.py +++ b/nova/tests/unit/virt/libvirt/test_host.py @@ -1970,4 +1970,4 @@ class LoadersTestCase(test.NoDBTestCase): ]) mock_glob.assert_called_once_with( '/usr/share/qemu/firmware/*.json') - mock_open.assert_called_once_with('10_fake.json') + mock_open.assert_called_once_with('10_fake.json', 'rb') diff --git a/nova/virt/libvirt/host.py b/nova/virt/libvirt/host.py index 2321501be9..1de93137b5 100644 --- a/nova/virt/libvirt/host.py +++ b/nova/virt/libvirt/host.py @@ -108,7 +108,7 @@ def _get_loaders(): continue for spec_path in sorted(glob.glob(f'{path}/*.json')): - with open(spec_path) as fh: + with open(spec_path, 'rb') as fh: spec = jsonutils.load(fh) _loaders.append(spec) |