Commit Graph

151 Commits

Author SHA1 Message Date
Cole Robinson 76887c9a32 engine: Switch tick threading model to use queues
And allow other parts of the API to request a priority tick that is
dispatched from the main tick thread.
2013-07-06 21:24:38 -04:00
Cole Robinson d427800f11 Share default_uri function 2013-07-06 20:09:18 -04:00
Cole Robinson ead31139b0 virtManager: Emit state change signals from objects
This is a step towards supporting listAll*() API and domain events.

We still proxy these signals through vmmConnection so that we don't
need to rework the dependent code yet.
2013-07-06 20:09:18 -04:00
Cole Robinson eb53a6770b vmmConnection: Minor cleanups to libvirt polling 2013-07-06 17:49:42 -04:00
Cole Robinson 125cbc4541 virtManager: connection: Clean up some inconsistent API 2013-07-06 17:24:51 -04:00
Cole Robinson c406a6433c VirtualConnection: cache version lookups 2013-07-06 15:39:00 -04:00
Cole Robinson c0deb97dba Fix --trace-libvirt option 2013-07-06 14:33:02 -04:00
Cole Robinson 94f8d4cfa9 VirtualConnection: cache capabilities XML
This means we can drop passing around the pre-parsed caps info everywhere.
2013-07-06 14:12:13 -04:00
Cole Robinson f5ef1edeea Drop a duplicated function 2013-07-06 12:48:20 -04:00
Cole Robinson 3005382e0d Make is_blktap_capable take a connection
So we don't perform the check if we're using a remote connection
2013-07-06 12:44:53 -04:00
Cole Robinson ba3aa9ecca Drop conn_max_vcpus validation
Let's just let libvirt throw an error in the rare occasion that we
exceed max vcpus.
2013-07-06 12:40:24 -04:00
Cole Robinson 492a039f7d VirtualConnection: proxy virtinst.support API
Simplifies the lives of callers, and will allow us to do caching later
2013-07-06 12:40:24 -04:00
Cole Robinson ec734191fc virtinst: connection: Absorb all scattered URI helpers 2013-07-06 12:40:24 -04:00
Cole Robinson 57e86259d8 Make conn required for all virtinst objects
This was the way the API had been heading, this just formalizes it.
2013-07-05 20:28:21 -04:00
Cole Robinson be2d9ddcb4 Add base conn object and bump minimum libvirt version to 0.6.0
This base connection object will be used to simplify the API in various
places, reduce libvirt API calls, and better share code between virtinst
and virt-manager. For now it just centralizes connection opening.

This also exposed various places where our handling for older libvirt
was busted, so raise our minimum host version to 0.6.0, the first
version that supports threaded client requests.
2013-07-05 16:42:19 -04:00
Cole Robinson 255ba11079 virt-manager: Drop remnants of read-only connection support
Haven't supported it for a while
2013-07-05 09:00:31 -04:00
Cole Robinson ea2a1331cf virtinst: Guest: Simplify passing in a connection 2013-07-03 13:37:00 -04:00
Cole Robinson 802ed1cba6 clone: Bunch of API cleanup
Simplify imports, drop back compat stuff, drop needless property handling.
2013-07-02 18:54:03 -04:00
Guannan Ren 88f2d1abe0 details: Add auto USB redirection support in console viewer
Add "Redirect USB device" option in console viewer. Initialize and
embed UsbDeviceWidget object from SpiceClientGtk into a dialog to
let user choose available USB devices for redirection.
Throw an error message if USB connection failed.
Auto-redirection is enable by default.

There is race between creating usbredir channel and calling
has_usb_redirection() when initializing spice session like
happening on virt-viwer. So adding a new signal handler
on_details_menu_virtual_manager_activate() to recheck the
status of usbredir channel, set "Redirect USB device" option
sensitive if it is availiable.
2013-07-01 14:33:59 -04:00
Guannan Ren d6fc079ae8 error: use helper function to embed customized widget into dialog 2013-07-01 14:33:32 -04:00
Guannan Ren dbdf6c0f43 add new "spice-disable-usbredir" option to disable autoredir feature
The value is stored in gsettings. By default, we use spice autoredir
feature for usb redirection.
2013-07-01 14:32:21 -04:00
Cole Robinson 22f9928a54 Fix some pylint 2013-06-30 14:33:33 -04:00
Cole Robinson 80e6389b75 Fix a spelling error 2013-06-30 14:33:01 -04:00
Cole Robinson eec74f1346 Don't show libvirt created nics/taps in net device list 2013-06-30 14:29:49 -04:00
Cole Robinson 0b2aa07480 host: Don't keep items in list when conn closes. 2013-06-30 12:49:48 -04:00
Cole Robinson cafaea8999 error: Don't append empty tb to details 2013-06-30 12:42:32 -04:00
Cole Robinson bc13c302de console: Warn if qemu+tcp URI and listen == 127.0.0.1 2013-06-30 11:44:58 -04:00
Cole Robinson a6d3b0ca14 createinterface: bridge delay is a float 2013-06-30 11:12:45 -04:00
Richard W.M. Jones 9d5c1cdb1c inspection: Check can_set_row_none before setting icon to None.
Previously one could set the icon field of a tree model to None, but
with Gtk3 and older versions of pygobject3 this would fail.

