Commit Graph

254 Commits

Author SHA1 Message Date
Cole Robinson 41a84bae9f cli: Rework adhoc CLI parsing into a class structure
This adds:

VirtCLIArgument: a single foo=bar mapping
VirtOptionString: A collection of VirtCLIArguments, that parses the whole thing
VirtCLIParser: Represents a single cli option like --disk, --network, etc.

Centralizing this infrastructure opens up a lot of doors for future
improvements, like cli option introspection.
2014-01-22 10:35:30 -05:00
Chen Hanxiao a98515a4da virt-install: add support for '--panic option'
Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>

(crobinso: man page and cli tweaks)
2014-01-22 09:33:18 -05:00
Cole Robinson c426a30511 Convert all command line handling to argparse
Allows us to drop some hacks, and we may need it for a new upcoming
tool.
2014-01-19 11:32:08 -05:00
Cole Robinson a82b60dcff capabilities: Remove some public API back compat 2014-01-18 13:23:30 -05:00
Cole Robinson bd5b285eea virt-install: Drop inaccurate comment, update copyright date 2013-12-14 18:28:27 -05:00
Cole Robinson 56b9f6187b Streamline support checks
Just use one function check_support
2013-10-06 10:08:04 -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 d0b067f2fc virt-install: Add --clock option 2013-10-05 16:48:07 -04:00
Cole Robinson e6cebd04ca virt-install: Fix launching console (after graphics rework) 2013-10-02 20:20:52 -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 4c15da439b cli: Combine registering a bunch of common options 2013-09-28 11:27:26 -04:00
Cole Robinson b3719f25ac cli: s/yes_or_no/yes_no/g 2013-09-28 10:06:52 -04:00
Cole Robinson b3a72bcb95 cli: Remove unneeded parameter to optparse.add_option 2013-09-28 10:03:08 -04:00
Cole Robinson eca87838fb virt-install: Add --features option
And hide docs about old --noacpi/--noacpi options. I don't think
anyone really uses them anyways, but if anyone complains we should
just implement --features for the other CLI commands.
2013-09-28 09:58:57 -04:00
Cole Robinson 16a190a0dc cli: Add some consistency to deprecated option handling
Take all the old options and convert them to new style, so the rest
of the app only needs to deal with new style bits.
2013-09-27 22:31:52 -04:00
Cole Robinson 6013622da4 cli: Make option handling more consistent 2013-09-27 16:52:41 -04:00
Cole Robinson 1212cf43a9 DomainFeatures: Drop __getitem__ helpers
They just complicate matters
2013-09-27 15:08:44 -04:00
Cole Robinson c5f5d5ad9d urlfetcher: Clean up APIs for fetching URL media 2013-09-26 14:28:13 -04:00
Cole Robinson a2e5206730 deviceinterface: Fix creating direct interfaces (bz 1006324)
And take the opportunity to standarize on setting net.source,
rather than have API users have to do net.bridge/network/source_dev
2013-09-24 10:00:01 -04:00
Cole Robinson e9b8a289b5 network: Centralize pxe support check 2013-09-22 17:05:15 -04:00
Giuseppe Scrivano a55438f880 virt-install: add support for virtio-rng devices
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2013-09-20 18:56:19 -04:00
Cole Robinson b96fa5706c Fix a couple transalation issues 2013-09-20 12:10:34 -04:00
Cole Robinson 38545e3af8 Fix pylint warnings with latest version 2013-09-19 13:14:44 -04:00
Cole Robinson f220e6778c Guest: Drop OS listing helpers, and OS_TYPES back compat 2013-08-11 14:52:30 -04:00
Cole Robinson 45d2db887d virt-*: Unify handling of --os-variant
And hide --os-type from the cli since it is long since redundant.
2013-08-11 12:39:28 -04:00
Cole Robinson d36f953142 guest: Move all console handling to virt-install, the only consumer 2013-08-11 12:39:28 -04:00
Cole Robinson 87789548ba guest: Drop consolecb and wait parameters from start_install 2013-08-11 12:39:28 -04:00
Cole Robinson 012d1cdc52 Installer: Drop all XML handling, just have it setup install info 2013-07-23 17:34:33 -04:00
Cole Robinson 00d41be5c5 DistroInstaller: Bunch of misc cleanup 2013-07-23 17:34:32 -04:00
Cole Robinson f37d4d010a virtinst: Drop __init__ params from Guest and Installer 2013-07-23 17:34:32 -04:00
Cole Robinson 524d1047b1 Guest: Make API users opt in for default console/input devices
We don't need to maintain API back compat anymore
2013-07-23 17:34:32 -04:00
Cole Robinson e802eae07b VirtualCharDevice: Convert to new style XML props, rework API 2013-07-23 17:34:31 -04:00
Cole Robinson 4ce1774d53 VirtualDisk: Rework provisioning and validation behavior
We separate all the provisioning bits to diskbackend.py. VirtualDisk
users now need to explicitly opt in to storage creation by using
set_create_storage().

