qubes.vm.dispvm
– Disposable VM¶
A disposable vm implementation
-
class
qubes.vm.dispvm.
DispVM
(app, xml, *args, **kwargs)[source]¶ Bases:
qubes.vm.qubesvm.QubesVM
Disposable VM
-
cleanup
()[source]¶ Clean up after the DispVM
This stops the disposable qube and removes it from the store. This method modifies
qubes.xml
file.
-
classmethod
from_appvm
(appvm, **kwargs)[source]¶ Create a new instance from given AppVM
Parameters: appvm (qubes.vm.appvm.AppVM) – template from which the VM should be created Returns: new disposable vm kwargs are passed to the newly created VM
>>> import qubes.vm.dispvm.DispVM >>> dispvm = qubes.vm.dispvm.DispVM.from_appvm(appvm).start() >>> dispvm.run_service('qubes.VMShell', input='firefox') >>> dispvm.cleanup()
This method modifies
qubes.xml
file. The qube returned is not started.
-
on_domain_shutdown
(_event, **_kwargs)[source]¶ Cleanup network interfaces of connected, running VMs.
This will allow re-reconnecting them cleanly later.
-
on_property_pre_set_template
(event, name, newvalue, oldvalue=None)[source]¶ Forbid changing template of running VM
-
on_property_set_template
(event, name, newvalue, oldvalue=None)[source]¶ Adjust root (and possibly other snap_on_start=True) volume on template change.
-
start
(**kwargs)[source]¶ Start domain
Parameters: - start_guid (bool) – FIXME
- notify_function (collections.abc.Callable) – FIXME
- mem_required (int) – FIXME
-
auto_cleanup
¶ automatically remove this VM upon shutdown
-
default_dispvm
¶ Default VM to be used as Disposable VM for service calls.
-
dispid
¶ Internal, persistent identifier of particular DispVM.
-
include_in_backups
¶ If this domain is to be included in default backup.
-
template
¶ AppVM, on which this DispVM is based.
-