903 Commits

Author SHA1 Message Date
Cole Robinson
2f775b6bf0 Mark more UI strings as translatable 2015-09-23 16:39:48 -04:00
Cole Robinson
7f1af40262 tests: Share sanitize_xml helpers 2015-09-22 12:41:57 -04:00
Cole Robinson
29745a9f75 clitest: Do a basic xen-pv install test 2015-09-22 12:41:57 -04:00
Cole Robinson
9dd0900b7d guest: Add default console device for xenpv
Libvirt already adds one so this is kinda redundant, but it makes
things clearer in the virt-manager 'customize' UI at least.
2015-09-22 12:41:57 -04:00
Cole Robinson
a538b69356 guest: Remove code for default virtio console
It's been disabled for a while and we don't plan on re-enabling it
2015-09-22 12:41:57 -04:00
Cole Robinson
f73a7e69a4 capabilities: Handle xen outputting os_type=linux
F22 libxl xen still puts old style type=linux in the XML, so we need to
handle it for caps lookup
2015-09-22 12:41:57 -04:00
Cole Robinson
85307b9bd2 devicefilesystem: Default to accessmode=mapped for qemu
libvirt qemu default's to accessmode=passthrough, which really only
works correctly when qemu is run as root, which isn't common for libvirt
nowadays. So use accessmode=mapped which has a better chance of working
2015-09-20 20:33:46 -04:00
Cole Robinson
6a9f0089b9 devicefilesystem: Rename mode->accessmode
To reflect the name in the XML
2015-09-20 20:16:21 -04:00
Cole Robinson
d5d6cfff2c Copy urlgrabber progress bar code into virt-manager.git
This is so we can drop the dep on system python-urlgrabber, which will
block us from going to python3.

All we need is like 300 lines from python-urlgrabber for the progress
bar. In reality our needs are much lower, we don't need the fancy
progress bar that urlgrabber provides, but it's nice to have. So if
keeping a copy of this code causes issues in the future, we can probably
come up with something simpler (or hopefully there's a more common
python progressbar impl that we can use at that point).
2015-09-18 20:55:44 -04:00
Cole Robinson
5584863d18 urlfetcher: Switch to requests and urllib2 instead of urlgrabber
urlgrabber is largely dead upstream and isn't going to be ported to
python3 AFAIK. So we will need to move off of it eventually.

Use requests for http handling which is the most common library nowadays,
and just plain old urllib2 for ftp fetching.
2015-09-18 19:50:35 -04:00
Cole Robinson
9a4f15f4ad urlfetcher: Rework early treeinfo lookup
We are duplicating the regex checks which I don't like. So just grab
the treeinfo early, and use that during the main distro lookup
2015-09-18 18:01:57 -04:00
Cole Robinson
b7beb0edb0 urlfetcher: Use python style tempfiles
Simplifies things WRT writing file contents
2015-09-18 17:11:37 -04:00
Cole Robinson
cda3e381e6 urlfetcher: Bunch of small cleanups to the ImageFetcher classes 2015-09-18 17:08:34 -04:00
Cole Robinson
053cda8de7 virt-manager: Add hidden options --test-old-poll and --test-no-events
For easy testing of fallback codepaths
2015-09-17 15:18:22 -04:00
Cole Robinson
b15c44923c capabilities: Handle missing cpu_map.xml
It shouldn't be a fatal issue. Hit on freebsd where they install
libvirt bits into /usr/local

https://www.redhat.com/archives/virt-tools-list/2015-September/msg00056.html
2015-09-16 16:55:37 -04:00
Cole Robinson
590f5a525b urlfetcher: Clear cached ftp connection on cleanupLocation
Reported-by: Chun Yan Liu <cyliu@suse.com>
2015-09-14 10:34:19 -04:00
Charles Arnold
360fe11040 virtinst: correctly find the sles s390x kernel and initrd
Allow virt-install to correctly find the SLES kernel/initrd on the media
when installing an s390x VM.

Signed-off-by: Charles Arnold <carnold@suse.com>

