Commit Graph

1257 Commits

Author SHA1 Message Date
Cole Robinson 1d0b4a0a9e connect: Handle \ in username
We need to quote URL values in the username, that's what libvirt expects.
Unquote the values before caching them in the URI object, so console
connections continue to work

https://bugzilla.redhat.com/show_bug.cgi?id=1452389
2017-06-01 14:26:46 -04:00
Pavel Hrdina 4f8e795c6a virtinst: if required by UEFI enable SMM feature and set q35 machine type
If we detect that the UEFI image is build to require SMM feature we
should configure the guest to enable SMM feature and set q35 machine
type.  Without this user wouldn't be able to boot the guest.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1387479

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2017-06-01 09:58:46 +02:00
Pavel Hrdina 1686511886 virtManager.connection: introduce cb_add_new_pool
The cb_add_new_pool callback will add a newly created storage pool
into virt-manager's cache so we don't have to wait for the libvirt
event to be handled.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1435064

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2017-05-22 19:43:49 +02:00
Radostin Stoyanov c5627b1fa9 Remove redundant call of strip()
Remove redundant call of the strip() function. It is already done in lines 1302 and 1303.

https://github.com/virt-manager/virt-manager/blob/master/virtManager/create.py#L1302
https://github.com/virt-manager/virt-manager/blob/master/virtManager/create.py#L1303
2017-05-17 12:26:51 -04:00
Pavel Hrdina 86e2c23d71 interface: don't print error for active interface without an IP address
If there is no IP address for active interface we need to skip
probing it.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1449509

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2017-05-10 12:35:42 +02:00
Cole Robinson f551d7e55d Replace file() usage with open()
Same semantics, but the latter is needed for python3
2017-05-05 14:53:12 -04:00
Cole Robinson 34c193108c Use python3 compatible octal notation 2017-05-05 14:52:11 -04:00
Cole Robinson 62feeb02a8 Switch to python3 style 'except X as Y' notation
Which also works with python2.7
2017-05-05 14:52:11 -04:00
Lin Ma 733d541624 network: add support for network forward mode 'open'
libvirt added network forward mode 'open' by commit 25e8112d, No any
iptables rules are added to this virtual network.

This patch adds support to create such a virtual network.

Signed-off-by: Lin Ma <lma@suse.com>
2017-05-03 14:15:02 -04:00
Pavel Grunt 1f68cf2b01 Do not use deprecated gdk_cursor_new
It relies on the presence of X cursor fonts in the system. Use
recommended gdk_cursor_new_from_name and use cursor names that works
on different backends.

Deprecated since Gdk 3.16

https://bugzilla.redhat.com/show_bug.cgi?id=1442612
2017-05-03 13:38:23 -04:00
Chen Hanxiao 645edb176d domain: treat VIR_DOMAIN_CRASHED not as runnable but rather as stoppable
If we set on_crash as `preserve`, we'll get a crashed
VM state.
At this time, it's impossible to start this VM.

Signed-off-by: Chen Hanxiao <chenhanxiao@gmail.com>
2017-05-03 13:38:07 -04:00
Pino Toscano 7866cfec1b osdict: add "macos" type
Give macOS OSes an own type, so they have their own entry in the list of
OS types.
2017-04-27 15:57:40 -04:00
Pino Toscano fa9ee6cd94 osdict: rename "unix" type to "bsd"
It really holds BSD OSes, so rename it to match the reality.
2017-04-27 15:57:40 -04:00
Pino Toscano 0eabf343ee create: refactor combobox with distros
When showing all the OSes, the list of distributions for some types of
OSes (Linux, UNIX) will get insanely long, and thus very hard to scroll.
As solution, introduce groups for some of the OS families, leaving the
ones without a defined group into a "Others" group.

To keep the completion working in the editable combobox, add a separate
completion model for the completion entry, providing all the OSes
directly there as simple list.

There are a number of changes related to this:
- the model for the OS comboboxes is now a TreeStore, and the iterations
  on the OS variant keep that into account
- there are better UI labels for OS types and groups
- when there are no groups for a type, add all the OSes directly, just
  like now
- optimize the way types are added to the combobox: when not adding all
  of them, filter out those not "supported"
- optimize the way OSes are added to the combobox: query only for the
  list we need (supported or all, not both), and group them according
  to the hash defined
