GitLab: https://gitlab.com/jsnow/qemu/-/commits/python-aqmp-iotest-wrapper
CI: https://gitlab.com/jsnow/qemu/-/pipelines/395925703
Hiya,
This series continues where the last two AQMP series left off and adds a
synchronous 'legacy' wrapper around the new AQMP interface, then drops
it straight into iotests to prove that AQMP is functional and totally
cool and fine. The disruption and churn to iotests is pretty minimal.
In the event that a regression happens and I am not physically proximate
to inflict damage upon, one may set the QEMU_PYTHON_LEGACY_QMP variable
to any non-empty string as it pleases you to engage the QMP machinery
you are used to.
V5:
006: Fixed a typing error. (Hanna)
V4:
006: Added to address a race condition in iotest 300.
(Thanks for the repro, Hanna)
V3: Near as we can tell, our immediate ancestral forebear.
V2: A distant dream, half-remembered.
V1: Apocrypha.
John Snow (8):
python/machine: remove has_quit argument
python/machine: Handle QMP errors on close more meticulously
python/aqmp: Remove scary message
iotests: Accommodate async QMP Exception classes
iotests: Conditionally silence certain AQMP errors
iotests/300: avoid abnormal shutdown race condition
python/aqmp: Create sync QMP wrapper for iotests
python, iotests: replace qmp with aqmp
python/qemu/aqmp/__init__.py | 12 --
python/qemu/aqmp/legacy.py | 138 ++++++++++++++++++++++
python/qemu/machine/machine.py | 85 +++++++++----
scripts/simplebench/bench_block_job.py | 3 +-
tests/qemu-iotests/040 | 7 +-
tests/qemu-iotests/218 | 2 +-
tests/qemu-iotests/255 | 2 +-
tests/qemu-iotests/300 | 13 +-
tests/qemu-iotests/iotests.py | 20 +++-
tests/qemu-iotests/tests/mirror-top-perms | 17 ++-
10 files changed, 243 insertions(+), 56 deletions(-)
create mode 100644 python/qemu/aqmp/legacy.py
--
2.31.1