Cole Robinson
37adfb0150
urlfetcher: Add http and ftp unit test mocking
2019-06-07 21:25:41 -04:00
Cole Robinson
6caa085f6c
tests: test_urls: Update
2019-06-07 21:13:51 -04:00
Cole Robinson
388850f04e
virtinst: Rename util to xmlutil
...
The only functions left in there are largely for xml handling, so
make it explicit
2019-06-07 18:21:24 -04:00
Cole Robinson
c603ea4084
util: Move *_meter to progress.py
2019-06-07 17:32:51 -04:00
Cole Robinson
7d17d5d03b
virtinst: Run register_libvirt_error_handler on import
...
We basically want this everywhere, and transparently, so run it on
import like we do for gettext setup
2019-06-07 16:56:57 -04:00
Cole Robinson
ecc3e3d34e
support: add is_libvirt_error_no_domain
...
Repurpose the generic util.exception_is_libvirt_error for the one
purpose that it's actually used, add it as a SupportCache staticmethod,
and test it
2019-06-07 16:44:14 -04:00
Cole Robinson
f85e6def55
support: Convert callers to the new format
2019-06-07 16:26:03 -04:00
Cole Robinson
566a4681a8
support: Rework support check invocations
...
SupportCache.check_support(SUPPORT_FOOBAR, args) becomes
SupportCache.foobar(args)
And SupportCache absorbs the caching infrastructure from
VirtinstConnection.
For now we add some hackery to hide the API change from callers, but
this will be undone in the next patch
2019-06-07 16:25:39 -04:00
Cole Robinson
e58d765ae5
tests: xmlconfig: Add tests for real uuid and mac generation
2019-06-06 18:35:36 -04:00
Cole Robinson
50addfebca
nodedev: Drop the non-standard .parse() handling
2019-06-05 16:35:34 -04:00
Cole Robinson
ab0c99057b
nodedev: Fold DRMDevice into NodeDevice
2019-06-05 16:35:34 -04:00
Cole Robinson
87b2ea4672
nodedev: Fold SCSIBus into NodeDevice
2019-06-05 16:35:34 -04:00
Cole Robinson
8d13125564
nodedev: Fold StorageDevice into NodeDevice
2019-06-05 16:35:34 -04:00
Cole Robinson
eeb7babef7
nodedev: Fold SCSIDevice into NodeDevice
2019-06-05 16:35:34 -04:00
Cole Robinson
cf3bc3eb3b
nodedev: Remove unused USBBus parsing
2019-06-05 16:35:34 -04:00
Cole Robinson
b7ac99473d
nodedev: Fold USBDevice into NodeDevice
2019-06-05 16:35:34 -04:00
Cole Robinson
a0881bc6f2
nodedev: Fold PCIDevice into NodeDevice
2019-06-05 16:35:34 -04:00
Cole Robinson
ca804c5b5e
nodedev: Fold NetDevice into NodeDevice
2019-06-05 16:35:34 -04:00
Cole Robinson
966b0b5a6b
nodedev: Drop cap 'system' parsing
...
We don't use it for anything internally
2019-06-05 16:35:34 -04:00
Cole Robinson
d167021b0f
osdict: Drop the solaris10 x2apic hack
...
The upstream kvm bug has never been resolved. I think this is
obscure enough nowadays that we don't need to track and test it
2019-06-05 16:35:34 -04:00
Cole Robinson
2510c299f5
Use shutil.which instead of distutils find_executable
...
The former is the more standard library method for this
with python3
2019-06-05 16:35:34 -04:00
Cole Robinson
d65f54dc9d
uitests: Enable accessibility if it's turned off
2019-06-05 16:28:05 -04:00
Cole Robinson
09b0caec42
uitests: More work to fix newvm.py flakiness
2019-06-05 16:22:41 -04:00
Cole Robinson
3734148b8c
uitests: Improve click() onscreen handling
2019-06-05 12:27:03 -04:00
Cole Robinson
85f5b18a08
uitests: Improve mediachange assertion check
2019-06-05 12:26:35 -04:00
Cole Robinson
bc232eb8de
devices: disk: Drop DIR+floppy validation
...
Libvirt already gives us a similar warning at parse time, this is
obscure enough that we don't need to catch it upfront
2019-06-05 11:13:33 -04:00
Cole Robinson
08b26e9b1c
devices: disk: Add tests for missing _storage_backend
2019-06-05 11:13:33 -04:00
Cole Robinson
f22a0ec2e4
xmlbuilder: Add replace_child
...
This will be used for UI XML editing of devices
2019-06-05 11:13:33 -04:00
Athina Plaskasoviti
27a51b2210
cli: Add --iothreads iothreadids.iothread[0-9]*.id
...
XML Mapping:
<domain>
...
<iothreadids>
<iothread id="X"/>
...
</iothreadids>
...
</domain>
Reviewed-by: Cole Robinson <crobinso@redhat.com>
Signed-off-by: Athina Plaskasoviti <athina.plaskasoviti@gmail.com>
2019-06-04 14:17:01 -04:00
Athina Plaskasoviti
8c708210db
cli: Add --iothreads
...
XML Mapping:
<domain>
...
<iothreads>X</iothreads>
...
</domain>
Reviewed-by: Cole Robinson <crobinso@redhat.com>
Signed-off-by: Athina Plaskasoviti <athina.plaskasoviti@gmail.com>
2019-06-04 10:58:31 -04:00
Athina Plaskasoviti
304b323f5d
cli: Fix add --memballoon stats.period
...
XML Mapping
<memballoon model=...>
<stats period="10"/>
</memballoon>
Reviewed-by: Cole Robinson <crobinso@redhat.com>
Signed-off-by: Athina Plaskasoviti <athina.plaskasoviti@gmail.com>
2019-05-29 14:03:14 -04:00
Athina Plaskasoviti
5b443fd383
cli: Fix --memballoon autodeflate
...
Fixing commit ebf2199875
XML Mapping:
<memballoon model="virtio" autodeflate="on"/>
Signed-off-by: Athina Plaskasoviti <athina.plaskasoviti@gmail.com>
2019-05-28 17:32:58 +02:00
Athina Plaskasoviti
ebf2199875
cli: Add --memballoon autodeflate
...
XML Mapping:
<memballoon model=...>
<autodeflate>on</autodeflate>
</memballoon>
Signed-off-by: Athina Plaskasoviti <athina.plaskasoviti@gmail.com>
2019-05-23 10:03:27 -04:00
Pavel Hrdina
06c2f87397
cli: fix cpu secure option to actually work
...
The 'secure' option is processed after the model is already set.
CPU security options are resolved while setting CPU model so we need
to know the 'secure' option value before we set the CPU model.
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2019-05-22 16:40:54 +02:00
Pavel Hrdina
abda575e48
tests: include CPU security features in kvm q35 domcapabilities
...
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2019-05-22 14:09:59 +02:00
Athina Plaskasoviti
35c53fc02c
cli: Add --disk rawio
...
XML mapping:
<disk type=... rawio="yes">
...
</disk>
Signed-off-by: Athina Plaskasoviti <athina.plaskasoviti@gmail.com>
Reviewed-by: Fabiano Fidêncio <fidencio@redhat.com>
2019-05-20 15:32:04 +02:00
Athina Plaskasoviti
d171489f7d
cli: Add --disk wwn
...
XML mapping:
<disk>
<wwn>...</wwn>
</disk>
Reviewed-by: Cole Robinson <crobinso@redhat.com>
Signed-off-by: Athina Plaskasoviti <athina.plaskasoviti@gmail.com>
2019-05-17 15:29:18 -04:00
Cole Robinson
bc4573a14b
Fix codespell errors
2019-05-16 14:43:31 -04:00
Cole Robinson
de59d33a59
tests: clitest: Move all skip checks into their own class
2019-05-16 14:24:20 -04:00
Cole Robinson
4e3e38cad1
tests: Fix test suite failures on f29 libvirt 4.7.0
2019-05-16 11:29:12 -04:00
Cole Robinson
6394ab7f9a
cli: --graphics: Add zlib.compression=
...
This maps --graphics zlib.compression=auto to the XML:
<graphics>
<zlib compression='auto'/>
</graphics>
2019-05-16 10:21:19 -04:00
Cole Robinson
aeff4e248f
tests: Fix testsuite on non-latest libvirt
...
The memory hotplug changes only work on libvirt 5.3.0, among a few
other pieces. Still do the XML compare but skip domain define if
the new check_version_define comparison fails.
2019-05-15 20:19:58 -04:00
Cole Robinson
4d5f6951a2
man: Don't document broken --controller virtio-scsi
...
AFAICT this has never worked.
2019-05-15 18:00:24 -04:00
Cole Robinson
f5c5c815e4
cli: Add --seclabel alias for --security
...
The <domain> XML it alters is called <seclabel>, and security is
really generic sounding. Add the alias and switch the documentation
over to prefer --seclabel
2019-05-15 17:49:58 -04:00
Cole Robinson
656045478d
tests: Verify all cli subopts and aliases are triggered
...
Add some cli infrastructure and testsuite magic to track whether
a cli suboption and cli alias is triggered. This makes it harder
to accidentally add cli option regressions.
We make some exceptions for shared options, requiring them to only
be tested once, otherwise trying to test all address options for
every device will be a giant pain.
2019-05-15 17:45:19 -04:00
Cole Robinson
23f7b4fa7e
tests: clitest: Cover all address.* options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
7eedcac1e7
tests: clitest: Cover all char options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
2b613d2ef5
tests: clitest: Cover all --rng options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
65f3197a02
tests: clitest: Cover all --vcpus and --video options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
cc6ca85ce8
tests: clitest: Cover all --network options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
e2e9c0cadd
tests: clitest: Cover all --sysinfo options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
a8fedab9f2
tests: clitest: Cover all --memdev options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
d5c7771e49
tests: clitest: Cover all --graphics options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
56f47faf49
tests: clitest: Cover all --features options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
4543ef2baa
tests: clitest: Cover all --disk options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
0947045f11
tests: clitest: Cover all --cpu options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
58daf6722e
tests: clitest: Cover all --controller options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
5f5c7daca1
tests: clitest: Cover all --clock options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
f986273e17
tests: cli: Cover all --hostdev options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
fa8cbe5628
tests: clitest: Cover all --memorybacking options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
0da94e25b2
tests: clitest: Cover all --blkiotune and --idmap aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
dbb6f338ab
tests: clitest: Cover all --vsock options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
084122dfbe
tests: clitest: Cover all --tpm options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
0b2206be0e
tests: clitest: Cover all --pm and --numatune options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
300400f26c
tests: clitest: Cover all --boot options and aliases
2019-05-15 17:34:01 -04:00
Cole Robinson
dc0f9632ee
tests: Repurpose spice-gl test as a generic singleton test
...
We need another entrypoint for singleton testing
2019-05-15 17:34:01 -04:00
Cole Robinson
1403815a3f
tests: Add a bunch of example devices to the test drivers
...
Eventually we may want these for virt-xml or UI testing. Fill in
some XML for every top level element libvirt currently supports.
2019-05-15 15:23:59 -04:00
Cole Robinson
61639d9b14
cli: Only use regex matching if the subopt contains [
...
If we use regex matching all the time, we can erroneously match
certain strings. This already let some cli regressions through
with recent patches.
2019-05-15 14:47:53 -04:00
Cole Robinson
384607e502
cli: Strip find_inst regex from completion results
...
It doesn't really work with the argcompleter, so show the non-regex
version of the suboption
2019-05-15 13:18:39 -04:00
Cole Robinson
7c835321be
cli: --blkiotune: Convert device.* to device[0-9]*.
...
Libvirt can represent multiple <device> blocks here, so mirror that
on the command line
2019-05-15 09:59:25 -04:00
Cole Robinson
af2182d890
cli: --memorybacking: Add discard= and allocation.mode=
2019-05-14 15:58:36 -04:00
Cole Robinson
90f5b29789
cli: --memorybacking: Convert hugepages.page to a list
...
There can be more than 1 <memoryBacking><hugepages><page> element.
Adjust the cli options to match:
- hugepages.page[0-9]*.size
- hugepages.page[0-9]*.unit
- hugepages.page[0-9]*.nodeset
2019-05-14 15:58:36 -04:00
Cole Robinson
334d18ab93
cli: --vcpus: add vcpus.vcpu[0-9]* config
...
This adds the following suboptions to configure the <domain><vcpus>
list:
- vcpus.vcpu[0-9]*.id
- vcpus.vcpu[0-9]*.enabled
- vcpus.vcpu[0-9]*.hotpluggable
- vcpus.vcpu[0-9]*.order
2019-05-14 15:58:36 -04:00
Cole Robinson
908faaffee
cli: --cpu: add topology.*
...
We already expose these via --vcpus, but that's for back compat. New
options are under --cpu at:
topology.sockets
topology.cores
topology.threads
2019-05-14 14:36:40 -04:00
Cole Robinson
a6b5f11f13
cli: --metadata: add genid= and genid_enable=
...
The latter is for triggering <genid/> bool XML, which tells libvirt
to auto-allocate a UUID. The cli isn't really XML conformant but
I can't think of anything better that is self advertising
2019-05-14 14:36:40 -04:00
Cole Robinson
7083294e2c
cli: --sysinfo: Add oemStrings.entry[0-9]*
2019-05-14 14:36:40 -04:00
Cole Robinson
d16425aa8f
cli: --sysinfo: Add chasis suboptions
...
Add the following --sysinfo suboptions:
- chassis.manufacturer
- chassis.version
- chassis.serial
- chassis.asset
- chassis.sku
2019-05-14 14:36:40 -04:00
Cole Robinson
773625bfab
cli: --boot: add initarg[0-9]*=X
...
We keep the old initargs="string" support as well, but also advertise the
explict XML list support
2019-05-14 14:36:40 -04:00
Cole Robinson
e5480829b6
cli: --boot: Add explicit boot[0-9].dev config
...
We keep the old bootorder support as well, but also advertise the
explict XML list support
2019-05-14 14:36:40 -04:00
Cole Robinson
c31443a810
cli: Add driver.ats= and driver.iommu for virtio devices
...
This is shared XML schema used by multiple devices that support virtio
2019-05-14 12:45:57 -04:00
Cole Robinson
2344de6f38
cli: device: Add boot.loadparm=
2019-05-14 12:33:07 -04:00
Cole Robinson
13dbc715be
cli: Add common device options for --memdev and chardevices
...
They both can handle explicit address config and alias config, so
wire it up
2019-05-14 12:25:00 -04:00
Cole Robinson
0e8e3c0bbf
cli: device: add alias.name=
2019-05-14 12:23:00 -04:00
Cole Robinson
0eb2b167f9
cli: device: Add address.zpci.uid and address.zpci.fid
2019-05-14 12:20:53 -04:00
Cole Robinson
ca0f9e18cc
cli: Add --serial target.model.name=
...
This maps to XML like:
<serial>
<target>
<model name='X'/>
</target>
</serial>
2019-05-14 11:57:50 -04:00
Cole Robinson
bf2fe0790e
cli: Add --serial target.port= option
...
This maps to the XML like:
<serial>
<target port='X'/>
</serial>
2019-05-14 11:57:50 -04:00
Cole Robinson
0f81eff588
clitest: Remove long option newline escaping
...
Apparently we don't actually need it
2019-05-14 11:57:50 -04:00
Cole Robinson
f3fd6d200b
cli: --smartcard: support database= and certificate[0-9]*=
...
For mode=host-certificates config
2019-05-14 11:57:50 -04:00
Cole Robinson
c0ddb86918
tests: clitest: define XML generated from compare tests
...
All our virt-install/virt-clone compare tests aren't actually
attempting to define the XML, meaning we could be generating bogus
output. Enable it, then fix the fallout, mostly some places we are
triggering libvirt XML validation
2019-05-14 11:57:50 -04:00
Cole Robinson
5e98bfba80
tests: clitest: Break up test run() function
2019-05-14 11:57:50 -04:00
Cole Robinson
c85bb61559
devices: char: Wire up seclabels in CharSource
...
And expose the config options on the command line for all CharSource
users
2019-05-14 11:57:50 -04:00
Cole Robinson
423b084e02
cli: Share char source arguments among all CharSource users
...
Add char source arguments to all users:
--serial
--parallel
--console
--channel
--smartcard
--rng
--redirdev
Not all source options apply to all types, but libvirt doesn't
really discriminate, so we should do the same.
2019-05-14 11:57:50 -04:00
Cole Robinson
354dc4df4a
cli: --rng: use predictable cli subarg names
...
To match the XML schema, rename these subarguments and add aliases
to preserve compatibility:
* backend_connect_host -> backend.source.connect_host
* backend_connect_service -> backend.source.connect_service
* backend_host -> backend.source.host
* backend_mode -> backend.source.mode
* backend_service -> backend.source.service
* backend_type -> backend.type
* rate_bytes -> rate.bytes
* rate_period -> rate.period
'type', and 'device' are kept as advertised options,
due to them being commonly specified and documented
2019-05-14 11:57:50 -04:00
Cole Robinson
873a35dcee
devices: char: move 'protocol' and 'log*' to CharSource
...
This violates our typical XML hierarchy, but that's how it's modeled
internally in libvirt, and these properties are shared among all
charsource users.
2019-05-14 11:57:50 -04:00
Cole Robinson
43a39dc158
devices: smartcard: Use CharSource
...
smartcard does the same internally for libvirt, so let's follow that
pattern, and fix the fallout
2019-05-14 11:57:50 -04:00
Cole Robinson
9d78759ac5
devices: redirdev: Use CharSource
...
redirdev does the same internally for libvirt, so let's follow that
pattern, and fix the fallout
2019-05-14 11:57:50 -04:00
Cole Robinson
6d46e37e09
devices: rng: Use CharSource
...
Re-use CharSource, just like libvirt does internally. Adjust all
callers to match. Rename type -> backend_model while we are here,
because type is ambiguous
2019-05-14 11:57:50 -04:00
Cole Robinson
b2b9d7d366
devices: char: Add CharSource
...
Move all ./source handling into CharSource, which will be reused by
other device classes as well. This requires us to add ../ handling
into our xmlapi xpath engine
2019-05-14 11:57:50 -04:00
Cole Robinson
ba1764943b
devices: char: drop tty fallback reading
...
This is only for ancient rhel5 era libvirt, We don't need it anymore
and it complicates XML handling
2019-05-13 12:36:17 -04:00
Cole Robinson
e6eb1d447b
devices: char: Rename some properties to better match XML
...
* bind_port -> bind_service
* source_host -> connect_host
* source_port -> connect_service
2019-05-13 12:35:55 -04:00