- add separator + "show all" options only when not showing all of them
- _add_os_row now is called only when needed, so remove its "supported"
  parameter
2017-04-27 15:57:40 -04:00
Cole Robinson cd0e3a897c sshtunnels: Detect listen type=none for VNC (bz 1445714)
https://bugzilla.redhat.com/show_bug.cgi?id=1445714
2017-04-27 15:29:05 -04:00
Cole Robinson c0a3234633 baseclass: share wizard cursor setting code 2017-04-27 15:00:17 -04:00
Cole Robinson 6d1a3db421 createnet: Cleanups around hostdev UI 2017-04-04 15:20:33 -04:00
Lin Ma 97c8412df6 network: add support to create SR-IOV VF pool
Create a network with a device pool containing all the VFs of an SR-IOV device.

Signed-off-by: Lin Ma <lma@suse.com>
2017-04-03 19:15:11 -04:00
Cole Robinson 0610cd6acb console: Ensure bool value used for set_sensitive call
Seen in a bug log file:

[Tue, 28 Mar 2017 12:05:21 virt-manager 2465] DEBUG (cli:251) Uncaught exception:
Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/details.py", line 1303, in refresh_vm_state
    self.console.details_update_widget_states()
  File "/usr/share/virt-manager/virtManager/console.py", line 1025, in details_update_widget_states
    return self._update_vm_widget_states()
  File "/usr/share/virt-manager/virtManager/console.py", line 597, in _update_vm_widget_states
    self._refresh_widget_states()
  File "/usr/share/virt-manager/virtManager/console.py", line 663, in _refresh_widget_states
    self.widget("details-menu-vm-screenshot").set_sensitive(is_viewer)
TypeError: Argument 1 does not allow None as a value
2017-03-29 12:07:50 -04:00
Cole Robinson 14f3efa810 libvirtobject: Add better __repr__ for debugging 2017-03-29 12:07:50 -04:00
Cole Robinson 2c8ed52813 Fix some pylint 2017-03-27 17:27:14 -04:00
Charles d'Hondt b545201617 Added OpenVSwitch Network Detection
Small patch to allow VMM to detect OpenVSwitch

Signed-off-by: Charles d'Hondt <charles.dhondt@gmail.com>
2017-03-24 16:42:45 -04:00
Pavel Hrdina cb182f7e3a graphics: skip authentication only for VNC with listen type none
This is in fact a bug in QEMU so we have to workaround this issue
to allow to connect to guest with VNC and listen type none.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1434551

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2017-03-23 15:26:19 +01:00
Cole Robinson cfc4e903b7 details: Remove some debug printing 2017-03-22 12:28:04 -04:00
David Thurstenson a86c119e1c Fix ambigous label on Autostart checkbox
When the Autostart checkbox on the host Virtual Network or Storage tabs
is deselected, the label reads "Never", and when selected the label reads
"On Boot". This changes these labels to always read "On Boot".
2017-03-22 11:53:00 -04:00
Cole Robinson aefea61fa0 create: Fix some minor UI issues with vz installs 2017-03-22 11:40:04 -04:00
Mikhail Feoktistov 5a70b946c7 Add GUI to create wizard for virtuozzo containers
Add virtuozzo hypervisor to connection list.
Add radio buttons for choosing VM or container virtualization type.
New wizard window for setting template name for containers.
2017-03-22 11:00:50 -04:00
Mikhail Feoktistov c25ea6537b Tune default device list for Virtuozzo containers
Virtuozzo supports virtio NIC.
Also add default VNC graphics.
Privnet feature and emulator device have no sense for vz containers.
2017-03-17 13:36:15 -04:00
Cole Robinson 8f39de8243 ui: details: Tweak RNG page a bit 2017-03-08 17:48:26 -05:00
Cole Robinson 8eee62712e gfxdetails: Add more errors/warnings around spice GL
Add warning icons with informative tooltips. Desensitive UI rather
than hide it if the hypervisor doesn't support things. A few other
usability tweaks
2017-03-08 16:07:32 -05:00
Cole Robinson f61e586b77 domain: rename: Fix when nvram pool is newly created
We don't have any way at the momemnt to synchronously update cached
object lists. So if old_nvram will create a pool for the nvram dir
(/var/lib/libvirt/qemu/nvram), new_nvram won't see that new object
in our cache, will attempt to create it itself, and raise an error.
Next attempts succeed though.