validation is no longer done automatically, users must call the
validation() command.

__init__ drops all extra parameters.

This will eventually get us to a point where we can unify the manual
XML building and XML parsing machinery, and get consistent validation
behavior between devices.
2013-07-13 16:37:33 -04:00
Cole Robinson 2540c5dc9a virt-install: Fix use of removed get_uri API 2013-07-13 16:32:21 -04:00
Cole Robinson 0d5fe93048 Centralize XML helpers in virtinst/util.py 2013-07-12 13:10:23 -04:00
Cole Robinson 94f8d4cfa9 VirtualConnection: cache capabilities XML
This means we can drop passing around the pre-parsed caps info everywhere.
2013-07-06 14:12:13 -04:00
Cole Robinson ec734191fc virtinst: connection: Absorb all scattered URI helpers 2013-07-06 12:40:24 -04:00
Cole Robinson b6fa7d16e5 Add epilog and description for virt-* --help 2013-06-30 15:03:53 -04:00
Stefan Berger 93718868c7 Add CLI support and CLI test cases
Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2013-06-26 19:43:58 -04:00
Cole Robinson 7ae458f1ba virt-install: Error if -c <uri> specified
-c maps to --cdrom for virt-install, but for other libvirt tools like
virsh it maps to --connect.

Handle -c and --cdrom a little differently: if -c contains '://',
error out with an explanation. User can work around it by using
--cdrom. This could in theory break some users, but the change they
make will be backwards compatible.
2013-04-21 12:28:14 -04:00
Cole Robinson 0f57dae8b2 virtinst: Remove not-very-useful post_install_check
It doesn't work in a variety of cases and it's not very useful
to begin with.
2013-04-15 12:37:36 -04:00
Cole Robinson 0d243983d0 Revive pep8 and clean up the code
autopep8 is pretty cool :)
2013-04-13 15:22:43 -04:00
Cole Robinson baf531f710 virtinst: Guest: Remove back compat static device lists 2013-04-13 13:40:45 -04:00
Cole Robinson 7a47465ab6 virtinst: Guest: remove back compat graphics handling 2013-04-13 13:40:45 -04:00
Cole Robinson ae471007fc Tons of misc pylint fixes 2013-04-13 13:40:29 -04:00
Cole Robinson a386186c74 Remove most map() and filter() usage
They aren't available on python3 so pylint complains, and list
comprehensions are usually better.
2013-04-12 08:27:44 -04:00
Cole Robinson c5e45ae448 Remove all relative imports
We also drop VirtualDevice from the 'public' virtinst API, since there
are better ways to get its info.
2013-04-12 08:27:44 -04:00
Cole Robinson 927bcc11cd virtinst: util: Move URI helpers to their own file
Helps us avoid some relative imports, and makes things cleaner.
2013-04-11 12:15:38 -04:00
Cole Robinson 3bce20d974 virtinst: Combine util.py and _util.py
Was originally split to not pollute the public API, but we aren't public
anymore
2013-04-11 12:15:37 -04:00
Cole Robinson 9fc356af43 virt-install: Better error when user accidentally passes -vcpus
Notice the missing - in -vcpus. It maps to

--hvm --cdrom pus

If the user also specifies --paravirt, they get an error that hvm and
paravirt conflict, which is very confusing.

There isn't a nice way to catch this issue which isn't back compatible,
so scrape the raw argv and try to figure it out.
2013-04-04 12:04:07 -04:00
Cole Robinson d6c8ad0297 Wire up python unit tests, unify gettext setup 2013-04-03 18:22:05 -04:00
Cole Robinson 88603e4fad Merge code from python-virtinst.git
As outlined here:

https://www.redhat.com/archives/virt-tools-list/2012-February/msg00040.html

For now this is just a direct import of the code from virtinst commit
dca5a4d6245f21d554f8853197a6a234bfc8e52c. History is not merged, so
please refer to original git for detailed commit histor:

http://git.fedorahosted.org/cgit/python-virtinst.git/
2013-04-03 18:22:05 -04:00