[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 19/19] python/qmp: add fuse command to 'qom' tools
From: |
John Snow |
Subject: |
[PATCH v3 19/19] python/qmp: add fuse command to 'qom' tools |
Date: |
Wed, 2 Jun 2021 20:37:19 -0400 |
The 'fuse' command will be unavailable if 'fusepy' is not installed. It
will simply not load and subsequently be unavailable as a subcommand.
Signed-off-by: John Snow <jsnow@redhat.com>
---
python/qemu/qmp/qom.py | 14 ++++++++++++--
python/setup.cfg | 1 +
2 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/python/qemu/qmp/qom.py b/python/qemu/qmp/qom.py
index 7fe1448b5d9..7ec7843d57a 100644
--- a/python/qemu/qmp/qom.py
+++ b/python/qemu/qmp/qom.py
@@ -1,7 +1,7 @@
"""
QEMU Object Model testing tools.
-usage: qom [-h] {set,get,list,tree} ...
+usage: qom [-h] {set,get,list,tree,fuse} ...
Query and manipulate QOM data
@@ -9,11 +9,12 @@
-h, --help show this help message and exit
QOM commands:
- {set,get,list,tree}
+ {set,get,list,tree,fuse}
set Set a QOM property value
get Get a QOM property value
list List QOM properties at a given path
tree Show QOM tree from a given path
+ fuse Mount a QOM tree as a FUSE filesystem
"""
##
# Copyright John Snow 2020, for Red Hat, Inc.
@@ -35,6 +36,15 @@
from .qom_common import QOMCommand
+try:
+ from .qom_fuse import QOMFuse
+except ModuleNotFoundError as err:
+ if err.name != 'fuse':
+ raise
+else:
+ assert issubclass(QOMFuse, QOMCommand)
+
+
class QOMSet(QOMCommand):
"""
QOM Command - Set a property to a given value.
diff --git a/python/setup.cfg b/python/setup.cfg
index aca6f311853..6b6be8b03c6 100644
--- a/python/setup.cfg
+++ b/python/setup.cfg
@@ -49,6 +49,7 @@ console_scripts =
qom-get = qemu.qmp.qom:QOMGet.entry_point
qom-list = qemu.qmp.qom:QOMList.entry_point
qom-tree = qemu.qmp.qom:QOMTree.entry_point
+ qom-fuse = qemu.qmp.qom_fuse:QOMFuse.entry_point [fuse]
[flake8]
extend-ignore = E722 # Prefer pylint's bare-except checks to flake8's
--
2.31.1
- [PATCH v3 09/19] python: Add 'fh' to known-good variable names, (continued)
- [PATCH v3 09/19] python: Add 'fh' to known-good variable names, John Snow, 2021/06/02
- [PATCH v3 10/19] scripts/qom-fuse: Apply pylint rules, John Snow, 2021/06/02
- [PATCH v3 11/19] scripts/qom-fuse: Add docstrings, John Snow, 2021/06/02
- [PATCH v3 12/19] scripts/qom-fuse: Convert to QOMCommand, John Snow, 2021/06/02
- [PATCH v3 13/19] scripts/qom-fuse: use QOMCommand.qom_list(), John Snow, 2021/06/02
- [PATCH v3 14/19] scripts/qom-fuse: ensure QOMFuse.read always returns bytes, John Snow, 2021/06/02
- [PATCH v3 15/19] scripts/qom-fuse: add static type hints, John Snow, 2021/06/02
- [PATCH v3 16/19] python: add optional FUSE dependencies, John Snow, 2021/06/02
- [PATCH v3 17/19] scripts/qom-fuse: move to python/qemu/qmp/qom_fuse.py, John Snow, 2021/06/02
- [PATCH v3 19/19] python/qmp: add fuse command to 'qom' tools,
John Snow <=
- [PATCH v3 18/19] scripts/qom-fuse: add redirection shim to python/qemu/qmp/qom-fuse.py, John Snow, 2021/06/02
- Re: [PATCH v3 00/19] Python: move /scripts/qmp/qom* to /python/qemu/qmp/qom*, John Snow, 2021/06/09