We can avoid this by not even setting new_nvram.path, that step was
redundant anyways since we are setting a vol_install right afterwards.
This way, new_nvram is getting a reference to the parent_pool object
via the vol_install, so it doesn't even check the pool object cache.
2017-03-08 14:22:44 -05:00
Cole Robinson 3030c585b9 domain: rename: don't overwrite nvram error
Just raise whatever error is throw, so we have the backtrace if needed
2017-03-08 13:22:09 -05:00
Pavel Hrdina 92c230d111 domain: add support to rename domain with nvram vars file
Libvirt storage API doesn't support renaming storage volumes so
we need to copy the nvram file and remove the old one.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1368922

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2017-03-08 08:24:57 +01:00
Cole Robinson 07f1a4e168 ui: Use 'Shut Down' vs 'shutdown' consistently 2017-03-06 22:05:35 -05:00
Cole Robinson 1ac02d2ade ui: clone: Delay error if default storage doesn't have enough space
Just ignore the error populating the initial paths, otherwise we can't
even open the dialog
2017-03-06 22:05:34 -05:00
Cole Robinson b6630c2a63 clone: Don't error if disk doesn't have a backing volume 2017-03-06 22:05:34 -05:00
Pavel Hrdina 8225cac648 virtManager.delete: don't allow deleting SCSI disks
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2017-03-06 14:31:42 -05:00
Pavel Hrdina 31e923dbdf virtManager.clone: don't generate default clone_path for some storage pools
Libvirt doesn't support creating volumes for some storage pools,
don't generate default clone_path for these storage pools.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1420190

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2017-03-06 14:31:42 -05:00
Pavel Hrdina 79baf8e30c virtManager.clone: don't generate clone path if we don't default to clone
If we don't default to clone the disk in question don't try to generate
and assign default clone_path, this will force user to select the path
explicitly and avoid some unnecessary errors in debug log.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2017-03-06 14:31:42 -05:00
Pavel Hrdina d93203022a virtManager.clone: set new manual path before we populate storage list
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2017-03-06 14:31:42 -05:00
Cole Robinson 0910c8dcfc domain: Use libvirt.VIR_DOMAIN_OPEN_GRAPHICS_SKIPAUTH (bug 1379581)
It's what virt-viewer uses, and apparently it's needed for VNC
listen type=none

https://bugzilla.redhat.com/show_bug.cgi?id=1379581
2017-03-02 15:08:32 -05:00
Marc-André Lureau b484d15258 virtManager/ui: add 3d acceleration checkbox to virtio video
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2017-03-01 17:58:30 -05:00
Marc-André Lureau 53d09bc28c virtManager/ui: add rendernode selection
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2017-03-01 17:57:57 -05:00
Marc-André Lureau 326dc03c23 virtManager/ui: add listen type option
Similarly to virt-install --listen=none, add a combobox to select
the listen type: "address" or "none" for now, as suggested by Pavel
Hrdina.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2017-03-01 17:56:52 -05:00
Marc-André Lureau 88942028b3 virtManager/ui: add opengl graphics option
Add an OpenGL checkbox to the Spice graphics options (only available if
SUPPORT_CONN_SPICE_GL).

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2017-03-01 17:54:19 -05:00
Pino Toscano ecd66a7df2 inspection: try harder to show a pkg summary
If a package has no summary, try to use the description (if available):
- if it is just one line (mostly because the package manager only has
  a single line as description of a package), then use it fully
- if it contains more lines, then take the first only, adding suspension
  dots to indicate it is longer than that
