Commit Graph

1177 Commits

Author SHA1 Message Date
Cole Robinson
467c524684 tests: Add show_nographics_warnings coverage 2018-10-13 11:50:49 -04:00
Cole Robinson
41d0f8fdf1 installer: Order install CDROM before any manual CDROMs
This is important for the virtio-win case: --cdrom media should
always be ordered first, so it's the boot preference.

https://www.redhat.com/archives/virt-tools-list/2018-September/msg00048.html
2018-10-13 10:44:09 -04:00
Cole Robinson
2e6093d6b6 create: Show inserted CDROM media in customize
This makes it easier for people to change install media afterwards
if they want:

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

But also this makes it more clear that if users want to use virtio-win,
they need to add an additional CDROM and not try to reuse the install
CDROM device
2018-10-13 10:17:50 -04:00
Cole Robinson
eaf285f772 tests: xmlconfig: Drop a lot of redundant config 2018-10-13 10:11:43 -04:00
Cole Robinson
2482e57a15 create: Fix customize boot page
Installer reworks dropped the guest.autostart flag, need to add
it back. Add Uitest for it
2018-10-13 09:46:06 -04:00
Cole Robinson
11d1cbdf06 installer: DistroInstaller -> InstallerTreeMedia
Now we have only one Installer class, and callers don't need to
worry about choosing a particular class type depending on their
needs, just pass cdrom vs. location to the installer init and
we figure out everything behind the scenes.

Besides simplifying the callers this makes the control flow a
lot easier to follow whether looking at InstallerTreeMedia or
Installer classes
2018-10-13 09:42:11 -04:00
Cole Robinson
e4e924ea50 tests: Add libosinfo iso detection test
With another fake iso, based on stripped down centos 6.5 boot iso.
Reason we do centos 6.5 is that everything newer also compares
on volume size, and we don't want to store a huge iso in git.
2018-10-12 17:15:58 -04:00
Cole Robinson
8ff2043f2a urldetect: Drop boot.iso fetching
Since this was only used for the --cdrom $treeurl case, this is
no longer used
2018-10-12 15:54:39 -04:00
Cole Robinson
b90b8e3c07 distroinstaller: Remove --cdrom $URL boot.iso fetching
And instead treat any URL passed to --cdrom as a file to
access directly over http. Rationale for dropping this is
laid out here:

https://www.redhat.com/archives/virt-tools-list/2018-May/msg00011.html
2018-10-12 15:54:36 -04:00
Cole Robinson
4f320c2b98 distroinstaller: Remove implied cdrom installs
This is an obscure feature that I'm skeptical anyone is relying on,
and has weirdly subtle semantics that are hard to test.
2018-10-12 15:33:05 -04:00
Cole Robinson
4096800f71 Remove interface UI
Discussed here: https://www.redhat.com/archives/virt-tools-list/2018-October/msg00032.html
2018-10-12 14:38:05 -04:00
Cole Robinson
23d15d7ad1 uitests: Rename console->livetest.py
It has more than console tests. let's use it as the destination for
all live VM testing
2018-10-12 13:49:53 -04:00
Cole Robinson
2e467484bf uitests: Add rbdceph and qemu search perms tests 2018-10-12 13:49:53 -04:00
Cole Robinson
425f599c84 device: disk: Move all path search handling to diskbackend
Simplify it slightly by combining return output and removing
an entry point. Add some additional test cases for it
2018-10-11 19:11:16 -04:00
Cole Robinson
527783f37b tests: Make rbd path names more descriptive 2018-10-11 17:33:59 -04:00
Cole Robinson
1cd9d0b524 tests: scsi reservation test shouldn't check host /dev/sda
Was failing in our CI
2018-10-11 17:02:45 -04:00
Cole Robinson
5c96574512 tests: Add test-many-devices disk device=lun example 2018-10-11 16:09:55 -04:00
Lin Ma
eb1a67a595 cli: disk: Add options to support SCSI persistent reservation
Create the managed or the unmanaged PR object to enable SCSI persistent
reservation for LUN Passthrough

