John Snow
2ac3f3786e
scripts/qmp-shell: Make verbose a public attribute
...
No real reason to hide this behind an underscore; make it part of the
initializer and make it a regular RW attribute.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-20-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:07 -04:00
John Snow
ad459132c0
scripts/qmp-shell: Add pretty attribute to HMP shell
...
It's less useful, but it makes the initialization methods LSP
consistent, which quiets a mypy complaint.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-19-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:07 -04:00
John Snow
17329be2fd
scripts/qmp-shell: use argparse
...
Use argparse instead of an open-coded CLI parser, for consistency with
everything else.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-18-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:07 -04:00
John Snow
90bd8eb8dc
scripts/qmp-shell: use isinstance() instead of type()
...
A bit more idiomatic, and quiets some linter warnings.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-17-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:07 -04:00
John Snow
73f699c903
scripts/qmp-shell: remove if-raise-else patterns
...
Shushes pylint. I don't always mind these patterns personally, but I'm
not as sure that I want to remove the warning from pylint's repertoire
entirely. Oh well.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-16-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
d962ec85ed
scripts/qmp-shell: fix shell history exception handling
...
We want to remove exceptions that are too broad here; we only want to
catch IOErrors that get raised as a direct result of the open call.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-15-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
628b92dd67
scripts/qmp-shell: rename one and two-letter variables
...
A bit of churn and housekeeping for pylint, flake8 et al.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-14-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
2813dee053
scripts/qmp-shell: make QMPCompleter returns explicit
...
This function returns None when it doesn't find a match; do that
explicitly.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-13-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
50f6f1c308
scripts/qmp-shell: ignore visit_Name name
...
Not something I control, sorry, pylint.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-12-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
c6be2bf86e
scripts/qmp-shell: use triple-double-quote docstring style
...
(2014 me had never written python before.)
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-11-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
31226369ab
scripts/qmp-shell: declare verbose in __init__
...
Linters get angry when we don't define state at init time.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-10-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
5cb0233861
scripts/qmp-shell: Use python3-style super()
...
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-9-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
c4a1447fc1
scripts/qmp-shell: use @classmethod where appropriate
...
Methods with no self-use should belong to the class.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-8-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
9669c8289c
scripts/qmp-shell: remove shadowed variable from _print()
...
Don't use 'qmp' here, which shadows the qmp module.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-7-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
f2daa2d489
scripts/qmp-shell: fix connect method signature
...
It needs to match the parent's signature -- the negotiate parameter must
be optional.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-6-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
de14ba24f3
scripts/qmp-shell: fix exception handling
...
Fixes: 50d189c
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-5-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
70e5674018
scripts/qmp-shell: fix show_banner signature
...
The signatures need to match.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-4-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
169b43b367
scripts/qmp-shell: Apply flake8 rules
...
A lot of fiddling around to get us below 80 columns.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-3-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
badf462985
scripts/qmp-shell: apply isort rules
...
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210607200649.1840382-2-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
88fb483fc5
scripts/qemu-ga-client: Add forwarder shim
...
Add a little forwarder shim until we are sure that everyone is
comfortable with how to use the tools in their new packaged location.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210604155532.1499282-12-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
1e129afc31
scripts/qemu-ga-client: move to python/qemu/qmp/qemu_ga_client.py
...
The script itself will be unavailable for a few commits before being
restored, with no way to run it right after this commit. This helps move
git history into the new file. To prevent linter regressions, though, we
do need to immediately touch up the filename to remove dashes (to make
the module importable), and remove the executable bit.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210604155532.1499282-10-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
ca683d4a2f
scripts/qemu-ga-client: add mypy type hints
...
This script is in slightly rough shape, but it still works. A lot of
care went into its initial development. In good faith, I'm updating it
to the latest Python coding standards. If there is in interest in this
script, though, I'll be asking for a contributor to take care of it
further.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210604155532.1499282-9-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
f85d3252ef
scripts/qemu-ga-client: apply (most) pylint rules
...
I'm only doing a very quick best-effort to preserve this script, to help
keep it from breaking further. I think there are pending ideas swirling
on the right way to implement better SDKs and better clients, and this
script might be a handy reference for those discussions. It presents
some interesting design problems, like static type safety when using a
dynamic RPC mechanism.
I believe it's worth preserving the effort and care that went into
making this script by updating it to work with our current
infrastructure. However, I am disabling the requirement for docstrings
in this file.
If you would like to help improve this script, please add docstrings
alongside any refactors or rejuvenations you might apply at that time.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210604155532.1499282-7-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
aff103b531
scripts/qemu-ga-client: add module docstring
...
Turn that nice usage comment into a docstring.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210604155532.1499282-6-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00
John Snow
0cf1a52d28
scripts/qemu-ga-client: replace deprecated optparse with argparse
...
optparse isn't supported anymore, it's from the python2 days. Replace it
with the mostly similar argparse.
Signed-off-by: John Snow <jsnow@redhat.com >
Message-id: 20210604155532.1499282-5-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com >
2021-06-18 16:10:06 -04:00