Commit Graph

336 Commits

Author SHA1 Message Date
Cole Robinson
5945b8c4a1 connection: Drop redundant XML sanitizing 2013-10-06 13:00:30 -04:00
Cole Robinson
56b9f6187b Streamline support checks
Just use one function check_support
2013-10-06 10:08:04 -04:00
Cole Robinson
d4103eac26 virt-install: Add '--console none' and '--channel none'
For skipping the default channel and default console behavior
2013-10-06 09:43:56 -04:00
Cole Robinson
18fa751059 Add qemu-guest-agent channel automatically for supported OS 2013-10-06 09:19:59 -04:00
Cole Robinson
f44ad5ae05 Default to virtio console for supported OS
This could cause issues for people trying unattended non-graphical
kickstart installs and expecting ttyS0 in the guest to be hooked
up to the default console. So to get back the default behavior, you
can do:

  --console pty
2013-10-06 08:53:05 -04:00
Cole Robinson
dae3678d26 guest: Absorb more default device checks 2013-10-06 08:30:33 -04:00
Cole Robinson
eede884554 guest: Set more involved clock defaults for qemu
The XML we use is:

  <clock offset="utc">
    <timer name="rtc" tickpolicy="catchup"/>
    <timer name="pit" tickpolicy="delay"/>
    <timer name="hpet" present="no"/>
  </clock>

Which translates to the qemu commands:

    -no-hpet -no-kvm-pit-reinjection -rtc driftfix=slew

The latter two bits are already used by openstack and gnome boxes by
default.

On RHEL hpet is compiled out so -no-hpet is the default,
but not everywhere else. Though recently the RH guys confirmed that
for regular usage it should be turned off because a) qemu support
is not that good, b) most users don't need it anyways c) it has
a performance penalty.

This default can be overridden from a virt-install command like

  --clock rtc_tickpolicy=delay

