Commit Graph

6778 Commits

Author SHA1 Message Date
Cole Robinson 0e5fb7d7c2 data: appstream: add keywords and translations link 2019-06-14 16:09:29 -04:00
Cole Robinson ef972cf2ea virtinst: support: add full code coverage testing 2019-06-14 14:00:13 -04:00
Cole Robinson 54a28485df tests: Use assertRaises more 2019-06-14 13:04:56 -04:00
Cole Robinson f6b87bd6d6 virt-xml: Remove virt_xml_setup hack
Not sure why this was originally required, but I can't think how
to even trigger this occasion nowadays
2019-06-14 12:38:51 -04:00
Cole Robinson bd7d213cf8 virt-xml: Add more test coverage 2019-06-14 12:37:35 -04:00
Cole Robinson fbe388b26a virt-install: Warn if mem less than OS recommended
And if mem is abnormally low, like it appears user tried to specify
GiB not MiB
2019-06-14 11:24:10 -04:00
Cole Robinson c37d6a7260 installer: Log warning when we set network-install resources
So the cli user will see it
2019-06-13 22:01:02 -04:00
Cole Robinson 34f42cc673 installer: Make test suite override paths a bit more descriptive
Have them incorporate the basename of the path we are replacing.
This gives some validation that we are manipulating the correct files
2019-06-13 21:53:41 -04:00
Cole Robinson aafbca9e75 tests: Fix running on non-latest osinfo-db 2019-06-13 21:27:59 -04:00
Cole Robinson 17ac0d017c virt-install: Drop --os-variant suboption parsing
Not sure I want to go down that route if we can avoid it. Instead
just fold the full_id support into the existing option handling.
Streamline the OSVariantData usage throughout the cli tools
2019-06-13 21:25:05 -04:00
Cole Robinson 21723706f5 virt-install: Add --install OSNAME
Replace the unreleased --os-variant OSNAME,install=location with just

  --install OSNAME

Unwind the --unattended dependency on upfront --os-variant while
we are at it, since they are all intertwined. Now we can just do:

  virt-install --install OSNAME
and
  virt-install --install OSNAME --unattended
2019-06-13 20:26:26 -04:00
Cole Robinson 839eea3587 virt-install: Split build_installer out a bit 2019-06-13 18:46:58 -04:00
Cole Robinson ee119c3bb2 guest: Add skip_default_osinfo
We set this to True in virt-install, which will cause an explicit
error to be thrown if some part of the cli parser tries to access
osinfo before it's been set, because then we have a circular dependency
between cli config -> installer -> osinfo -> cli config
2019-06-13 18:29:39 -04:00
Cole Robinson d9729855ee guest: break out disable_hyperv_for_uefi
Having this at set_uefi time complicates the domain XML building
machinery, where we don't want things to have osinfo access.
Rearrange it so that editing cases call this explicitly, and
the XML builder just deals with it at the set_defaults time
2019-06-13 17:55:37 -04:00
Cole Robinson 8c8fec6cb1 cli: Rename parse_option_strings update= to editing=
Makes it more clear what the distinction is. Set this in the parser
class so the cli infrastructure can access it
2019-06-13 17:37:26 -04:00
Cole Robinson f36e8b36bc virt-install: Rework install option detection a bit
Add an explicit no_install to Installer to encode that the user is
not expecting an install phase. Use that to determine later if any
install options were specified. This saves later code from having
to deal with installer=None, and is the basis for further clarifications
2019-06-13 16:36:21 -04:00
Cole Robinson 3b396e8321 virt-install: Split out --wait handling into a helper class
And add much more clitest coverage
2019-06-13 16:02:58 -04:00
Cole Robinson 8234b55fe8 tests: clitest: Fill in much more virt-install coverage 2019-06-13 16:02:52 -04:00
Cole Robinson 5077f97000 guest: Add a comment about the vcpu situation 2019-06-13 14:42:37 -04:00
Cole Robinson 7ef20e26b0 Revert "guest: Don't hardcode vcpus = 1"
This reverts commit 66fe00ddee.

