0f12870803
Reference objects, not their IDs - this way when object is modified, it is visible everywhere where it is used. Main changes: - volume.pool - Pool object - volume.source - Volume object Since volume have Pool object reference now, move volume related functions into Volume class (from Pool class). This avoids horrible `storage.get_pool(volume).something(volume)` construct. One issue here is since volume.source reference a Volume object from a different VM - VM's template, now VM load order is important. Since we don't have control over it, initialize vm.storage when needed - possibly while initializing storage of different VM. Since we don't have cycles in AppVM-TemplateVM dependencies, it is safe. Also, since this commit, volume.source (if defined) always points at volume of the same name from VM's template. Using volumes with something else as a source is no longer supported. QubesOS/qubes-issues#2256 |
||
---|---|---|
ci | ||
contrib | ||
doc | ||
etc | ||
linux | ||
qubes | ||
qubes-rpc | ||
qubes-rpc-policy | ||
qubespolicy | ||
qvm-tools | ||
relaxng | ||
rpm_spec | ||
templates | ||
test-packages | ||
tests | ||
.coveragerc | ||
.gitignore | ||
.pylintrc | ||
.travis.yml | ||
installer.wxs | ||
LICENSE | ||
Makefile | ||
Makefile.builder | ||
README.md | ||
run-tests | ||
setup.cfg | ||
setup.py | ||
version |
Qubes core, version 3
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/.