When Guest() sees that a timer has already been defined, it won't
set the new defaults, and that setting above is the old implied
default rtc setting.
2013-10-05 17:12:11 -04:00
Cole Robinson
d0b067f2fc virt-install: Add --clock option 2013-10-05 16:48:07 -04:00
Cole Robinson
a163f44a27 clock: Add timer parsing 2013-10-05 16:05:31 -04:00
Cole Robinson
ff73f1119e details: If we know the channel target name, pretty list it 2013-10-05 14:04:49 -04:00
Cole Robinson
0366589812 Rip out all support for local RHEL6 version checks
These bits only apply if virt-manager is running directly on a RHEL6.
Since latest virt-manager can't do that thanks to GTK3 conversion,
just drop it all.
2013-10-05 13:57:55 -04:00
Cole Robinson
34f23165b6 addhw: Add channel option for auto socket allocation 2013-10-05 13:54:28 -04:00
Cole Robinson
5f1187e4c3 addhw: Don't show target_type for every char device 2013-10-05 13:33:55 -04:00
Cole Robinson
9d21d2bb02 addhw: List known channel names in a comboboxentry 2013-10-05 13:27:11 -04:00
Cole Robinson
24137cdfe9 addhw: Add 'console' option for adding virtio consoles 2013-10-05 13:22:53 -04:00
Cole Robinson
f9fcac27a0 addhw: Don't advertise unused char types
Like vc, stdio, etc. They don't really have much use
2013-10-05 11:07:32 -04:00
Cole Robinson
98187eb4b7 util: Fix generate_name start_num logic
We would start at start_num+1 which was confusing, fix it to do
the right thing.
2013-10-05 10:22:27 -04:00
Fred A. Kemp
05254479db virt-install: Add --disk removable option 2013-10-04 07:57:13 -04:00
Fred A. Kemp
bcd47d6471 virtinst: Expose disk/target/@removable 2013-10-04 07:57:13 -04:00
Cole Robinson
d83b2c02fa virt-manager: Add USB3 convenience option to the controller UI
and a --controller usb3 option to virt-install
2013-10-03 16:34:28 -04:00
Giuseppe Scrivano
8e85840546 virt-install: allow to specify "startupPolicy" for --disk
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2013-10-03 16:51:23 +02:00
Giuseppe Scrivano
f5a7476497 virtinst: expose disk/source startupPolicy attribute
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2013-10-03 16:49:49 +02:00
Giuseppe Scrivano
b2e962fcf3 virtinst: Use the default keymap when running tests
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2013-10-03 16:49:45 +02:00
Cole Robinson
0bd2f97bda VirtualDisk: Try to append targets, not just use first free (bz #905439)
This used to happen:

- create VM with cdrom, cdrom gets hdc
- customize before install
- add new cdrom, gets target hda or hdb (first free target)
- new cdrom now has priority in the boot order

Change the logic to try to append targets first, and if there isn't
any space left, use the first free one. This may cause other issues
but we'll just have to wait and see.
2013-10-03 08:48:15 -04:00
Cole Robinson
5860b132dc tests: Add focused unit test for device numbering 2013-10-03 08:48:11 -04:00
Cole Robinson
0614e490c8 VirtualDisk: Don't try to force cdrom target=hdc
It was required a long long time ago, before qemu supported -drive
and possibly ancient xen. Nowadays it should be pointless, and contributes
to some issues like bz 905439
2013-10-02 20:31:57 -04:00
Cole Robinson
475ec1252e virt-install: Allow --disk target
Shouldn't be needed often, but just in case
2013-10-02 20:15:49 -04:00
Cole Robinson
18d8512699 Move the 'default graphics type' logic into Guest
So we can share it, and make virt-install more robust
2013-10-02 18:06:52 -04:00
Cole Robinson
a2cbb9f500 support: s/CONN_HV/CONN/g
We don't need to distinguish these days.
2013-10-02 16:41:23 -04:00
Cole Robinson
fb7868db19 Enable cache=None and io=native by default for block devices
This is where performance issues hit the most. This changes the
RHEL default to remove cache=None for all file volumes. If anyone
cares they can speak up, but it seems an overly unnecessary deviation
from upstream qemu.
2013-10-02 16:10:39 -04:00
Cole Robinson
9c57c72eac Default to adding USB2 for new enough KVM
We enable this for virt-install as well. To avoid it, you can do either

--controller usb,model=none or --controller usb
2013-10-02 15:54:35 -04:00
Cole Robinson
9194feb1f5 virt-manager: Default to qcow2 on kvm
qcow2 enables fancy features like snapshots and is generally more
desktopy, which we purport to be.

We only do this on not horribly old libvirt/qemu, and only on qemu
connections. This may work for xen but I'm not going to turn it on
until someone tests it.
2013-10-02 15:34:34 -04:00
Cole Robinson
fa0ee32172 virt-install: Fix multiple invocation of --disk pool=default
Don't use a global counter, just correctly specify a collidelist with
not yet created disk images
2013-10-02 13:20:27 -04:00
Cole Robinson
187ce92621 hostkeymap: Centralize parsing, don't be so noisy
And add /etc/vconsole.conf parsing to close bug 882183
2013-10-02 12:35:59 -04:00
Cole Robinson
67c62e68de create: Move name to last page, arch/type to first page
Moving name to the end allows us to do things like generate a default
name based on the chosen OS type, which we do here. This is bz 736951

Moving arch/type to the front page of the wizard simplifies validation
and will be needed to intuitively install arm guests without a bunch
of hacky workarounds.
2013-10-01 16:53:59 -04:00
Cole Robinson
37350859ce storage: Use qcow2 metadata preallocation if supported 2013-10-01 14:29:58 -04:00
Ying-Shiuan Pan
fa8422f278 support: decrease required libvirt version for stream console
According to the changelog of libvirt http://libvirt.org/news.html,
the required version for stream console should be 0.8.6.

Please check the link: http://libvirt.org/news.html, libvirt started
to support virDomainOpenConsole() since "0.8.6: Nov 30 2010". And there
were also many changes related to stream console.

In practical terms, I have tested the change with libvirtd-0.8.8 in
Ubuntu 12.04.2 (x64) and another ARM port libvird-0.8.8. I think changing
to 0.8.6 should be fine because according to the changelog there are
no big changes in libvirt-0.8.7 and libvirt-0.8.8.

Signed-off-by: Ying-Shiuan Pan <yspan@itri.org.tw>
2013-10-01 10:58:44 -04:00
Cole Robinson
dd823d2d8c cli: Don't log to debug files from the test suite
We shouldn't be doing it anyways, but my recent cache_dir change broke
a bunch of stuff without this.
2013-10-01 10:14:46 -04:00
Cole Robinson
0b58badfc1 Storage debug and scratch files in ~/.cache/virt-manager (bz 693028) 2013-10-01 08:28:15 -04:00
Cole Robinson
6043a88a0c snapshots: Add some specific UI for external snapshots
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.
2013-09-30 19:55:21 -04:00
Cole Robinson
45e84d46ec snapshots: Make state type/icon UI match other usage 2013-09-30 17:12:24 -04:00
Cole Robinson
b3e2d26337 snapshots: new: Automatically generate a snapshot name 2013-09-30 16:33:45 -04:00
Cole Robinson
34c502560f storage: Drop unused static function
This allows us to simplify the parameters for find_free_name
2013-09-30 16:22:12 -04:00
Cole Robinson
98a95b2e2d network: Add install() command, remove function from vmmConnection
This is the pattern used by other virtinst objects
2013-09-30 15:38:34 -04:00
Cole Robinson
2b74c46909 snapshots: Pretty up the 'new snapshot' dialog 2013-09-30 15:38:12 -04:00
Cole Robinson
ccb96e9e4a VirtualDisk: Add cache modes 'directsync' and 'unsafe' (bz 844907) 2013-09-30 14:30:50 -04:00
Cole Robinson
74e8fff069 clone: Fix a few misc issues 2013-09-29 11:31:03 -04:00
Cole Robinson
86a98f0d39 virt-install: Add --disk backing_store option 2013-09-29 11:23:59 -04:00
Cole Robinson
ddba6098f6 pollhelpers: Support nodedev listAllDevices 2013-09-29 09:39:55 -04:00
Cole Robinson
52e4976462 pollhelpers: Add fetch_volumes helper
That does the listAllVolumes support check to speed us up a bit.
2013-09-29 09:33:17 -04:00