VMs can have runtime dependencies - for example it isn't possible to shutdown netvm used by some other running VM(s). Since client-side tools may not have full knowledge about rules enforcing those dependencies (for example may not have access to 'netvm' property), implement best-effort approach: 1. Try to shutdown all requested VMs 2. For those where shutdown request succeed, wait for actual shutdown 3. For others - go back to step 1 And loop until all VMs are shutdown, or all shutdown requests fails. |
||
|---|---|---|
| ci | ||
| debian | ||
| doc | ||
| etc | ||
| qubesadmin | ||
| rpm_spec | ||
| test-packages | ||
| .gitignore | ||
| .travis.yml | ||
| LICENSE | ||
| Makefile | ||
| Makefile.builder | ||
| README.md | ||
| run-tests | ||
| setup.py | ||
| version | ||
This is client side implementation of Qubes Admin API. See https://www.qubes-os.org/doc/admin-api/ for protocol specification.
Compatibility
Most of the API modules are compatible with Python >= 2.7. Very few parts require Python >= 3.4:
- tools (
qvm-*) - qubesadmin.events module (for asyncio module)
Parts not compatible with Python < 3.4, are not installed in such environment.