Marek Marczykowski-Górecki
ed88b5a9a3
backup: use vm.run_service instead of vm.run
...
This should be the only way used to call services.
2016-04-07 13:21:00 +02:00
Marek Marczykowski-Górecki
e8f21929ad
backup: by default include all the VMs with vm.include_in_backups
...
If there is a need for more robust default, it should be handled at that
property.
2016-04-07 13:21:00 +02:00
Marek Marczykowski-Górecki
a3051b956b
backup: docstrings, don't expose internal attributes
...
processes_to_kill_on_cancel shouldn't be initialized by user, so move
below applying user settings.
2016-04-07 13:21:00 +02:00
Marek Marczykowski-Górecki
b4227f7581
backup: use simple classes instead of hashes, use events for appmenus
...
This makes typo errors much easier to find (also using pylint or so).
While at it, also removed explicit appmenus backup, as it should be
provided by appmenus extension.
2016-04-07 13:21:00 +02:00
Marek Marczykowski-Górecki
c01f43a5d3
backup: unify handling of template and non-template VMs
...
Handle them the same way - individual files, not the whole directory for
templates.
Also don't backup obsolete 'kernels' subdir - it isn't supported in
core3.
2016-04-07 13:21:00 +02:00
Marek Marczykowski-Górecki
d9cf64a41d
backup: minor code structure changes
...
- initialize internal objects object in constructor
- use 'with'
2016-04-07 13:21:00 +02:00
Marek Marczykowski-Górecki
78dbadab57
backup: minor: compile regex once
2016-04-07 13:21:00 +02:00
Marek Marczykowski-Górecki
e9b8b6428c
backup: remove duplicated get_disk_usage function
2016-04-07 13:21:00 +02:00
Marek Marczykowski-Górecki
c08f5986a9
backup: use constants for queue control strings
2016-04-07 13:21:00 +02:00
Marek Marczykowski-Górecki
ad1f1738fa
qubes: make 'store' property public (R/O)
...
It makes sense to see from what Qubes object was loaded.
2016-04-07 13:21:00 +02:00
Marek Marczykowski-Górecki
c55ca8004a
tests: port backupcompatibility to core3 API
2016-04-07 13:21:00 +02:00
Marek Marczykowski-Górecki
8c5d42a095
backup: add support for restoring pre-core3 backups
2016-04-07 13:21:00 +02:00
Marek Marczykowski-Górecki
304d2b10bc
backup: fix handline "None" kernel
2016-04-07 13:21:00 +02:00
Marek Marczykowski-Górecki
412bcfa88b
backup: fix hadling netvm property
2016-04-07 13:20:59 +02:00
Marek Marczykowski-Górecki
d72d8f8445
backup: code inspection annotations
2016-04-07 13:20:59 +02:00
Marek Marczykowski-Górecki
3fb0754398
backup: formatting
2016-04-07 13:20:59 +02:00
Marek Marczykowski-Górecki
697a26c8da
backup: update license header
...
Use link instead of address, as recommended by FSF.
2016-04-07 13:20:59 +02:00
Marek Marczykowski-Górecki
e04ea7512c
backup: minor code style
...
- Don't use catch-all except statement.
- Use str.format instead of "%" operator.
- Use static methods where applicable.
- Remove unused local variables.
- Don't shadow variables from outer scope
2016-04-07 13:20:59 +02:00
Marek Marczykowski-Górecki
44eed25511
tests/backup: report failure when error was expected but none detected
2016-04-07 13:20:59 +02:00
Marek Marczykowski-Górecki
e5af64f2bf
backup: fix restore summary table
2016-04-07 13:20:59 +02:00
Marek Marczykowski-Górecki
595dfdc0a9
backup: add additional verification of backup header
...
Ensure only alphanumeric characters are used.
2016-04-07 13:20:59 +02:00
Marek Marczykowski-Górecki
3342f637f4
backup: convert logging to proper python logging API
...
QubesOS/qubes-issues#1213
QubesOS/qubes-issues#1214
2016-04-07 13:20:59 +02:00
Marek Marczykowski-Górecki
019678bf4d
tests: fix backup test to not break default template...
...
By default AppVM is template based. This means vm.root_img points at
default template's root image. Change this to StandaloneVM to have
independent root.img.
2016-04-07 13:06:25 +02:00
Marek Marczykowski-Górecki
e557fe9989
backup: restructude the code into classes
...
Introduce two main classes Backup and BackupRestore for storing the
state of the desired operation. Then a simple interface to adjust
parameters.
(Almost) no functional change.
QubesOS/qubes-issues#1213
QubesOS/qubes-issues#1214
2016-04-07 13:06:14 +02:00
Marek Marczykowski-Górecki
fd1f8def6a
tests: do not store dom0 home backup inside of dom0 home itself
2016-04-07 13:05:30 +02:00
Marek Marczykowski-Górecki
e0686e1e02
backup: initial conversion to core3 API
2016-04-07 13:05:25 +02:00
Marek Marczykowski-Górecki
45d6ab3862
qubes/vm: store libvirt config in libvirt.xml, fix rename handling
2016-04-07 13:03:46 +02:00
Marek Marczykowski-Górecki
12df07edd0
tests: invalid property should not be saved to qubes.xml
2016-04-07 13:03:42 +02:00
Marek Marczykowski-Górecki
de86a3c1a4
tools/qvm_prefs: reject invalid properties instead of ignoring silently
2016-04-07 13:03:39 +02:00
Marek Marczykowski-Górecki
c07981da88
tests: allow real prefix notation for selecting tests
2016-04-07 13:03:35 +02:00
Marek Marczykowski-Górecki
7f5feac98b
qubes/vm: fixes for features handling
...
Properly handle 'None' value, there is no difference between empty
string (<x></x>) and no content at all (<x/>).
2016-04-07 13:03:30 +02:00
Marek Marczykowski-Górecki
06c315c94b
qubes: fix/update event names
...
Fix few typos, then rename:
- recreate-appmenus -> domain-restore: there may be more to do than
only appmenus
2016-04-07 12:59:39 +02:00
Marek Marczykowski-Górecki
7cbe2dbd38
qubes/vm: add passio_stderr argument to vm.run_service
...
This allows getting error messages from service call, to provide more
meaningful error messages.
2016-04-07 12:58:05 +02:00
Marek Marczykowski-Górecki
1cd6acd875
core/events: allow handlers return some value
2016-04-07 12:58:01 +02:00
Marek Marczykowski-Górecki
6052143735
tests: qvm-prefs
...
QubesOS/qubes-issues#1248
2016-04-07 12:57:57 +02:00
Marek Marczykowski-Górecki
e319639146
qubes/vm: add StandaloneVM class
2016-04-07 12:57:52 +02:00
Marek Marczykowski-Górecki
43435405e7
tests: update checking 'None' VM representation
2016-04-07 12:57:47 +02:00
Marek Marczykowski-Górecki
c17f86e659
qubes: fix handling DEFAULT special value for VMProperty
2016-04-07 12:03:40 +02:00
Wojtek Porczyk
267a78e4e0
Fix resetting attribute to default when it's already default
...
Based on marmarek's
WIP fix resetting attribute to default when it's already default
2016-04-06 18:09:57 +02:00
Bahtiar `kalkin-` Gadimov
b1978abce5
Use entry_points for pool driver discovery
...
- Add qubes.storage entry point to setup.py
- Removed the old pool driver class loading logic
- Reworked pool tests
2016-04-06 10:11:19 +02:00
Wojtek Porczyk
42666e0ec5
Throw meaningful exception when qubes.xml is missing
...
Based on kalkin-'s Rais QubesException if qubes xml config is missing
2016-04-05 16:33:49 +02:00
Bahtiar `kalkin-` Gadimov
156ecf4163
Add missing import in qubes/__init__.py
...
This was: Fix qubes-create command
2016-04-05 16:25:51 +02:00
Bahtiar `kalkin-` Gadimov
49ec29a235
Fix bug in Qubes.get_vm_class()
2016-04-05 16:24:30 +02:00
o
01bc257265
cleanup whitespace mess
2016-04-04 15:57:42 +02:00
o
b04d1ce005
new qvm-top utility
...
Display cpu and mem similar to qvm-ls but ordered by cpu time. Also a
one line summary switch which includes the top n cpu consuming vms and
total memory consumption. Intended usage is to e.g. embed in a window
manager widget.
2016-04-04 15:51:09 +02:00
o
958c292607
fix qvm-ls display of cpu_time
...
qhost.measure_cpu_usage expects the qvm_collection as parameter. Also
the number of vcpus of dom0 seems to be 0, leading to a div by 0. A more
complete fix would probably involve e.g. a new num_cores property which
would contain number of vcpu for vhosts and number of actual cores for
dom0.
For now this is a partial solution.
2016-04-04 15:30:22 +02:00
Marek Marczykowski-Górecki
04750ddef3
Merge remote-tracking branch 'qubesos/pr/26'
...
* qubesos/pr/26:
Clarify descriptions of qvm-backup-restore options
Fix typos
2016-04-02 01:30:20 +02:00
Axon
5b2df611e6
Clarify descriptions of qvm-backup-restore options
2016-04-01 19:07:16 +00:00
Axon
6901fde56a
Fix typos
...
Most of these typos were corrected in the qubes-doc repo as part of a
larger typo fixing sweet, but those changes were reverted when the pages
were regerenated from source.
2016-04-01 19:06:26 +00:00
Marek Marczykowski-Górecki
046149e0f4
core: fix vm.run_service 'wait' argument handling
...
1. wait=False isn't supportet together with localcmd (explicit, or
implicit via 'input') - qrexec-client refuses such combination
2. When using localcmd, qrexec-client exists as soon as the local command
terminates, not necessary remote. This may not be desired effect when
used with wait=True (the default), so do not use localcmd in such a
case
Found while debugging tests for qubes.USBAttach/qubes.USBDetach - with
wait=True broken, there were a lot of race conditions.
Related to QubesOS/qubes-issues#531
2016-04-01 02:53:04 +02:00