(crobinso: fix minor pep8 issues)
2015-09-11 12:48:52 -04:00
Cole Robinson
6e9195cf2f devicedisk: Don't perform local permission check in test suite 2015-09-09 14:26:49 -04:00
Cole Robinson
e3fb2f9023 virt-manager: Don't print ugly logging if VIRTINST_TEST_SUITE set 2015-09-08 12:33:35 -04:00
Pavel Hrdina
39da70a456 Added option to enable kvm_hidden feature in virt-install cmd-line
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2015-09-08 12:03:04 +02:00
Cole Robinson
60d6161efc create: Clean up default storage if VM fails (bz #799721)
Similar to the virt-install change, we only do this with default storage
if the installed failed in such a way that we never left the wizard.

It isn't going to cover all cases, but should handle the common issue
of stranded disk images

https://bugzilla.redhat.com/show_bug.cgi?id=799721
2015-09-06 15:10:17 -04:00
Cole Robinson
697164f2e5 virtinst: Centralize urlgrabber meter lookup
We will eventually want to drop this dep since it's basically dead
upstream, this is a small step in that direction
2015-09-06 15:09:44 -04:00
Cole Robinson
1237be9d1a virt-install: Clean up created disk images if VM creation fails
We are conservative here, only cleaning up disk images if libvirt
fails to even accept the XML. Otherwise the VM may already be
running or defined, and the user has to do some cleanup anyways.
2015-09-06 14:27:37 -04:00
Cole Robinson
1d7b74ba52 uri: Add a MagicURI class for handling magic virtinst URIs
And document it
2015-09-06 12:00:25 -04:00
Cole Robinson
57fa64e542 details: Use devicedisk path lookup for source_pool 2015-09-05 17:59:47 -04:00
Cole Robinson
d449fb6fd5 xmlbuilder: Kill make_xpath_cb
There's no users left, and it's better to come up with a solution at
the caller anyways
2015-09-05 17:20:43 -04:00
Cole Robinson
9e23843961 devicechar: Simplify host/port/mode handling
It's kinda crazy, and parts of cli API depend on it, but we can strip
a lot of the confusing bits away by pushing a small bit of logic to
the callers.
2015-09-05 17:16:18 -04:00
Cole Robinson
3f6081abe5 disk: Support <seclabel> overrides 2015-09-05 14:42:03 -04:00
Cole Robinson
68962f48f7 virtinst: Support multiple seclabels
libvirt has supported this for a while. Wire it all up through the
cli, and fix some bad assumptions along the way.
2015-09-05 13:49:36 -04:00
Cole Robinson
7786c4b35b xmlbuilder: Make clear() work for child objects
So we can call clear() on a Guest owned VirtualDisk, and it actually
does the correct thing. This allows us to enable clearxml= cli option
for most devices.
2015-09-05 13:16:35 -04:00
Cole Robinson
4d87d2f27b cli: Make child lookup not specific to guest devices
<seclabel> is not singleton nowadays, so we need to extend our
infrastructure to handle non-device child properties. This is part of
that
2015-09-04 16:16:25 -04:00
Cole Robinson
acfb988945 xmlbuilder: Make _add_child and _remove_child public
We have a lot of functions that are just wrappers around these, so
make it public for future use.
2015-09-04 15:47:43 -04:00
Cole Robinson
5e68b0fc3d guest: Don't try to set vmport on non-x86, it isn't supported (bz 1259998) 2015-09-04 12:14:22 -04:00
Cole Robinson
cde2f0ef67 Suppress gi warnings about lack of require_version 2015-09-03 17:31:43 -04:00
Charles Arnold
eb92178e0c storage: fix default storage pool lookup
virt-convert fails when the storage pool is already present but
is not called 'default'.

If the 'default' pool has been removed but another pool uses the
default location of /var/lib/libvirt/images virt-convert will fail
to find the pool and attempt to create another one with the same
path. This causes the conversion to fail.

Signed-off-by: Charles Arnold <carnold@suse.com>

(crobinso: Remove now-redundant 'pass')
2015-08-31 18:25:37 -04:00
Daniel P. Berrange
d6ea493d1b virtinst: support virtual port parameters for non-802.1Qbg NICs
Previous commit added support for virtual port profiles
on NICs, but only defined the attributes needed by the
802.1Qbg NIC type.

  commit 34e2ca8389ddf1c764109c4e5c74f8fd5bf0e604
  Author: Cole Robinson <crobinso@redhat.com>
  Date:   Fri Jan 31 16:51:02 2014 -0500

    cli: --network: Wire up virtualport options

This commit adds the profileid and interfaceid parameters
needed by 801.Qbh, openvswitch and midonet

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2015-08-28 12:40:18 +01:00
Cole Robinson
55b43dcbb8 osdict: Fix unix alias
Needs to point to proper libosinfo name freebsd9.0
2015-08-10 13:01:04 -04:00
Cole Robinson
82ea5bfc62 tests: Add qemu:///session unit tests 2015-08-10 12:46:47 -04:00
Cole Robinson
e22aeac5ae storage: session path should be ~/.local/share/libvirt/images
Not .local/libvirt/images :/ App dirs aren't supposed to be in ~/.local
2015-08-10 12:35:13 -04:00
Giuseppe Scrivano
76d6c5b597 virtinst: fix two undefined variable warnings
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2015-08-05 13:53:19 +02:00
Pavel Hrdina
745fa9fa5e scsi-storage: unify SCSI storage code and logic
There is no virtio-scsi or spapr-vscsi bus, but only 'scsi' bus.  There
are several types of SCSI controllers, but the SCSI storage don't care
about the SCSI controller and there is also no difference in address
specification or address type.  Use only 'scsi' bus for all SCSI storages
to correspond the reality and also the libvirt domain XML.  The only
difference is in the type of SCSI controller

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2015-08-05 13:41:47 +02:00
Pavel Hrdina
b06c91d2fc hostdev: add an address element for USB host devs if necessary
This issue was fixed for few years but only in virt-manager,
virt-install has the same bug.  If you have two USB devices with same
vendor and product ID, you need to use also address element to create
a valid XML to define that device into a guest.

This patch moves the logic from vmmAddHardware into VirtualHostDevice in
order to not duplicate that code for virt-manager and virt-install.

Also update the tests files to properly check this functionality.  I've
changed the USB device according the 'tests/testdriver.xml' and picked
one of the USB HUBs, because they have the same vendor and product ID.

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

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2015-08-05 13:32:04 +02:00
Chen Hanxiao
a51eea16f8 cli: fix a comment typo
s/uncoditionally/unconditionally

Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
2015-07-30 11:05:59 +08:00
Pavel Hrdina
466bf929ea osxml: detect all pseries machine types
For example the machine type could be "pseries-<host-os-version>".

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2015-07-22 15:20:04 +02:00
Pavel Hrdina
2d9587c114 support: enable hv_time since qemu-kvm 1.5.3 from RHEL
This feature is available in upstream Qemu since 2.0.0 but it was also
back-ported to downstream Qemu into qemu-kvm-1.5.3 released in RHEL-7.
Add a new check and enable hv_time also in RHEL systems if qemu new
enough.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2015-07-21 10:51:41 +02:00
Pavel Hrdina
1590490fa3 capabilities: detect ACPI and APIC capabilites properly
Instead of hard-coding that ACPI and APIC are enabled by default, detect
their presence from libvirt capabilities and use it.

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

(crobinso: Adjust for recently added test case)

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2015-07-14 13:26:42 -04:00
Pavel Hrdina
3ff35898a4 refactor detection of guest type capabilities
Each guest type can have its own capabilities and we should always ask
only for those capabilities.

The old approach was to get capabilities from libvirt and then for
example cycle trough all guests and return True, if any guest type
supports kvm or pae, etc.

Now we check those capabilities only for the correct guest type
according to defaults and input from user.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2015-07-14 13:11:40 -04:00
Pavel Hrdina
a2505def2c pep8 E731: do not assign a lambda expression, use a def
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2015-07-14 13:01:20 -04:00
Pavel Hrdina
c7049eb120 pep8 W503: line break before binary operator
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2015-07-14 13:01:20 -04:00
Kevin Zhao
8dbe96fc01 virt-manager : add support for architecture type "s390x".
For architecture "s390x",the disk and the network device are base
on "virtio" bus.The cdrom is based on "scsi".So set the default
cdrom bus as "scsi",the default bus as "virtio".Also the default
machine type is set to "s390-ccw-virtio" as it is the only supported
in "s390x".Also add a test cast of virt-install by cdrom in s390x.

(crobinso: Tweak test suite and minor formatting stuff)
2015-07-14 12:45:32 -04:00