def testKVMKeymap(self): conn = utils.open_plainkvm(connver=10000) g = virtinst.VirtualGraphics(conn=conn, type="vnc") self.assertTrue(g.keymap != None) conn = utils.open_plainkvm(connver=11000) g = virtinst.VirtualGraphics(conn=conn, type="vnc") self.assertTrue(g.keymap == None)
def testKVMKeymap(self): conn = utils.open_plainkvm(connver=10000) g = virtinst.VirtualGraphics(conn) g.type = "vnc" self.assertTrue(g.keymap is not None) conn = utils.open_plainkvm(connver=11000) g = virtinst.VirtualGraphics(conn) g.type = "vnc" self.assertTrue(g.keymap is None)
def define_domain(self, config, meter): location = None extra = None kickstart = None if config.get_install_type() == DomainConfig.LOCAL_INSTALL: if config.get_use_cdrom_source(): iclass = virtinst.DistroInstaller location = config.get_install_media() else: iclass = virtinst.LiveCDInstaller location = config.get_iso_path() elif config.get_install_type() == DomainConfig.NETWORK_INSTALL: iclass = virtinst.DistroInstaller location = config.get_install_url() extra = config.get_kernel_options() kickstart = config.get_kickstart_url() elif config.get_install_type() == DomainConfig.PXE_INSTALL: iclass = virtinst.PXEInstaller installer = iclass(conn=self.__conn, type=self.get_hypervisor(config.get_virt_type()), os_type=self.get_os_type(config.get_virt_type())) self.__guest = installer.guest_from_installer() self.__guest.name = config.get_guest_name() self.__guest.vcpus = config.get_cpus() self.__guest.memory = config.get_memory() self.__guest.maxmemory = config.get_memory() self.__guest.installer.location = location if config.get_use_cdrom_source(): self.__guest.installer.cdrom = True extraargs = "" if extra: extraargs += extra if kickstart: extraargs += " ks=%s" % kickstart if extraargs: self.__guest.installer.extraarags = extraargs self.__guest.uuid = virtinst.util.uuidToString( virtinst.util.randomUUID()) if config.get_os_type() != "generic": self.__guest.os_type = config.get_os_type() if config.get_os_variant() != "generic": self.__guest.os_variant = config.get_os_variant() self.__guest._graphics_dev = virtinst.VirtualGraphics( type=virtinst.VirtualGraphics.TYPE_VNC) self.__guest.sound_devs = [] self.__guest.sound_devs.append(virtinst.VirtualAudio(model="es1370")) #ÉèÖÃÍø¿¨ self._setup_nics(config) self._setup_disks(config) self.__guest.conn = self.__conn self.__domain = self.__guest.start_install(False, meter=meter)
def _make_guest(installer=None, conn=None, os_variant=None): if conn is None: conn = _default_conn g = conn.caps.lookup_virtinst_guest() g.type = "kvm" g.name = "TestGuest" g.memory = int(200 * 1024) g.maxmemory = int(400 * 1024) g.uuid = "12345678-1234-1234-1234-123456789012" gdev = virtinst.VirtualGraphics(conn) gdev.type = "vnc" gdev.keymap = "ja" g.add_device(gdev) g.features.pae = False g.vcpus = 5 if not installer: installer = _make_installer(conn=conn) g.installer = installer g.emulator = "/usr/lib/xen/bin/qemu-dm" g.os.arch = "i686" g.os.os_type = "hvm" if os_variant: g.os_variant = os_variant g.add_default_input_device() g.add_default_console_device() g.add_device(virtinst.VirtualAudio(g.conn)) # Floppy disk path = "/dev/default-pool/testvol1.img" d = VirtualDisk(conn) d.path = path d.device = d.DEVICE_FLOPPY d.validate() g.add_device(d) # File disk path = "/dev/default-pool/new-test-suite.img" d = virtinst.VirtualDisk(conn) d.path = path if d.wants_storage_creation(): parent_pool = d.get_parent_pool() vol_install = virtinst.VirtualDisk.build_vol_install(conn, os.path.basename(path), parent_pool, .0000001, True) d.set_vol_install(vol_install) d.validate() g.add_device(d) # Block disk path = "/dev/disk-pool/diskvol1" d = virtinst.VirtualDisk(conn) d.path = path d.validate() g.add_device(d) # Network device dev = virtinst.VirtualNetworkInterface(conn) dev.macaddr = "22:22:33:44:55:66" dev.type = virtinst.VirtualNetworkInterface.TYPE_VIRTUAL dev.source = "default" g.add_device(dev) return g
def testManyDevices(self): i = utils.make_pxe_installer() g = utils.get_basic_fullyvirt_guest(installer=i) g.description = "foooo barrrr somedesc" g.hugepage = True # Hostdevs dev1 = VirtualHostDeviceUSB(g.conn) dev1.product = "0x1234" dev1.vendor = "0x4321" g.hostdevs.append(dev1) # Sound devices g.sound_devs.append(VirtualAudio("sb16", conn=g.conn)) g.sound_devs.append(VirtualAudio("es1370", conn=g.conn)) # Disk devices g.disks.append(VirtualDisk(conn=g.conn, path="/dev/loop0", device=VirtualDisk.DEVICE_FLOPPY)) g.disks.append(VirtualDisk(conn=g.conn, path="/dev/loop0", bus="scsi")) g.disks.append(VirtualDisk(conn=g.conn, path="/tmp", device="floppy")) d3 = VirtualDisk(conn=g.conn, path="/default-pool/testvol1.img", bus="scsi", driverName="qemu") g.disks.append(d3) # Controller devices c1 = VirtualController.get_class_for_type(VirtualController.CONTROLLER_TYPE_IDE)(g.conn) c1.index = "3" c2 = VirtualController.get_class_for_type(VirtualController.CONTROLLER_TYPE_VIRTIOSERIAL)(g.conn) c2.ports = "32" c2.vectors = "17" g.add_device(c1) g.add_device(c2) # Network devices net1 = utils.get_virtual_network() net1.model = "e1000" net2 = VirtualNetworkInterface(type="user", macaddr="11:11:11:11:11:11") g.nics.append(net1) g.nics.append(net2) # Character devices cdev1 = VirtualCharDevice.get_dev_instance(g.conn, VirtualCharDevice.DEV_SERIAL, VirtualCharDevice.CHAR_NULL) cdev2 = VirtualCharDevice.get_dev_instance(g.conn, VirtualCharDevice.DEV_PARALLEL, VirtualCharDevice.CHAR_UNIX) cdev2.source_path = "/tmp/foobar" cdev3 = VirtualCharDevice.get_dev_instance(g.conn, VirtualCharDevice.DEV_CHANNEL, VirtualCharDevice.CHAR_SPICEVMC) g.add_device(cdev1) g.add_device(cdev2) g.add_device(cdev3) # Video Devices vdev1 = VirtualVideoDevice(g.conn) vdev1.model_type = "vmvga" vdev2 = VirtualVideoDevice(g.conn) vdev2.model_type = "cirrus" vdev2.vram = 10 * 1024 vdev2.heads = 3 vdev3 = VirtualVideoDevice(g.conn) vdev4 = VirtualVideoDevice(g.conn) vdev4.model_type = "qxl" g.add_device(vdev1) g.add_device(vdev2) g.add_device(vdev3) g.add_device(vdev4) wdev2 = VirtualWatchdog(g.conn) wdev2.model = "ib700" wdev2.action = "none" g.add_device(wdev2) # Check keymap autoconfig gdev1 = virtinst.VirtualGraphics(conn=g.conn, type="vnc") self.assertTrue(gdev1.keymap != None) gdev1.keymap = "en-us" # Check keymap None gdev2 = virtinst.VirtualGraphics(conn=g.conn, type="vnc") gdev2.keymap = None gdev3 = virtinst.VirtualGraphics(conn=g.conn, type="sdl") gdev4 = virtinst.VirtualGraphics(conn=g.conn, type="spice") gdev5 = virtinst.VirtualGraphics(conn=g.conn, type="sdl") gdev5.xauth = "fooxauth" gdev5.display = "foodisplay" g.add_device(gdev1) g.add_device(gdev2) g.add_device(gdev3) g.add_device(gdev4) g.add_device(gdev5) g.clock.offset = "localtime" g.seclabel.type = g.seclabel.SECLABEL_TYPE_STATIC g.seclabel.model = "selinux" g.seclabel.label = "foolabel" g.seclabel.imagelabel = "imagelabel" self._compare(g, "boot-many-devices", False)
def testManyDevices(self): i = utils.make_pxe_installer() g = utils.get_basic_fullyvirt_guest(installer=i) g.description = "foooo barrrr somedesc" g.memoryBacking.hugepages = True # Hostdevs dev1 = VirtualHostDevice(g.conn) dev1.type = "usb" dev1.vendor = "0x4321" dev1.product = "0x1234" g.add_device(dev1) # Sound devices d = VirtualAudio(g.conn) d.model = "sb16" g.add_device(d) d = VirtualAudio(g.conn) d.model = "es1370" g.add_device(d) # Disk devices d = VirtualDisk(g.conn) d.type = "block" d.path = "/dev/null" d.device = d.DEVICE_FLOPPY d.validate() g.add_device(d) d = VirtualDisk(g.conn) d.type = "block" d.path = "/dev/null" d.bus = "scsi" d.validate() g.add_device(d) d = VirtualDisk(g.conn) d.path = "/tmp" d.device = d.DEVICE_FLOPPY d.validate() g.add_device(d) d = VirtualDisk(g.conn) d.path = "/dev/default-pool/testvol1.img" d.bus = "scsi" d.driver_name = "qemu" d.address.type = "spapr-vio" d.validate() g.add_device(d) # Controller devices c1 = VirtualController(g.conn) c1.type = "ide" c1.index = "3" c2 = VirtualController(g.conn) c2.type = "virtio-serial" c2.ports = "32" c2.vectors = "17" g.add_device(c1) g.add_device(c2) # Network devices net1 = utils.get_virtual_network() net1.model = "e1000" net2 = VirtualNetworkInterface(g.conn) net2.type = "user" net2.macaddr = "22:11:11:11:11:11" net3 = VirtualNetworkInterface(g.conn) net3.type = virtinst.VirtualNetworkInterface.TYPE_VIRTUAL net3.macaddr = "22:22:22:22:22:22" net3.source = "default" net3.model = "spapr-vlan" net3.address.set_addrstr("spapr-vio") g.add_device(net1) g.add_device(net2) g.add_device(net3) # Character devices cdev1 = VirtualSerialDevice(g.conn) cdev1.type = "null" cdev2 = VirtualParallelDevice(g.conn) cdev2.type = "unix" cdev2.source_path = "/dev/default-pool/foobar" cdev3 = VirtualChannelDevice(g.conn) cdev3.type = "spicevmc" g.add_device(cdev1) g.add_device(cdev2) g.add_device(cdev3) # Video Devices vdev1 = VirtualVideoDevice(g.conn) vdev1.model = "vmvga" vdev2 = VirtualVideoDevice(g.conn) vdev2.model = "cirrus" vdev2.vram = 10 * 1024 vdev2.heads = 3 vdev3 = VirtualVideoDevice(g.conn) vdev4 = VirtualVideoDevice(g.conn) vdev4.model = "qxl" g.add_device(vdev1) g.add_device(vdev2) g.add_device(vdev3) g.add_device(vdev4) # Watchdog Devices wdev2 = VirtualWatchdog(g.conn) wdev2.model = "ib700" wdev2.action = "none" g.add_device(wdev2) # Memballoon Devices mdev1 = VirtualMemballoon(g.conn) mdev1.model = "virtio" g.add_device(mdev1) # Check keymap autoconfig gdev1 = virtinst.VirtualGraphics(g.conn) gdev1.type = "vnc" self.assertTrue(gdev1.keymap is not None) gdev1.keymap = "en-us" # Check keymap None gdev2 = virtinst.VirtualGraphics(g.conn) gdev2.type = "vnc" gdev2.keymap = None gdev3 = virtinst.VirtualGraphics(g.conn) gdev3.type = "sdl" gdev3.xauth = "/dev/default-pool/.Xauthority" gdev3.display = ":3.4" gdev4 = virtinst.VirtualGraphics(g.conn) gdev4.type = "spice" gdev4.passwdValidTo = "foobar" gdev5 = virtinst.VirtualGraphics(g.conn) gdev5.type = "sdl" gdev5.xauth = "fooxauth" gdev5.display = "foodisplay" g.add_device(gdev1) g.add_device(gdev2) g.add_device(gdev3) g.add_device(gdev4) g.add_device(gdev5) g.clock.offset = "localtime" g.seclabel.type = g.seclabel.TYPE_STATIC g.seclabel.model = "selinux" g.seclabel.label = "foolabel" g.seclabel.imagelabel = "imagelabel" redir1 = virtinst.VirtualRedirDevice(g.conn) redir1.type = "spicevmc" redir2 = virtinst.VirtualRedirDevice(g.conn) redir2.type = "tcp" redir2.parse_friendly_server("foobar.com:1234") g.add_device(redir1) g.add_device(redir2) # Panic Notifier device pdev = VirtualPanicDevice(g.conn) g.add_device(pdev) self._compare(g, "boot-many-devices", False)