2017-03-01 16:32:57 -05:00
Pino Toscano 409ae0bcf4 inspection: add a way to refresh the inspection info
Introduce a 'Refresh' button in the 'Information' page of a VM, and
wire it up so a refresh of the inspection data for it is triggered.
2017-03-01 16:25:47 -05:00
Pino Toscano 436d4c544c details: refresh Information page on inspection data change
Refresh the 'Information' page when there are new inspection data
available, so they can be seen even without switching to a different
page and back.  This could be seen when starting virt-manager, and
opening quickly the 'Information' page of an uninspected guest.
2017-03-01 16:25:47 -05:00
Pino Toscano 45d0be9805 inspection: add vmmInspection.vm_refresh helper
Add a simple helper to force a new inspection of a VM.
2017-03-01 16:25:47 -05:00
Pino Toscano 67ed3e86df inspection: filter libguestfs VMs earlier
No need to do any job for them, so skip processing them altogether when
a new one is added.
2017-03-01 16:25:47 -05:00
Pino Toscano d2ca54fce4 inspection: remove queue draining
Now we act for each item in the queue, so there is no more need to drain
it fully before doing anything.  Thus, turn _run into a simple
get+process+done loop.
2017-03-01 16:25:47 -05:00
Pino Toscano 7a696c8db8 inspection: handle duplicated conn-added signals
We might get 'conn-added' signals for the same connections more than
once, so make sure to skip a new connection notification when the
connection is already known.
2017-03-01 16:25:47 -05:00
Pino Toscano ea5a6a3014 inspection: simplify VMs visit
Currently, the handling of the 'vm_added' element in the queue (added as
consequence of the 'vm-added' signal) is to act as trigger to rescan
every VM in every local connection; this operation is "fast" because
every VM except the newly added is already marked as visited. Still, it
is an not really efficient way to visit new VMs.

Instead, just push in the queue all the data we get in vm_added, so when
processing the queue we can process each VM straight away.  Because of
this, make sure to gracefully handle VMs that were removed while the
'vm_added' item for them was sitting in the queue (which is something
the old code did not handle properly).
2017-03-01 16:25:47 -05:00
Pino Toscano 0c019fb8e3 inspection: rename vmmInspection._process to _inspect_vm
It fits more the actual job of the function.
2017-03-01 16:25:47 -05:00
Pino Toscano ad47e80ec2 inspection: extract vmmInspection._process_vm
Move the code that does the inspection handling of a VM to an own
function, so it can be used as-is later on.

It is just code motion.
2017-03-01 16:25:47 -05:00
Pavel Hrdina b8dccf6aca virtManager/viewers: fix connection to remote SPICE with password
When connecting to remote SPICE we use ssh tunnel if the SPICE is
listening only on "localhost".  Our ssh tunnel scheduler uses locks
to serialize the requests for FD in order to not spam user for ssh
password.

However when the main_channel is connected and emits AUTH_ERROR
we ask user for password and request for new FD.  Unfortunately
after the new request is handled we didn't unlock the scheduler
and all other request would remain waiting for the lock.

We need to unlock every FD request for the SPICE main channel not
only the first one when the channel itself is created.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1401790

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2017-02-10 09:43:20 +01:00
Pino Toscano 46f4abbb50 inspection: try low quality icons as fallback
When there is no high quality icon for a guest, try getting the low
quality icon.  This should make virt-manager show icons for Ubuntu and
Windows guests.
2017-02-09 16:29:27 -05:00
Pino Toscano 3c95d20994 inspection: consider also epoch for pkg version
When composing the string of the version of packages, prepend also the
epoch, as it is an important part of the package version.
2017-02-09 16:29:27 -05:00
Pino Toscano ebf4ade208 inspection: show OS type in Inspection page
Show also a pretty label for the OS of the guest, in addition to
hostname and product name.
2017-02-09 16:29:27 -05:00
Pino Toscano f7a726dc70 inspection: rename variable for OS type
'type' is ambiguous as name, it might conflict with the Python builtin.
Instead, rename it to 'os_type' to get rid of the issue altogether.
2017-02-09 16:29:27 -05:00
Pavel Hrdina 2df8dc39e8 virtManager/interface: detect whether IP address comes from DHCP server
When the network interface is up the active XML contains only IP address
even in case that the inactive XML was configured to get the IP address
from DHCP server.  To propagate this information back to UI we need to
get both XMLs to figure out current IP addresses and the configuration.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1410722

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2017-02-06 09:11:00 +01:00
Pavel Hrdina 798a2e5080 virtManager/addhardware: get supported disk bus types from libvirt
Libvirt provides domain capabilities where supported disk bus types are
listed.  Virt-manager should try to get those bus types.  The old code
remains as fallback if domain capabilities doesn't contain the disk
bus types.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1387218

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2017-01-24 08:37:17 +01:00
Cole Robinson 88bfdf4926 console: Fix resize to VM on wayland (bug 1397598)
Yet another issue with not using window.get_size() and instead using
its size allocation directly, which differ on wayland due to client
side decorations.

