Added explicit 'force' option to qvm-shutdown

This commit is contained in:
Marta Marczykowska-Górecka 2020-01-29 19:34:57 +01:00
parent 2be77f58b3
commit 5c94c72ecd
No known key found for this signature in database
GPG Key ID: 9A752C30B26FD04B
2 changed files with 14 additions and 3 deletions

View File

@ -25,7 +25,7 @@ Options
.. option:: --all .. option:: --all
perform the action on all qubes perform the action on all qubes; implies :option:`--force`
.. option:: --exclude=EXCLUDE .. option:: --exclude=EXCLUDE
@ -35,12 +35,18 @@ Options
wait for the VMs to shut down. If some domains are providing network to other wait for the VMs to shut down. If some domains are providing network to other
domains, wait for those domains to shut down before shutting down their domains, wait for those domains to shut down before shutting down their
dependents. dependents, unless :option:`--all` was specified
.. option:: --timeout .. option:: --timeout
timeout after which domains are killed when using :option:`--wait` timeout after which domains are killed when using :option:`--wait`
.. option:: --force
force qube shutdown, regardless of whether there exist any connected domains
(such as those using it as network VM)
Authors Authors
------- -------

View File

@ -50,11 +50,16 @@ parser.add_argument('--timeout',
help='timeout after which domains are killed when using --wait' help='timeout after which domains are killed when using --wait'
' (default: %(default)d)') ' (default: %(default)d)')
parser.add_argument(
'--force',
action='store_true', default=False,
help='force shutdown regardless of connected domains; use with caution')
def main(args=None, app=None): # pylint: disable=missing-docstring def main(args=None, app=None): # pylint: disable=missing-docstring
args = parser.parse_args(args, app=app) args = parser.parse_args(args, app=app)
force = bool(args.all_domains) force = args.force or bool(args.all_domains)
if have_events: if have_events:
loop = asyncio.get_event_loop() loop = asyncio.get_event_loop()