Turns out it's not that simple. Indeed libvirt sets the default
when no <vcpus> XML is present, but if you do --vcpus cpuset=X
libvirt will error that there's no vcpu value set. So for back
compat and generate safety let's keep setting it.
2019-06-13 14:40:06 -04:00
Cole Robinson 3cc42c2f24 virt-install: Drop install option collision errors
It's getting hard to track this correctly with the addition of
--install. Drop it. The important thing is validating when no install
options were specified
2019-06-13 14:13:29 -04:00
Cole Robinson c5bbf2f48d virt-install: Drop --transient and --noreboot rejection
It's a nonsensical request but it should be obscure enough to not
warrant explicit validation
2019-06-13 14:05:22 -04:00
Cole Robinson 1e8f2413d7 unattended: Move the windows method=cdrom logic into installer
And warn about it. This isn't triggerable at the moment due to
virt-install hackery but that will change
2019-06-13 14:00:04 -04:00
Cole Robinson a9d33d49db osdict: Add testing and finish of code coverage 2019-06-13 14:00:04 -04:00
Cole Robinson 19bcec651c virt-install: Push validation down into the installer
It's hard to validate whether something like --extra-args or
--initrd-inject is supported based on the command line arguments. It's
easier to let the installer.py figure it out because it's the
authoritative source
2019-06-13 14:00:04 -04:00
Cole Robinson 9cbe5f9742 virt-install: Move --install kernel/initrd handling to installtreemedia
This essentially gives us kernel upload, http access, and initrd inject
for free, and ensures that the source file is kept in pristine shape
2019-06-13 14:00:04 -04:00
Cole Robinson b746d919a9 virt-install: Add --install kernel_args=X,kernel_args_overwrite=yes|no
--install kernel_args=X acts like --extra-args. If
kernel_args_overwrite=yes is also specified, it overwrites whatever
default kernel args we would have used for the install method.
2019-06-13 14:00:04 -04:00
Cole Robinson b50ecd2bf1 installer: Move location_* conflict validation to treemedia
That's where the values are handled, so move it there
2019-06-13 14:00:04 -04:00
Cole Robinson 69d5e62cbb tests: Add an example of --extra-args with post install --boot cmdline=X 2019-06-13 14:00:04 -04:00
Cole Robinson d85a9a4808 cli: Advertise --boot cmdline, that's the XML naming 2019-06-13 14:00:04 -04:00
Cole Robinson 216b1f2a2d installer: Reject --unattended method=cdrom on remote connection
It's not wired up yet
2019-06-13 14:00:04 -04:00
Cole Robinson 69c20d5256 installer: install_{kernel,initrd} imply an install phase 2019-06-13 14:00:04 -04:00
Cole Robinson b4cc9c7cea uitests: Fix prefs XML editor flakeyness 2019-06-13 13:50:52 -04:00
Cole Robinson 2266b650a5 preferences: Disable XML editing by default
This adds a field in gsettings and preferences UI to enable
XML editing. It's off by default. The XML tab page is still visible,
but the textview is not editable, and there's a warning at the top:

  XML editing is disabled in 'Preferences'.
  Only enable it if you know what you are doing.

When the setting is enabled, the warning goes away and the textview
is editable. This puts a roadblock up for people that don't know what
they are doing, but still advertises the feature and keeps the
UI surface difference fairly small between on/off states.
2019-06-13 07:17:34 -04:00
Cole Robinson 2a1cf411dd tests: Add XML editing UI tests 2019-06-13 07:17:34 -04:00
Cole Robinson a5f4033493 details: add xmleditor UI
Handling this is a bit different from other bits, because:

1) the <device> editing paradigm is unique. We need to replace the
   device in line in the XML which is a new operation
2) the New VM customize pattern is tricky and needs lots of
   special handling
2019-06-13 07:15:46 -04:00
Cole Robinson df80852952 addhardware: add xmleditor UI 2019-06-13 07:15:46 -04:00
Cole Robinson 0937c1e54b createvol: add xmleditor UI 2019-06-13 07:15:46 -04:00
Cole Robinson 68b3cb16e5 createpool: add xmleditor UI 2019-06-13 07:15:46 -04:00
Cole Robinson 50d13d8c12 storagelist: add xmleditor UI 2019-06-13 07:15:46 -04:00
Cole Robinson 7d9d8d9237 createnet: add xmleditor UI 2019-06-13 07:15:46 -04:00
Cole Robinson 5f4510b4df hostnets: add xmleditor UI 2019-06-13 07:13:43 -04:00
Cole Robinson 18af72212b xmleditor: Add the shared code
The XML editor ui is a two tabbed notebook, one 'Details' tab
and one 'XML' tab. The latter has a gtksourceview and allows editing
the raw libvirt XML for whatever the selected object is.

API users will programmatically insert the xmleditor notebook into
their UI, with the existing UI under the details tab.
2019-06-13 07:13:43 -04:00
Andrea Bolognani c88e492331 guest: Enable qemu-ga by default on s390x
It was disabled with commit 2aca20141e back in 2015, but
these days we have it enabled for all other architectures and
there doesn't seem to be a good reason for s390x to keep being
the outlier.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
2019-06-13 09:16:45 +02:00
Cole Robinson 1f4a5a1b43 cli: Add --install bootdev=X,kernel=X,initrd=Z
This is the beginning of a big --install option, which will be used
for tweaking less common elements of the install process
2019-06-11 17:55:09 -04:00
Cole Robinson a4a577bd23 tests: Finish off installer and kernelupload coverage 2019-06-11 17:55:09 -04:00
Cole Robinson 436c471b15 virt-install: Drop the serial extra_args warnings
There's been multiple reports that these aren't really valid nowadays.
systemd is smart enough to make this work automagically. So just drop
it
2019-06-11 17:55:09 -04:00
Cole Robinson de90716eb4 unattended: Choose a default profile name if none specified
We default to 'desktop' if none specified, otherwise we choose the
first alphabetical profile available. Make bare '--unattended' a
valid option
2019-06-11 17:55:09 -04:00
Cole Robinson ecb60c3062 Drop use of logging.info
Just use logging.debug in these random places
2019-06-11 17:55:09 -04:00
Cole Robinson 034d112181 unattended: Finish off code coverage testing 2019-06-11 17:55:09 -04:00