https://bugzilla.redhat.com/show_bug.cgi?id=1397598
2016-12-13 13:34:09 -05:00
Cole Robinson 107aa2b134 manager: Fix window size tracking on wayland (bug 1375175)
The method we were using is a common implementation bug,
explained here: https://wiki.gnome.org/HowDoI/SaveWindowState

https://bugzilla.redhat.com/show_bug.cgi?id=1375175
2016-12-13 13:34:09 -05:00
Cole Robinson 435de2d40c pylint: Fix some issues with F25 version 2016-12-13 12:36:49 -05:00
Seeteena Thoufeek 5a11cf0782 virt-manager generates invalid guest XML
The virt-manager application generates invalid guest XML when a
 spapr-vio SCSI model controller is changed to a virtio-scsi model controller.

1. Create a guest
2. Add an spapr-vio controller to the guest via this gui path:
->Add Hardware
->Controller
->Type SCSI
->Model Hypervisor default
At this point, there will be a valid spapr-vio SCSI controller defined:
    <controller type='scsi' index='0'>
      <address type='spapr-vio' reg='0x2000'/>
    </controller>
3.Now modify the above SCSI controller using this gui path:
->Choose "Controller sPAPR SCSI" on left pane
->Choose "VirtIO SCSI" for the Model on the right pane
->Apply
At this point, there will be a SCSI controller definition which is invalid due to an incorrect address type:
~# virsh dumpxml dotg2|grep -A2 -i scsi
    <controller type='scsi' index='0' model='virtio-scsi'>
      <address type='spapr-vio' reg='0x2000'/>
    </controller>
Any attempt to start the guest will throw this error:
error: Failed to start domain dotg2
error: internal error: process exited while connecting to monitor: 2016-12-02T17:45:12.989165Z qemu-system-ppc64le: -device virtio-scsi-pci,id=scsi0,reg=0x2000: Property '.reg' not found

virt-manager fails to realize that the address type needs to be changed to a PCI address for a virtio-scsi controller.

If you change the model, you are supposed to leave the address field empty, so that libvirt sets it correctly. Or change the address field also appropriately.

Note that this bug can be reproduced entirely within virt-manager.  No manual editing of guest XML is being done here.  So, fix is to make virt-manager delete the address field when the SCSI controller model is changed, allowing libvirt to automatically assign a new address with the correct type.

Signed-off-by: Seeteena Thoufeek <s1seetee@linux.vnet.ibm.com>
2016-12-12 21:12:09 -05:00
Chen Hanxiao b7eb3e57ea We can't clone a VM in some scenarios,
such as a VM is active.

This patch will disable 'Clone' label in VMActionMenu
if we can't clone a VM,
as same as we did for 'Clone' button in clone ui page.

Signed-off-by: Chen Hanxiao <chenhanxiao@gmail.com>
2016-10-06 23:12:59 +08:00
Jim Fehlig 561f5cd3e6 virt-manager: drop 'xenmigr' scheme from Xen migration URI
For Xen, virt-manager uses a 'xenmigr' URI scheme, which is not
supported by the libvirt libxl driver. Attempting migration
fails with

libvirtError: invalid argument: unable to parse URI: xenmigr://myhost

The old xend-based libvirt driver supports this scheme, but also
supports an empty scheme. It's not clear what the 'xenmigr' scheme
is used for. 'xenmigr' is not referenced by any files in the Xen
code-base, including old branches with xend.

Drop setting scheme to 'xenmigr' when creating the Xen migration URI.

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
2016-09-08 11:47:52 -04:00
Jim Fehlig 0425975f38 virt-manager: use virDomainMigrate3 API
libvirt has supported the migration V3 protocol for many years now.
A nice feature of the virDomainMigrate3 API is that it will detect
the protocol version supported by the underlying hypervisor,
including whether it supports the extensible parameters variant,
and call the hypervisor API with parameters fixed up as needed.

