Go to file
Marek Marczykowski-Górecki 3cacf290bb
admin: implement admin.vm.volume.Import
Implement this in two parts:
1. Permissions checks, getting a path from appropriate storage pool
2. Actual data import

The first part is done by qubesd in a standard way, but then, instead of
accepting all the data (which may be several GB), return a path to which
a shell script (in practice: `dd` command) will write the data.
Then the script call back to qubesd again to report success/failure and
qubesd response from that call is actually returned to the user.

This way we do not pass all the data through qubesd, but still can
control the process from there in a meaningful way. Note that the last
part (second call to qubesd) may perform all kind of verification (like
a signature check on the data, or so) and can also prevent VM from
starting (hooking also domain-pre-start event) from not verified image.

QubesOS/qubes-issues#2622
2017-05-26 15:08:14 +02:00
ci tests: rearrage LVM thin tests to run at least some in devel env 2017-05-12 18:10:17 +02:00
contrib contrib: import-graph creates smaller, more readable graph 2016-04-27 17:51:18 +02:00
doc devices: adjust XML serialization of device options 2017-05-22 17:11:20 +02:00
etc Replace pool config parsing logic 2016-04-25 07:16:37 +02:00
linux systemd: prevent killing VM-daemons on service restart/stop 2017-05-18 11:11:18 +02:00
qubes admin: implement admin.vm.volume.Import 2017-05-26 15:08:14 +02:00
qubes-rpc admin: implement admin.vm.volume.Import 2017-05-26 15:08:14 +02:00
qubes-rpc-policy admin-api: create and install actual Admin API RPC endpoints 2017-05-23 03:24:15 +02:00
qubespolicy qubespolicy: improve logging 2017-05-17 14:25:54 +02:00
qvm-tools Merge branch 'core3-devel' 2017-05-12 19:59:14 +02:00
relaxng devices: adjust XML serialization of device options 2017-05-22 17:11:20 +02:00
rpm_spec admin-api: create and install actual Admin API RPC endpoints 2017-05-23 03:24:15 +02:00
templates pci: use device attach options for disabling strict reset 2017-05-22 03:21:13 +02:00
test-packages add mock libvirtaio module + pylint fixes 2017-04-05 17:06:45 +02:00
tests Remove obsolete test script 2017-05-12 18:43:35 +02:00
.coveragerc add config for coverage.py 2015-10-12 16:40:46 +02:00
.gitignore run-tests: Script for running tests in repo 2016-04-20 13:54:56 +02:00
.pylintrc Remove obsolete options from .pylintrc 2016-07-21 12:21:00 +02:00
.travis.yml travis: switch to Qubes 4.0 repositories 2017-04-21 17:22:20 +02:00
installer.wxs windows/installer: configurable destination directory 2014-11-19 12:50:31 +01:00
LICENSE Added LICENSE 2010-04-05 21:21:27 +02:00
Makefile admin: implement admin.vm.volume.Import 2017-05-26 15:08:14 +02:00
Makefile.builder rpm: integrate -doc package into main one 2017-05-12 18:43:35 +02:00
README.md README: add travis button 2016-06-16 17:39:38 +02:00
run-tests tests: rearrage LVM thin tests to run at least some in devel env 2017-05-12 18:10:17 +02:00
setup.cfg Add yapf configuration to setup.cfg 2016-07-21 12:11:34 +02:00
setup.py mgmt: vm.Create* and vm.Clone 2017-05-12 17:04:18 +02:00
version version 3.2.12 2016-10-30 02:28:41 +02:00

Qubes core, version 3

Build Status

This is development branch of the Qubes OS core. This branch is subject to rebase without warning until further notice.

API documentation is available: https://qubes-core-admin.readthedocs.org/en/latest/.