summaryrefslogtreecommitdiff
path: root/virt-install
diff options
context:
space:
mode:
authorCole Robinson <crobinso@redhat.com>2019-06-12 17:55:30 -0400
committerCole Robinson <crobinso@redhat.com>2019-06-13 14:00:04 -0400
commit19bcec651cabb970b195b9dddb348eb6503cf27c (patch)
tree4f042cb860a2382e95c6157985e47bf9843a9606 /virt-install
parent9cbe5f9742c4a4d09ca75be1aa368708be999f4f (diff)
downloadvirt-manager-19bcec651cabb970b195b9dddb348eb6503cf27c.tar.gz
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
Diffstat (limited to 'virt-install')
-rwxr-xr-xvirt-install30
1 files changed, 7 insertions, 23 deletions
diff --git a/virt-install b/virt-install
index 5813d3a9..a020fa8a 100755
--- a/virt-install
+++ b/virt-install
@@ -341,7 +341,7 @@ _cdrom_location_man_page = _("See the man page for examples of "
"using --location with CDROM media")
-def check_option_collisions(options, guest, installer):
+def check_option_collisions(options, guest):
if options.noreboot and options.transient:
fail(_("--noreboot and --transient can not be specified together"))
@@ -354,20 +354,6 @@ def check_option_collisions(options, guest, installer):
fail(_("Install methods (%s) cannot be specified for "
"container guests") % install_methods)
- cdrom_err = ""
- if installer.cdrom:
- cdrom_err = " " + _cdrom_location_man_page
- if not options.location and options.extra_args:
- fail(_("--extra-args only work if specified with --location.") +
- cdrom_err)
- if not options.location and options.initrd_inject:
- fail(_("--initrd-inject only works if specified with --location.") +
- cdrom_err)
-
- if options.unattended:
- if options.initrd_inject or options.extra_args:
- fail(_("--unattended does not support --initrd-inject nor --extra-args."))
-
def _show_nographics_warnings(options, guest, installer):
if guest.devices.graphics:
@@ -494,18 +480,16 @@ def build_installer(options, guest):
install_kernel=install_kernel,
install_initrd=install_initrd,
install_kernel_args=install_kernel_args)
+
if cdrom and options.livecd:
installer.livecd = True
if options.unattended:
unattended_data = cli.parse_unattended(options.unattended)
- options.unattended = None
-
installer.set_unattended_data(unattended_data)
- else:
- if extra_args:
- installer.extra_args = extra_args
- if options.initrd_inject:
- installer.set_initrd_injections(options.initrd_inject)
+ if extra_args:
+ installer.set_extra_args(extra_args)
+ if options.initrd_inject:
+ installer.set_initrd_injections(options.initrd_inject)
if options.autostart:
installer.autostart = True
@@ -604,7 +588,7 @@ def build_guest_instance(conn, options):
cli.validate_disk(disk)
validate_required_options(options, guest, installer)
- check_option_collisions(options, guest, installer)
+ check_option_collisions(options, guest)
show_warnings(options, guest, installer)
return guest, installer