Change virt-manager to use the virDomainMigrate3 API, allowing
migration to work with hypervisors that only support the extensible
parameters variant of the migration V3 API.

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
2016-09-08 11:47:45 -04:00
Jovanka Gulicoska 44dd5ae0a6 Fix storage pool refresh event signal
When creating a storage volume, it wouldn't show up in the list
since the refresh signaling was busted.
Code was using VIR_STORAGE_POOL_EVENT_REFRESHED which was dropped
from lifecycle event type, refresh is introduced as top level
event.
2016-08-19 11:06:44 -04:00
Pavel Hrdina da81d4c32c console: don't use _close_viewer directly
Function _close_viewer should be always called together with setting
unavailable page.  Call only _activate_unavailable_page which does both things.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2016-08-18 10:36:04 +02:00
Pavel Hrdina 354877b90e console: set unavailable page while closing details window
We need to set unavailable page in order to trigger _init_viewer() function.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1365367

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2016-08-18 10:36:04 +02:00
Jovanka Gulicoska bc42fac710 Use node device update event support
API will be available in upcoming libvirt 2.2.0
2016-08-17 09:03:10 -04:00
Jovanka Gulicoska ead5fdffff Use node device lifecycle events
API will be available in upcoming libvirt 2.2.0
2016-08-11 10:14:30 -04:00
Tristan Helmich 27703ca379 storage: Enable creation of zfs storave volumes 2016-08-09 11:48:34 -04:00
Chen Hanxiao 911dac0dfa snapshot: start snapshot when double-click the item of snapshot list
Signed-off-by: Chen Hanxiao <chenhanxiao@gmail.com>
2016-08-02 13:20:15 -04:00
Pavel Hrdina 810c73864a translation: mark some strings to be translated
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2016-07-26 09:32:14 +02:00
Cole Robinson 9a67fc4d6e storagepool: Don't double invoke 'refresh' when events are present
We need to tweak refresh() handling to work similar to the shared
XML and status caching in libvirtobject.py: when the user manually
invokes the refresh() operation, and storage events are set up,
we just invoke the refresh() but let the event loop handle
refreshing the cache.

This fixes a backtrace when invoking a manual refresh via the
host details dialog
2016-06-23 15:38:31 -04:00
Cole Robinson cdf5d32434 libvirtobject: Rename refresh_...->recache_from_event_loop
Since 'refresh' is kind of ambiguous now that we support pool
refresh events
2016-06-23 14:48:04 -04:00
Cole Robinson 61a4318f85 storagelist: Remove unused function 2016-06-21 19:15:43 -04:00
Cole Robinson e69cc002b1 viewers: spice: Catch failure to setup usbdev manager
Since some distros like openbsd don't compile support for
usb redirection, which makes this fail