Use can_set_row_none to test for this condition and work around it.

The previous traceback was:

Traceback (most recent call last):
  File "/home/rjones/d/virt-manager/virtManager/manager.py", line 981, in vm_inspection_changed
    self.get_inspection_icon_pixbuf(vm, 16, 16)
  File "/usr/lib64/python2.7/site-packages/gi/overrides/Gtk.py", line 1152, in __setitem__
    self.model.set_value(self.iter, key, value)
  File "/usr/lib64/python2.7/site-packages/gi/overrides/Gtk.py", line 1298, in set_value
    Gtk.TreeStore.set_value(self, treeiter, column, value)
  File "/usr/lib64/python2.7/site-packages/gi/types.py", line 47, in function
    return info.invoke(*args, **kwargs)
TypeError: Argument 3 does not allow None as a value
2013-06-28 13:46:49 -04:00
Richard W.M. Jones ab312910f2 inspection: Don't recursively try to inspect guestfs-* temporary VMs.
This is a hack.  Should libvirt have a way to mark these VMs?

Note you'll only come across this problem if you run virt-manager as
root with libguestfs >= 1.20 on Fedora >= 18 (libguestfs using libvirt).
2013-06-28 13:05:16 -04:00
Cole Robinson 367041a8d7 Revert "details: Add USB redirection support in console viewer"
This reverts commit 7e1e21a26a.

Was accidentally applied while patch was still in review.
2013-06-28 11:12:23 -04:00
Cole Robinson 555b2d960d Revert "error: new helper function to embed customized widget into dialog"
This reverts commit ee7794a616.

Was accidentally applied while patches are still in review.
2013-06-28 11:11:28 -04:00
Cole Robinson 771707fb9c Minor TPM UI fixups 2013-06-26 20:20:12 -04:00
Stefan Berger 4453305d64 Add GUI elements for adding a TPM device to a guest
Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2013-06-26 19:45:20 -04:00
Stefan Berger 2766dd5c6a Add GUI elements for TPM passthrough details
Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2013-06-26 19:45:16 -04:00
Guannan Ren 7e1e21a26a details: Add USB redirection support in console viewer
Add "Select USB devices to redirect" option in console viewer
Initialize and embed UsbDeviceWidget object from SpiceClientGtk into
a dialog to let use choose available USB devices for redirection.
Throw an error message if USB connection failed.
2013-06-24 12:39:11 -04:00
Guannan Ren ee7794a616 error: new helper function to embed customized widget into dialog
helper function: show_info_with_widget()
Widget argument has to be type of Gtk.VBox
2013-06-24 12:39:11 -04:00
Cole Robinson 57345cd61a Tweak 'libvirt needs to be started' first run message 2013-06-24 12:15:28 -04:00
Martin Kletzander c457363f5a Don't duplicate SCSI controller IDs and assign proper addresses
When Virtio SCSI disk was added to machine with default-model SCSI
controller, the new Virtio SCSI controller had the same index as the
default one (so the domain wouldn't start or with newer libvirt even
define).

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

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
2013-06-19 18:18:33 -04:00
Cole Robinson ae3ed8db03 async: Revive timer unregistering, unintentionally dropped. 2013-06-18 10:59:19 -04:00
Cole Robinson f3e061da36 asyncjob: Fix tracebacks if main loop exits early
Our use of nested mainloops is still kinda wonky and a proper solution
will take some decent effort. Deal with the fact that a main loop
might exit before the thread completes, and the thread will try to
talk to resources that no longer exist.
2013-06-18 09:01:45 -04:00
Cole Robinson 1c8bf88db7 baseclass: Add unregister wrappers for idle and timeout
If an idle handler raises an exception, it isn't unregistered and loops
forever. This is a regression from previous pygobject and pygtk:

https://bugzilla.gnome.org/show_bug.cgi?id=702552

Work around this for now with our own wrappers.
2013-06-18 08:49:34 -04:00
Leonardo Garcia 660178abe1 Permit to delete a running VM.
The VM will be forced off before being deleted.

(crobinso: fix a minor pylint violation)
2013-06-18 08:49:18 -04:00
Cole Robinson 44328b1507 Fix some pylint 2013-06-17 20:17:20 -04:00
Leonardo Garcia 18bf5f508d Add delete VM option in console viewer.
(crobinso: Fix a minor pep8 warning)
2013-06-17 20:07:37 -04:00
Cole Robinson 30d509feec delete: Tweak 'are you sure' message for storage deletion 2013-06-17 13:41:32 -04:00
Cole Robinson b339295fb5 Sigh, fix previous commit. 2013-06-14 16:32:48 -04:00
Cole Robinson ea9fadac78 config: Fix changing tick timeout on the fly 2013-06-14 16:22:33 -04:00
Cole Robinson 3889bc480b asyncjob: Fix dialog closing and progress bar pulsing
After the recent cleanups
2013-06-14 14:28:04 -04:00
Cole Robinson 8914a61689 Fix exiting app if asyncjobs are running 2013-06-14 11:24:52 -04:00