def get_os_type_page(self, screen): types = [] for typ in Guest.list_os_types(): types.append([Guest.get_os_type_label(typ), typ, self.__config.is_os_type(typ)]) self.__os_types = snack.RadioBar(screen, types) grid = snack.Grid(1, 1) grid.setField(self.__os_types, 0, 0, anchorLeft=1) return [snack.Label("Choose the operating system type"), grid]
def build_virtinst_guest(self, conn, guest, domain): from virtinst import Guest as VGuest gobj = VGuest(conn) gobj.type = domain.hypervisor_type gobj.os.os_type = guest.os_type gobj.os.arch = guest.arch gobj.os.loader = domain.loader gobj.emulator = domain.emulator return gobj
def get_os_variant_page(self, screen): variants = [] typ = self.__config.get_os_type() for variant in Guest.list_os_variants(typ): variants.append([Guest.get_os_variant_label(typ, variant), variant, self.__config.is_os_variant(variant)]) self.__os_variants = snack.RadioBar(screen, variants) grid = snack.Grid(1, 1) grid.setField(self.__os_variants, 0, 0, anchorLeft=1) return [snack.Label("Choose the operating system version"), grid]
def test_recommended_resources(self): conn = utils.URIs.open_testdefault_cached() guest = Guest(conn) assert not OSDB.lookup_os("generic").get_recommended_resources(guest) res = OSDB.lookup_os("fedora21").get_recommended_resources(guest) assert res["n-cpus"] == 2 guest.type = "qemu" res = OSDB.lookup_os("fedora21").get_recommended_resources(guest) assert res["n-cpus"] == 1
def test_recommended_resources(self): conn = utils.URIs.open_testdefault_cached() guest = Guest(conn) res = OSDB.lookup_os("generic").get_recommended_resources() self.assertEqual(res.get_recommended_ram(guest.os.arch), None) res = OSDB.lookup_os("fedora21").get_recommended_resources() self.assertEqual(res.get_recommended_ncpus(guest.os.arch), 2)
def test_recommended_resources(): conn = utils.URIs.open_testdefault_cached() guest = Guest(conn) res = OSDB.lookup_os("generic").get_recommended_resources() assert res.get_recommended_ram(guest.os.arch) is None res = OSDB.lookup_os("fedora21").get_recommended_resources() assert res.get_recommended_ncpus(guest.os.arch) == 2
def _testNode2DeviceCompare(self, nodename, devfile, nodedev=None): devfile = os.path.join("tests/data/nodedev/devxml", devfile) if not nodedev: nodedev = self._nodeDevFromName(nodename) dev = DeviceHostdev(self.conn) dev.set_from_nodedev(nodedev) dev.set_defaults(Guest(self.conn)) utils.diff_compare(dev.get_xml() + "\n", devfile)
def _testNode2DeviceCompare(conn, nodename, devfile, nodedev=None): devfile = os.path.join(DATADIR, "devxml", devfile) if not nodedev: nodedev = _nodeDevFromName(conn, nodename) dev = DeviceHostdev(conn) dev.set_from_nodedev(nodedev) dev.set_defaults(Guest(conn)) utils.diff_compare(dev.get_xml() + "\n", devfile)
def get_cpuset(cpuset, mem, guest, conn): if cpuset and cpuset != "auto": guest.cpuset = cpuset elif cpuset == "auto": tmpset = None try: tmpset = Guest.generate_cpuset(conn, mem) except Exception, e: logging.debug("Not setting cpuset", str(e)) if tmpset: logging.debug("Auto cpuset is: %s" % tmpset) guest.cpuset = tmpset
def get_confirm_page(self, screen): ignore = screen grid = snack.Grid(2, 6) grid.setField(snack.Label("OS:"), 0, 0, anchorRight=1) grid.setField(snack.Label(Guest.get_os_variant_label(self.__config.get_os_type(), self.__config.get_os_variant())), 1, 0, anchorLeft=1) grid.setField(snack.Label("Install:"), 0, 1, anchorRight=1) grid.setField(snack.Label(self.__config.get_install_type_text()), 1, 1, anchorLeft=1) grid.setField(snack.Label("Memory:"), 0, 2, anchorRight=1) grid.setField(snack.Label("%s MB" % self.__config.get_memory()), 1, 2, anchorLeft=1) grid.setField(snack.Label("CPUs:"), 0, 3, anchorRight=1) grid.setField(snack.Label("%d" % self.__config.get_cpus()), 1, 3, anchorLeft=1) grid.setField(snack.Label("Storage:"), 0, 4, anchorRight=1) grid.setField(snack.Label("%s (on %s)" % (self.__config.get_storage_volume(), self.__config.get_storage_pool())), 1, 4, anchorLeft=1) grid.setField(snack.Label("Network:"), 0, 5, anchorRight=1) grid.setField(snack.Label(self.__config.get_network_bridge()), 1, 5, anchorLeft=1) return [snack.Label("Ready to begin installation of %s" % self.__config.get_guest_name()), grid]
def test_prepare_install_script(self): from virtinst import unattended conn = utils.URIs.open_testdriver_cached() g = Guest(conn) g.set_os_name("fedora26") g.set_capabilities_defaults() g.name = "foo-vm" u = unattended.UnattendedData() u.profile = "desktop" u.admin_password = "******" u.user_password = "******" try: script = unattended.prepare_install_script(g, u) dummy = script except RuntimeError as e: if "libosinfo is too old" not in str(e): raise self.skipTest(str(e))
testshortcircuit=True) # Latest LTS _add(UBUNTU_URL % ("precise", "amd64"), "ubuntu12.04") # Latest release _add(OLD_UBUNTU_URL % ("raring", "amd64"), "ubuntu13.04") _set_distro(MandrivaDistro) # One old mandriva _add(MANDRIVA_URL % ("2010.2", "x86_64"), i686=MANDRIVA_URL % ("2010.2", "i586"), hasxen=False, name="mandriva-2010.2") testconn = utils.open_testdefault() hvmguest = Guest(testconn) hvmguest.os.os_type = "hvm" xenguest = Guest(testconn) xenguest.os.os_type = "xen" meter = urlgrabber.progress.BaseMeter() if utils.get_debug(): meter = urlgrabber.progress.TextMeter(fo=sys.stdout) def _storeForDistro(fetcher, guest): """ Helper to lookup the Distro store object, basically detecting the URL. Handle occasional proxy errors """ for ignore in range(0, 10):
def set_os_type(self, typ): self.__os_type = typ self.__os_variant = Guest.list_os_variants(typ)[0]
import logging import sys import unittest from tests import utils from virtinst import Guest from virtinst import urlfetcher from virtinst import util from virtinst.initrdinject import perform_initrd_injections cleanup = [] _alldistros = {} testconn = utils.open_testdefault() guest = Guest(testconn) guest.os.os_type = "hvm" guest.os.arch = "x86_64" meter = util.make_meter(quiet=False) DEVFEDORA_URL = "http://dl.fedoraproject.org/pub/fedora/linux/development/%s/Server/%s/os/" FEDORA_URL = "http://dl.fedoraproject.org/pub/fedora/linux/releases/%s/Server/%s/os/" (WARN_RHEL4, WARN_RHEL5, WARN_LATEST) = range(1, 4) def prompt(): sys.stdout.write("(press enter to continue)") sys.stdout.flush()
def set_os_type(self, type): self.__os_type = type self.__os_variant = Guest.list_os_variants(type)[0]