https://bugzilla.redhat.com/show_bug.cgi?id=1348479
2016-06-21 09:01:32 -04:00
Cole Robinson 6d587c40bb storagepool: Don't refresh newly arriving pools
If they show up while a connection is 'active', it means they were
just defined/created, and thus a pool refresh is likely redundant
2016-06-20 17:21:46 -04:00
Cole Robinson 53459cb0f6 conn: Don't process any pool REFRESHED events during conn startup
When new pool objects appear, we call refresh() on them, to ensure
we have the latest data (in case manual changes were made to the
storage pool directory behind libvirt's back, which is quite common).

However with the storage event support, this results in lots of
REFRESHED signals during initial connection startup, which kick
off redundant object polling.

Avoid storage REFRESHED events if they come in before the connection
is finished starting up to skip this redundant polling.
2016-06-20 17:07:26 -04:00
Cole Robinson 6a740ff91c conn: Build default pool before registering events
Otherwise this triggers some event calls and results in double
polling during connection startup. Doesn't cause any issues, just
spams the logs and needless libvirt calls
2016-06-20 17:03:12 -04:00
Jovanka Gulicoska b904d62e47 Use storage pool lifecycle events
API will be available in upcoming libvirt 2.0.0
2016-06-18 11:08:14 -04:00
Cole Robinson 20c2d5b6ff delete: Don't offer to delete floppy media by default
Even if it's not marked readonly or shareable, floppy media is
very likely to be a shared resource and not something that belongs
to the VM that the user will want to delete by default.
2016-06-17 13:06:35 -04:00
Cole Robinson 9f297eda5b virtinst: guest: drop 'continue_install' concept
continue_install is intended to facilitate windows XP style 3 stage
installs:

  stage 1: initial dos style disk setup, reboot
  stage 2: actual full installer, reboot
  stage 3: OS is functional, virt-install is done

The code assumed that we needed to keep the cdrom as the primary
boot device for the second stage, so virt-install/virt-manager needed
to hang around through the second stage run, wait until the VM shutdown,
then encode the final XML to boot of the disk.

Windows is and always has been smart enough to handle that case though...
after the initial boot, if we set the hd as the primary boot device
for stage 2, the disk bits that windows already installed will make
use of the cdrom as necessary. So the entire premise of continue_install
is irrelevant. Maybe back when it was added, when xen didn't even have
working ACPI support, this served a purpose, but I'm pretty sure we
can safely drop it nowadays.
2016-06-17 07:52:42 -04:00
Cole Robinson 5cd1b57852 create: customize: Fix inadvertent disk removal on install fail
If the first install attempt fails, then the second attempt succeeds,
we were still removing the disk images we created as though the
install never succeeded. We need to clear out the cached failed_guest
value via the customize dialog callback

https://bugzilla.redhat.com/show_bug.cgi?id=1342043
2016-06-16 19:47:49 -04:00
Pavel Hrdina 0acdea1dad virtManager.details: show firmware options also for XEN guests 2016-06-16 12:16:53 +02:00
Pavel Hrdina 5ecc2b440a virtManager.create: don't clear recommended machine if none is selected
This improves loading domcapabilities to get domcapabilities for recommended
machine, not for default machine.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2016-06-16 12:00:10 +02:00
Jovanka Gulicoska 053672764f storagelist: code cleanup
Remove cb() function calling pool.refresh, instead use pool.refresh
in vmmAsyncJob
2016-06-14 19:17:06 -04:00
Pavel Hrdina 2f0b40ac00 virtManager.config: fix pylint warning
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2016-06-10 18:05:39 +02:00
Pavel Hrdina 09cc6f3832 console: add support to forget password
If password for console is saved currently there is no way how to tell
virt-manager to forget that password.  This patch improves the authentication
page in order to provide a way how to forget password simply by unchecking the
"Save this password in your keyring".

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2016-06-07 20:03:27 +02:00
Pavel Hrdina 7e1bd1d762 console: fix checkbox to save password if it was loaded from keyring
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1302175

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2016-06-07 20:02:45 +02:00
Pavel Hrdina 7280dcf7df create: report an error if storage doesn't exists for import installation
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1305210

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2016-06-07 19:48:24 +02:00
Pavel Hrdina b327191a20 maint: fix pylint warnings wrong-import-order
standard import "import logging" comes before "from gi.repository import GLib"

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2016-06-07 17:37:06 +02:00
Pavel Hrdina efd1d2dd07 cpu: config: replace host-cpu-model by host-model-only
Commit f5c32063 replaced host-cpu-model by host-model-only but forget those two
places.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2016-06-07 09:06:13 +02:00
Pavel Hrdina 2d554aca7b ui: remove "Restore Saved Machine..." from File menu of Connection Details
Commit 839ce682 removed deprecated support of save/restore which was replaced by
managedsave feature.  This is a leftover that wasn't removed together with that
commit.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1340356

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2016-05-31 13:09:48 +02:00
Pavel Hrdina 4506d49ff5 addhardware: don't remove QXL if VNC graphics are configured
Commit 1a6e803a introduced a fix for bogus behavior of QXL+VNC where
there was no cursor visible by disabling this configuration in
virt-manager.  We should enable it again because this is a supported
configuration and the bug was actually in QEMU.

This is now fixed in qemu-2.6.0 [1] so revert commits 1a6e803a and
67ca0a9f.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1326544

[1] http://lists.nongnu.org/archive/html/qemu-devel/2016-03/msg00507.html

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2016-05-20 18:10:24 +02:00
Pavel Hrdina bf99c0ce82 virt-manager: fix --show-domain-creator to not depend on manager window
Commit a0c2fdf4 fixed a bug that there was no way how to close the app.

The original issue isn't present anymore but reverting that commit isn't
enough.  We need to increment/decrement window count while
showing/closing the create window in order to not exit right after
the create window is opened.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1331707

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2016-05-20 12:02:03 -04:00