Signed-off-by: Lin Ma <lma@suse.com>
2018-10-11 16:00:28 -04:00
Cole Robinson
42a96cfd59 virt-install: add --destroy-on-exit
This makes the console window behave like a raw qemu command line:
when the user closes it, the VM is hard powered off.
2018-10-11 15:24:16 -04:00
Cole Robinson
3e55e89453 tests: Add better virt-install console testing 2018-10-11 12:19:48 -04:00
Yossi Ovadia
215d296b61 cli: add --boot rebootTimout
virt-install -n blah -r 1024 --vcpu=1 --disk=/root/vm/blah.qcow2,size=10\
 --network=bridge:br-public --pxe --boot=network,rebootTimeout=3

By default, in case of (first) pxe boot failure the VM will simply
stop trying.
By adding the above, VM will re-try pxe boot. ( useful when DHCP not
replys on first attempt.

Libvirt support it and VM XML will look as follow : ( 'bios rebootTimeout'
will be created under OS section. )

  <os>
    <type arch='x86_64' machine='pc-i440fx-rhel7.5.0'>hvm</type>
    <boot dev='network'/>
    <bios rebootTimeout='3'/>
  </os>

(crobinso: fix it, add test case)
2018-10-11 11:24:07 -04:00
Cole Robinson
fcfc1df35e tests: initrdinject: Add a debian test case 2018-10-09 15:41:43 -04:00
Cole Robinson
71626b1dd2 initrdinject: Remove RHEL4 support
It's end of life, let's move on
2018-10-09 14:18:36 -04:00
Cole Robinson
b29f214834 tests: dist: Catch atk names marked translatable
We aren't using them in a translatable way
2018-10-07 18:53:39 -04:00
Cole Robinson
a1d1b4d5a0 engine: Drop PackageKit integration
On first run of the app we will check to see if libvirt and qemu
are installed, and if not, offer to install them. In theory anyways.
In practice this stuff breaks repeatedly and is a pain to test because
every desktop has their own API provider with subtly different behavior.

My last round of testing about 12 months ago: apper on KDE was completely
busted and apparently unmaintained (although that may have changed lately),
gnome-software is the latest packagekit provider on gnome and completely
changes the semantics of the API compared to old style gnome-packagekit
that break a lot of virt-manager assumptions.

So I'm tired of it and want it all gone. Still use systemd to try and
check if libvirtd is running, and provide error messages at startup
to guide people.
2018-10-07 14:24:05 -04:00
Cole Robinson
321ec81cb7 uitests: Add a test case for multiconnect
And the mediacombo behavior for that case
2018-10-06 20:37:33 -04:00
Cole Robinson
019a33e975 clock: Drop RHEL hyperv clock distinction
I think enough time has passed that we can just check the
support based on the older RHEL version.
2018-10-06 19:45:51 -04:00
Cole Robinson
0638e72f1f Remove 'Choose CD', rework details and create media change
The new UI is handled in mediacombo. It's a combobox+entry. The
combobox is prepopulated with host cdrom/floppy devices, and
previously used media paths from gsettings

The new VM wizard no longer has separate UI for cdrom device vs
ISO media. The choosecd dialog is gone all together, and media
is changed with the 'apply' button like all other details changes
2018-10-06 19:37:16 -04:00
Cole Robinson
256bd2bcf8 uitests: console: fix fullscreen test on second monitor 2018-10-06 13:17:59 -04:00
Cole Robinson
877cbade4a tests: Move OLD_OSINFO check to central place
Other tests may need it in the future
2018-10-04 19:29:41 -04:00
Cole Robinson
469fed08a0 guest: Default to cpu mode=host-model if libvirt is new enough
We check whether host-model is exposed in domcapabilities, which
indicates host-model is using the smarter new safer method in
cooperation with qemu
2018-10-04 14:43:41 -04:00
Cole Robinson
76334bfabd guest: Add DomainCapabilities caching 2018-10-04 12:30:14 -04:00
Cole Robinson
210cb858bc controller: usb: Use ports=15 for usb3
It's the max that qemu supports, so why not add as many as possible.
Gerd indicated in private mail that he didn't know of any issues
with it.
2018-10-04 11:55:57 -04:00
Cole Robinson
35dd99f172 cli: Don't hardcode nec-xhci for --controller usb3
Use our helper function to choose the optimal model
2018-10-04 09:24:43 -04:00
Cole Robinson
046a242bd4 guest: Use USB3 for x86 qemu if OS supports it
Using new annotations in osinfo-db
2018-10-03 19:02:07 -04:00
Marc-André Lureau
4ad74278ca cli: add memory backing access_mode & source_type
Allow to set some memory backing options, ex:
--memorybacking access_mode=shared,source_type=anonymous

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2018-10-02 11:12:13 -04:00
Cole Robinson
9db3b5c7e5 ui: create: Drop lots of indentation
Makes better use of horizontal space
2018-10-02 10:26:04 -04:00
Cole Robinson
d389e93586 tests: Fix with latest libosinfo
And add some logic to skip these tests on older libosinfo as well
2018-10-01 11:34:51 -04:00
Cole Robinson
757910a1bb cli: Add --metadata os_name= and os_full_id=
Allows changing the libosinfo metadata for an existing vm via virt-xml
2018-09-30 20:55:32 -04:00
Cole Robinson
b19f94299b details: Add OS name view/edit, + oslist rework
This is just a big nasty commit.

Turn the OS inspection page into an always available page that
shows the libosinfo name from the domain metadata XML. Use oslist.py
and have it absorb more of the common behavior needed by create.py
and details.py. Add UI tests for it all
2018-09-30 20:55:32 -04:00
Cole Robinson
75c64151b1 engine: Exit app if if --show-X bits fail
We were missing some cases. Simplify the code while we are at it
and add some extra ui test cases
2018-09-30 20:55:18 -04:00
Cole Robinson
97ea737386 devices: interface: Have x86 fallback model be e1000
libvirt will use rtl8139, but the qemu default changed a while
ago to e1000, and libvirt has diverged. e1000 is more modern and
considered the better default here, so use it
2018-09-29 14:35:28 -04:00
Cole Robinson
627bfabc32 pylint: Silence output on Fedora 29 2018-09-29 14:27:34 -04:00
Cole Robinson
4adb1c8c30 pycodestyle: fix W605 invalid escape sequence 2018-09-29 13:59:19 -04:00
Cole Robinson
2d44912a70 pycodestyle: Disable W504 line break after binary operator 2018-09-29 13:59:15 -04:00
Cole Robinson
7356afcca7 osdict: Use USB tablet if no OS specified
Most OS users will be installing benefit from it, so make it the
default
2018-09-29 13:36:42 -04:00
Cole Robinson
87d19ebf36 tests: Add rhel5 and win10 kvm XML tests 2018-09-14 14:37:12 -04:00
Cole Robinson
a741f595ea guest: Drop update_defaults
Fold its one purpose into the UEFI setting bits, fix it and test it
2018-09-13 15:59:27 -04:00
Cole Robinson
d7ff46f7f5 guest: Encode the cli --os-variant in the XML
And add some testdriver examples of it
2018-09-13 15:11:22 -04:00
Cole Robinson
86ef998023 guest: Lookup osinfo object from libosinfo metadata XML 2018-09-13 15:03:36 -04:00
Cole Robinson
bad5eabd93 domain: Add metadata.libosinfo
From the libosinfo discussion here:
https://www.redhat.com/archives/libosinfo/2018-September/msg00003.html

This is a cross-app schema for tracking libosinfo OS ID in the
domain <metadata> XML. Example:

   <metadata>
     <libosinfo:libosinfo xmlns:libosinfo="http://libosinfo.org/xmlns/libvirt/domain/1.0">
       <libosinfo:os id="http://fedoraproject.org/fedora/17"/>
     </libosinfo:libosinfo>
   </metadata>
2018-09-13 12:39:56 -04:00
Cole Robinson
baaab74b6d xmlapi: Rework xmlns setting slightly
So the xmlns is not always set on the top element. We need this for
custom <metadata> support
2018-09-13 12:39:56 -04:00
Cole Robinson
6063538750 guest: Replace os_variant with set_os_name
And have callers directly access osinfo.name if they need it
2018-09-12 17:24:28 -04:00
Cole Robinson
d669ce8417 tests: Add a set_defaults idempotent test 2018-09-12 12:36:58 -04:00
Cole Robinson
2d53f7223d clitest: Test comparison against --os-variant fedora-unknown
Which always maps to the latest Fedora. May help catch accidental
changes
2018-09-12 12:33:16 -04:00
Cole Robinson
e903d374c2 guest: Always encode machine= in XML
Don't rely on libvirt's default. This makes any XML changes more
explicit, and can help other parts of the code that may depend on
a machine type being encoded
2018-09-12 12:16:47 -04:00
Cole Robinson
a2fa799478 capabilities: Drop lookup_virtinst_guest
Users should just init Guest() directly, and call
set_capabilities_defaults if they need default arch data
2018-09-06 20:28:05 -04:00
Cole Robinson
5f22f41da4 guest: Absorb capabilities defaults setup
Rather than forcing API users to go through the capabilities APIs.
This lets us simplify things in virt-install quite a bit, and is
needed for smarter machine type defaults
2018-09-06 20:12:49 -04:00
Cole Robinson
a09a46289a addhardware: Move controller list logic to virtinst
And tweak the UI defaults a bit, preferring virtio-scsi and
usb3
2018-09-06 16:05:12 -04:00
Cole Robinson
7994dc90c8 addhardware: Move video model list to virtinst
And make it smart about the hypervisor
2018-09-06 14:45:05 -04:00
Cole Robinson
b3865d7b0d addhardware: Drop tcp/udp/dev char support
I know openstack uses tcp consoles but for end users I've never
really heard about it. RHEL compiles out udp as well. I'm fine telling
users to go to the cli and use virt-xml for this use case.

Use this opportunity to drop a lot of code that only simplified the
case when there are tons of char options we need to consider
2018-09-06 13:28:21 -04:00
Cole Robinson
cd07d6af34 sound: Track recommended models in virtinst
Change addhardware to show an editable model entry, like the
details wizard
2018-09-06 13:28:21 -04:00
Cole Robinson
c5033c02d5 fsdetails: Use combo entry for format list
And stop listing all the crazy qemu formats
2018-09-06 13:28:21 -04:00
Cole Robinson
f13d10590d createvol: Only show raw+qcow2 as file formats
And turn the combo into a text entry, so users can enter their
own if they want. raw and qcow2 covers the vast majority of usecases
2018-09-06 13:28:21 -04:00
Cole Robinson
2ac54ac001 guest: Drop self.installer and start_install wrapper
This changes all the callers to invoke start_install directly on the
Installer object. We still stash the installer instance inside the
guest object in create.py, just for simplicity
2018-09-04 14:55:04 -04:00
Cole Robinson
c154bbacd4 guest: Fold add_default_devices into set_defaults
It doesn't have any need anymore to be separate
2018-09-04 14:55:04 -04:00
Cole Robinson
256ca7f3fb virt-install: Simplify install method validation a bit
And drop the --pxe --nonetwork collision check, it's near pointless
2018-09-04 14:55:04 -04:00
Cole Robinson
1e76496fa8 storage: remove default_cb usage 2018-09-04 14:55:04 -04:00
Cole Robinson
221dd00cb9 devices: disk: remove default_cb usage 2018-09-04 14:55:04 -04:00
Cole Robinson
fff3c88f9c devices: disk: Absorb Guest bus/target default setting
Simplifies cli stuff as a nice side effect
2018-09-04 14:55:04 -04:00
Cole Robinson
ef83565e48 devices: hostdev: Add set_defaults 2018-09-04 14:55:04 -04:00
Cole Robinson
64dc334538 devices: interface: Add set_default function
Move all the Guest network default logic to it, and drop a now
redundant test
2018-09-04 14:55:04 -04:00
Cole Robinson
347143982a devices: Add set_defaults for memballon, redirdev, rng, smartcard 2018-09-04 14:55:04 -04:00
Cole Robinson
31bda5bbb6 devices: watchdog: Add set_defaults 2018-09-04 14:55:04 -04:00
Cole Robinson
d25ce81439 guest: Force qxl/vga more often
Letting libvirt choose gives us cirrus, which is really bad.
So for x86 for it more
2018-09-04 14:55:04 -04:00
Cole Robinson
fdd1cc5ca8 guest: Make spice default device additions explicit
Don't lump it in with setting video defaults
2018-09-04 14:55:04 -04:00
Cole Robinson
c3515fa469 guest: Drop multifunction address magic
Seems sufficiently obscure that if someone is manually specifying
addresses we can require them to pass multifunction as well
2018-09-04 14:55:04 -04:00
Povilas Kanapickas
3c62685bf1 uitests: Use Ctrl_L+Alt_L+Z as a grab keys when testing prefs
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2018-09-04 13:30:14 -04:00
Povilas Kanapickas
568a39f1ee uitests: Increase click offset for window drag
On KDE the testManagerWindowCleanup test clicks right on the border and
the drag operation fails, bringing down the test. Clicking a bit lower
fixes this issue.

Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2018-09-04 13:30:14 -04:00
Povilas Kanapickas
fb7b295e21 uitests: Fix selection of items in long menus that don't fit on screen
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2018-09-04 13:30:14 -04:00
Povilas Kanapickas
895668fa9a uitests: Fix onscreen to return True only when full widget is on screen
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2018-09-04 13:30:14 -04:00
Povilas Kanapickas
bf823fdb3c details: Pin network-model label directly to combo to simplify tests
This approach is used in majority of other places and allows the
combobox items to be selected directly instead of typing text in tests.

Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2018-09-04 13:17:19 -04:00
Povilas Kanapickas
c81d722a19 uitests: Improve robustness of click_combo_entry()
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2018-09-04 13:17:19 -04:00
Povilas Kanapickas
1f2b9b8342 uitests: Don't fail when requiested file is not visible
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2018-09-04 13:17:19 -04:00
Cole Robinson
10290cbf48 tests: uitests: Fix remote dbus test
My last patch broke it!
2018-09-04 13:17:19 -04:00
Cole Robinson
40461c58ef tests: uitests: Fail if virt-manager is already running
We don't want to connect to an existing app and possibly mess
up host state
2018-09-04 12:44:05 -04:00
Povilas Kanapickas
e6c7e46a54 details: Add support for disk detect zeroes option 2018-09-04 11:39:50 -04:00
Cole Robinson
6f301ba0aa tests: clitest: Fix failure when isoinfo not installed
https://ci.centos.org/job/virt-manager-master-check/systems=libvirt-fedora-rawhide/410/display/redirect

support usage cleanup broke self.skip_test
2018-09-04 10:01:20 -04:00
Cole Robinson
ad70393ed9 tests: Fix breakage with libvirt.git
https://ci.centos.org/job/virt-manager-master-check/systems=libvirt-fedora-rawhide/409/

Added validation to hugepages nodeset. Just drop the test case, we
test it elsewhere too
2018-09-04 09:21:23 -04:00
Cole Robinson
67e139dc5f tests: magicuri: Fix specifying caps path 2018-09-02 10:06:44 -04:00
Cole Robinson
d5638eb140 osdict: Make qemu_ga support solely dependent on virtio-serial support
We shouldn't concern ourselves with whether the OS supports qemu_ga
out of the box, just set up the channel regardless, as long as
virtio-serial is supported.

This adds the channel for some aarch64 cases which didn't have OS
specified, but that's desired IMO
2018-09-01 13:23:01 -04:00
Cole Robinson
4e63267a4f urldetect: Rename urldistro to matching_distros
Allow store classes to track multiple matching types, and use this
to ditch the custom urldistro logic in osdict altogether
2018-09-01 13:23:01 -04:00
Cole Robinson
6ce3865576 test_urls: Point to latest fedora dev URL 2018-09-01 13:23:01 -04:00
Cole Robinson
6ae8e51901 osdict: Remove unused functions 2018-09-01 13:23:01 -04:00
Cole Robinson
fb1bb26373 support: Drop lots more checks
- Remove anything for less than qemu 0.12 or libvirt 0.10, basically
  rhel6 vintage stuff
- Open code some simple checks
- Remove some that are only used for unnecessary error reporting
2018-08-31 22:21:15 -04:00
Cole Robinson
a5ef8a2995 support: Drop a few more support checks only used in tests/ 2018-08-31 18:31:17 -04:00
Cole Robinson
967ca4eeda virtinst: Drop direct 'support' usage
Except from connection. This requires some reorg in clitest and
some minor changes in a few other places
2018-08-31 18:31:17 -04:00
Cole Robinson
d8514e19c8 guest: Drop arm vexpress virtio-mmio support
This case will still work, but be a bit slower, which is fine. Nowadays
-M virt is much better for virt usage and nearly everyone is using that,
so save us the complication. This was really only useful when
bootstrapping arm virt support
2018-08-31 17:31:09 -04:00
Cole Robinson
ea413be214 xmlbuilder: Rename get_xml_config -> get_xml
The config part is redundant. Should have done this a long time ago
2018-08-31 16:52:02 -04:00
Cole Robinson
2b41e130d8 connection: rename fetch_all_guests->fetch_all_domains
The virtinst class is erroneously called Guest, but these
functions are dealing with libvirt <domain> XML, so rename them
2018-08-31 16:50:46 -04:00
Cole Robinson
83a9e613e9 tests: uitests: Fix breakage
Needs adapting to latest TPM addhw work, and armv7 UEFI support
2018-08-31 16:47:10 -04:00
Cole Robinson
b1eb07c26a guest: Don't add usb tablet for xen PV
xen PV doesn't have USB support
2018-08-22 08:38:33 -04:00
Cole Robinson
8d45dba43d cli: Add --boot bootloader= 2018-08-22 07:38:34 -04:00
Cole Robinson
2b35183352 guest: Don't hardcode /usr/bin/pygrub for xenpv
Let libvirt/libxl fill it in. This was required for rhel5 xen at
least, but we don't support that anymore and modern libvirt seems
to do the right thing and fill it in for us.
2018-08-22 07:37:32 -04:00
Cole Robinson
7cd41ab9ea guest: Default to e1000e if machine=q35
And libosinfo doesn't have any specific recommendation for us
2018-08-21 16:36:38 -04:00
Cole Robinson
2da06fec95 guest: Default to ich9 if machine=q35 (bz 1388177)
It's the pci-e version which we should prefer for q35

https://bugzilla.redhat.com/show_bug.cgi?id=1388177
2018-08-21 16:35:34 -04:00
Cole Robinson
f9600ca31b virt-install: Remove smm validation and q35 default setting
The validation is already handled by libvirt, and setting q35 for
smm=on is overkill and just hardcoding some libvirt logic here.
I think the 'secboot' detection in Guest.py is the preferred
magic here, otherwise let users specify all the correct values.
2018-08-21 15:39:27 -04:00
Cole Robinson
eb0f4a612f virt-install: Support armv7l and i686 uefi 2018-08-08 15:14:21 -04:00
Lin Ma
4484f473cd char: Track/Show the state of virtio channels in channel details
crobinso: Add a test case

Signed-off-by: Lin Ma <lma@suse.com>
2018-07-12 15:25:23 -04:00
Pavel Hrdina
931936a328 virtinst: Remove only auto-generated channel source path
In attempt to fix https://bugzilla.redhat.com/show_bug.cgi?id=1270696
this code was introduced but it removes the path for all channel
devices.  We need to limit it only to the devices that have
auto-generated source path.

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

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2018-06-28 16:45:14 +02:00
Lubomir Rintel
3a4cf07a28 virtinst: allow adding host block devices to LXC containers
Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
2018-06-19 15:07:45 -04:00
Lubomir Rintel
a2a022a879 virtinst: allow adding host character devices to LXC containers
Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
2018-06-19 15:07:42 -04:00
Lubomir Rintel
bba3d04558 virtinst: allow adding host network devices to LXC containers
Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
2018-06-19 15:05:28 -04:00
Cole Robinson
7a2abb5abf installer: Remove --location nfs support
Removal was discussed here:
https://www.redhat.com/archives/virt-tools-list/2018-May/msg00011.html

Basically I don't think many people use this, the feature is very
inflexible, it's hard to test, and users can essentially do it
themselves with a bit more effort.
2018-06-12 14:07:50 -04:00
Cole Robinson
8e150901f4 clitest: Streamline the string format dict
Remove a bunch of dead entries, open code a bunch of limited usage,
and only use the dict for commonly referenced data
2018-06-12 14:07:50 -04:00
Cole Robinson
d68305eaab tests: utils: Move all URI strings to URIs object
Non-functional change, just makes code org nicer
2018-06-12 14:07:50 -04:00
Cole Robinson
e0e6ac6956 tests: Remove useless read_file helper 2018-06-12 14:07:50 -04:00
Cole Robinson
e12049b114 capabilities: Drop old svm/vmx handling
We don't realisistically support these old libvirt versions anymore
2018-06-12 14:07:50 -04:00
Cole Robinson
b6cd46b382 virt-install: Add --test-stub-command
Fills in basic install options to make the command succeed. Saves
devs having to type boiler plate options when testing new command
line bits
2018-06-12 14:07:50 -04:00
Cole Robinson
4dfc6b03e8 hostkeymap: Fix sanitize_keymap on python3
And add test cases to cover the failure

https://bugzilla.redhat.com/show_bug.cgi?id=1585574
2018-06-12 14:07:50 -04:00
Marc-André Lureau
fa32aea416 tpm: add TPM emulator backend
An emulated backend doesn't require any path, since libvirt will take
care of finding the emulator and managing the storage. However, the
version to emulate can be specified.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2018-06-11 12:40:28 -04:00
Marc-André Lureau
67cb191e82 tpm: add CRB device model
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2018-06-11 12:40:28 -04:00
Anya Harter
846e2f711a cli: add --sound codec support
Add codec support to virt-install so that it can accommodate
multiple instances of codec configuration.

The commandline argument:

  --sound codec0.type=micro,codec1.type=duplex,codec2.type=output

maps to the sound XML below:

    <sound model="es1370">
      <codec type="micro"/>
      <codec type="duplex"/>
      <codec type="output"/>
    </sound>

Signed-off-by: Anya Harter <aharter@redhat.com>
2018-06-11 12:23:14 -04:00
Anya Harter
02635d3358 cli: Add --disk geometry attribute options
Attribute options are:
    - geometry.cyls=W
    - geometry.heads=X
    - geometry.secs=Y
    - geometry.trans=Z

This maps to disk XML like:

    <disk>
      <geometry cyls='W' heads='X' secs='Y' trans='Z'/>
    </disk>

Signed-off-by: Anya Harter <aharter@redhat.com>
2018-06-11 12:02:11 -04:00
Anya Harter
89c389e45a cli: Add --disk driver.copy_on_read=on option
This maps to disk XML like:

    <disk>
      <driver copy_on_read='on'/>
    </disk>

Signed-off-by: Anya Harter <aharter@redhat.com>
2018-06-11 12:00:56 -04:00
Cole Robinson
b85a2a9eb8 virt-install: Drop --import and --nodisks collision
It doesn't work with '--disk none' and it's not very useful anyways
2018-06-07 10:56:47 -04:00
Anya Harter
8bde479112 cli: Add --network mtu.size=X option
This maps to interface XML like:

    <interface>
      <mtu size='X'/>
    </interface>

Signed-off-by: Anya Harter <aharter@redhat.com>
2018-06-06 10:44:03 -04:00
Stefan Weil
633534c8b8 Fix some typos in comments and documentation (found by codespell)
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2018-06-05 14:27:29 -04:00
Radostin Stoyanov
bb06053a8a setup: Integrate codespell
Codespell is a tool for checking misspelled words in source code [1].
Integrating this tool will enable automated spell check of the code
base.

Usage example:
        ./setup.py codespell

[1] https://github.com/codespell-project/codespell

Signed-off-by: Radostin Stoyanov <rstoyanov1@gmail.com>
2018-06-05 14:27:29 -04:00
Cole Robinson
39a7cbbad7 domain.numatune: Drop cpuset validation
This type of validation should really be done at the libvirt level,
particularly for a non-mandatory feature like cpuset. Otherwise
it's just more code for us to test which will rarely be hit by users
2018-06-05 14:27:29 -04:00
Cole Robinson
192da16f6b domain.numatune: Remove cpuset_str_to_tuple
Left over from when we had vcpu pinning in the UI, not used anymore
2018-06-05 14:27:29 -04:00
Cole Robinson
84150ddd2e tests: pylint: Tweak config a bit
* Drop some redundant config that's duplicating defaults
* Use more standard pylint regexes
2018-05-02 19:53:03 -04:00
Cole Robinson
28b3aca9fa tests: uitests: Fix with connect.py changes 2018-05-02 17:45:09 -04:00
Cole Robinson
d99e31cbc4 tests: uitests: newvm: Fix the rest with the oslist rework 2018-05-01 18:45:25 -04:00
Cole Robinson
ec407e8a06 tests: uitests: newvm: Fix import tests after oslist rework 2018-05-01 18:45:25 -04:00
Cole Robinson
e1f16e62b8 addhardware: Remove non-device RNG UI
This config is not common enough to warrant the large UI surface
2018-05-01 12:27:27 -04:00
Daniel P. Berrangé
d52d9885c8 Redesign OS distro selection UI to be faster to use
The current OS distro selection UI is fairly cumbersome to use. First
you need to decide on a variant, then decide a distro and then look for
the version you want. The list is filtered by default so only a subset
of OS are displayed. So for less common distros you'll then need to
start again and tell it to show all OS to try to find the one you want.

The core problem is that we have an incredibly large list and want to
make it easy for the user to find a specific entry. The modern UI
paradigm for this problem is to provide interactive search with
live updated results. The current UI does provide an interactive search
facility on the OS version results, but you still have to first select a
variant to be able to use the search which is unhelpful.

This patch attempts to better apply the search UI design to the OS selection
problem. We get rid of the notion of variants, distros and version, and
provide a single text entry box in which the user can type a few letters
of the OS name. As they type, a popover displays the matching results
filtered on OS name. By default end of life OS will be hidden, so in
general there will only be a small handful of results left after just
typing a few characters. This makes it very quick to find and select the
desired OS, without needing to provide a mutli-step navigation hierarchy.

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

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

(crobinso: fix some pylint)
2018-05-01 11:31:39 -04:00
Cole Robinson
3bc7ff24cf uitests: Use old Fedora URL in test suite
the centos URL is currently broken with latest urldetect, we need to
add some info to libosinfo to cover it
2018-04-26 09:50:57 -04:00
Cole Robinson
056305d29b addhardware: Make combo init/populating more consistent
* Use the _build_combo helper more
* Un-static methods that don't need it
* Use pretty labels more
2018-04-25 08:04:50 -04:00
Cole Robinson
fd2fe1249d graphics: Default to unset keymap
qemu and all related hypervisors (xen, vz) haven't needed this in
the common case for a very long time, so make keymap=None the default
2018-04-24 14:11:30 -04:00
Cole Robinson
a33ac92040 cli: Fix --boot smbios_mode=sysinfo (bz 1570549)
Not sure how this was expected to work, just make it do the simple
thing and set the value in the XML. Add a test case for it
2018-04-24 12:32:18 -04:00
Radostin Stoyanov
087bf7debc tests: uriparse: Test for @ symbol in username
Add test case for URI that contains the @ symbol in username.

Signed-off-by: Radostin Stoyanov <rstoyanov1@gmail.com>
2018-04-24 12:13:07 -04:00
Cole Robinson
568841835d urldetect: Standardize _detect_version naming
This is the hook that subclasses use to save a detect os_variant value
2018-04-24 11:34:53 -04:00
Cole Robinson
a9ad2426b0 test_urls: Improve error output 2018-04-24 11:33:12 -04:00
Cole Robinson
105a6d20be tests: urls: Fix custom ini file usage 2018-04-16 11:36:39 -04:00
Daniel P. Berrangé
48e32b429d Fix copyright header to specify GPLv2 or later, not GPLv2 only.
The copyright headers in every file were chjanged in this previous commit

  commit b6dcee8eb7
  Author: Cole Robinson <crobinso@redhat.com>
  Date:   Tue Mar 20 15:00:02 2018 -0400

    Use consistent and minimal license header for every file

Where before this they said "

  "either version 2 of the License, or (at your option) any later version."

Now they just say

  "GNU GPLv2"

This fixes it to say "GNU GPLv2 or later" again.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-04-04 16:51:37 -04:00
Cole Robinson
83a1c43490 tests: test_urls: Look for manual.ini in ~/.config/virt-manager
Rather than deal with ignoring it in the source tree
2018-04-03 15:29:03 -04:00
Cole Robinson
b17c7565e2 tests: clitest: test virt-xml --update on inactive VM 2018-04-03 12:43:14 -04:00
Cole Robinson
07489a900e tests: Remove __main__ handling, not needed 2018-04-03 10:59:00 -04:00
Charles Arnold
fd6a815440 virtinst: compare host and domain cpu models
Lookup the domain capabilities CPU model and compare with
the host capabilities CPU model and if they are not equal
set the guest's CPU model to None.

(crobinso: compare against 'custom' list not 'host-model', move
 to separate function)
2018-04-03 10:57:49 -04:00