IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
This was originally there for when we weren't defaulting to spice.
We basically do that now, so people shouldn't have much need to
switch spice on/off for an existing guest. Plus if we wanted to
be far about it we would want to add/remove qxl as well but there
it's just getting rediculous.
Show a screenshot in the 'new snapshot' wizard. If we successfully create
that snapshot, save the screenshot in
~/.cache/virt-manager/$connuri/$vmuuid/snap-screenshot-$snapname.$ext
And show it in the snapshot details overview. We don't do any reaping
on snapshot delete, vm delete, etc, but that could be added later.
We sort them separately in the snapshot list, explicitly mention that
they are 'external', and add a UI field listing the memory/disk
details.
In general mixing internal and external snapshots is a recipe for
confusion and disaster, so I think the best thing to do is at least
acknowledge their presence in the UI but not make any attempt to
predict what will or will not work.
So we unify parsing and building the XML.
Since we already do this for vmmDomain, take the opportunity to move
the shared infrastructure into vmmLibvirtObject
It fixes this exception while removing a VM:
Traceback (most recent call last):
File "virt-manager/virtManager/details.py", line 1438, in refresh_vm_state
self.change_run_text(vm.hasSavedImage())
File "virt-manager/virtManager/domain.py", line 1238, in hasSavedImage
return self._backend.hasManagedSaveImage(0)
File "/usr/local/lib/python2.7/site-packages/libvirt.py", line 852, in hasManagedSaveImage
if ret == -1: raise libvirtError ('virDomainHasManagedSaveImage() failed', dom=self)
libvirt.libvirtError: Domain not found: no domain with matching uuid
'7c3eebec-9b22-48ea-b9a2-3341840d0476' (test)
Traceback (most recent call last):
File "virt-manager/virtManager/manager.py", line 885, in vm_status_changed
self.vm_selected()
File "virt-manager/virtManager/manager.py", line 1009, in vm_selected
self.change_run_text(vm.hasSavedImage())
File "virt-manager/virtManager/domain.py", line 1238, in hasSavedImage
return self._backend.hasManagedSaveImage(0)
File "/usr/local/lib/python2.7/site-packages/libvirt.py", line 852, in hasManagedSaveImage
if ret == -1: raise libvirtError ('virDomainHasManagedSaveImage() failed', dom=self)
libvirt.libvirtError: Domain not found: no domain with matching uuid
'7c3eebec-9b22-48ea-b9a2-3341840d0476' (test)
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
This adds initial UI for managing snapshots: list, run/revert, delete,
add, and redefining (for changing <description>) supported, but currently
only for internal snapshots. The UI is mostly in its final form except for
some bells and whistles.
The real remaining question is what do we want to advertise and support.
Internal (qcow2) snapshots are by far the simplest to manage, very
mature, and already have the semantics we want.
However most recent libvirt and qemu work has been to facilitate
external snapshots, which are more extensible and can be performed
live, and with qemu-ga coordination for extra safety. However
they make things much harder for virt-manager at the moment.
Until we have a plan, this work should be considered experimental
and not be relied upon.
This simple patch fixes three issues:
1) We used only one list of storage formats. However, we are able to
use some formats which we cannot create. This patch adds a list
called 'no_create_formats' and moves such formats (currently only
one) into it and uses new parameter 'create' which describes
whether such formats should be removed or not.
2) When creating new storage with the above fixed, we need to set the
combobox's text to "" in order not to change it to "raw". This
was already done in reset_state(), but we need it also when
toggle_storage_select() happens and it doesn't hurt in
set_initial_state(), so I abstracted the implementation into
populate_disk_format_combo().
3) It's a bit unrelated, but when bus of a domain disk gets changed
(in details.py), the address was not cleaned up properly ('target'
attribute was still kept), so I fixed up the VirtualDeviceAddress
as well.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=907289
Some callbacks could try to access a domain that was just deleted and
not accessible anymore. Detect these cases and don't propagate the
exception.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Now when a password is used a check box must be explicitely selected.
This enable the possibility to set an empty password "".
Solves: https://bugzilla.redhat.com/show_bug.cgi?id=749718
Signed-off-by: Giuseppe Scrivano <gscrivano@gnu.org>
(crobinso: fix minor pylint violation)
We separate all the provisioning bits to diskbackend.py. VirtualDisk
users now need to explicitly opt in to storage creation by using
set_create_storage().
validation is no longer done automatically, users must call the
validation() command.
__init__ drops all extra parameters.
This will eventually get us to a point where we can unify the manual
XML building and XML parsing machinery, and get consistent validation
behavior between devices.
The goal here is to reduce the amount of tick() polling that we do by default.
For things like pools, networks, and interfaces, the constant polling is
not very helpful and causes CPU churn and slowness for remote connections.
Switch to a more on demand style. Pages that want new information for
these objects now request a priority tick that only refreshes the info
we want.
This isn't perfect, but neither was the previous solution in the face of
things like XML updates behind our back. The real solution here is libvirt
event support across the board.