本文整理汇总了Python中xmlbuilder.XMLBuilder.model方法的典型用法代码示例。如果您正苦于以下问题:Python XMLBuilder.model方法的具体用法?Python XMLBuilder.model怎么用?Python XMLBuilder.model使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类xmlbuilder.XMLBuilder
的用法示例。
在下文中一共展示了XMLBuilder.model方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: build_node_xml
# 需要导入模块: from xmlbuilder import XMLBuilder [as 别名]
# 或者: from xmlbuilder.XMLBuilder import model [as 别名]
def build_node_xml(self, node, emulator):
"""Generate node XML
:type node: Node
:type emulator: String
:rtype : String
"""
node_xml = XMLBuilder("domain", type=node.hypervisor)
node_xml.name(
self._get_name(node.environment and node.environment.name or '',
node.name))
with node_xml.cpu(mode='host-model'):
node_xml.model(fallback='forbid')
node_xml.vcpu(str(node.vcpu))
node_xml.memory(str(node.memory * 1024), unit='KiB')
node_xml.clock(offset='utc')
node_xml.clock.timer(
name='hpet',
present='yes' if self.driver.hpet else 'no')
with node_xml.os:
node_xml.type(node.os_type, arch=node.architecture)
for boot_dev in json.loads(node.boot):
node_xml.boot(dev=boot_dev)
if self.driver.reboot_timeout:
node_xml.bios(rebootTimeout='{0}'.format(
self.driver.reboot_timeout))
with node_xml.devices:
node_xml.emulator(emulator)
if node.has_vnc:
if node.vnc_password:
node_xml.graphics(
type='vnc',
listen='0.0.0.0',
autoport='yes',
passwd=node.vnc_password)
else:
node_xml.graphics(
type='vnc',
listen='0.0.0.0',
autoport='yes')
for disk_device in node.disk_devices:
self._build_disk_device(node_xml, disk_device)
for interface in node.interfaces:
self._build_interface_device(node_xml, interface)
with node_xml.video:
node_xml.model(type='vga', vram='9216', heads='1')
with node_xml.serial(type='pty'):
node_xml.target(port='0')
with node_xml.console(type='pty'):
node_xml.target(type='serial', port='0')
return str(node_xml)
示例2: build_node_xml
# 需要导入模块: from xmlbuilder import XMLBuilder [as 别名]
# 或者: from xmlbuilder.XMLBuilder import model [as 别名]
def build_node_xml(self, node, emulator):
"""
:rtype : String
:type node: Node
"""
node_xml = XMLBuilder("domain", type=node.hypervisor)
node_xml.name(
self._get_name(node.environment and node.environment.name or '',
node.name))
node_xml.vcpu(str(node.vcpu))
node_xml.memory(str(node.memory * 1024), unit='KiB')
with node_xml.os:
node_xml.type(node.os_type, arch=node.architecture)
for boot_dev in json.loads(node.boot):
node_xml.boot(dev=boot_dev)
with node_xml.devices:
node_xml.emulator(emulator)
if node.has_vnc:
if node.vnc_password:
node_xml.graphics(
type='vnc',
listen='0.0.0.0',
autoport='yes',
passwd=node.vnc_password)
else:
node_xml.graphics(
type='vnc',
listen='0.0.0.0',
autoport='yes')
for disk_device in node.disk_devices:
self._build_disk_device(node_xml, disk_device)
for interface in node.interfaces:
self._build_interface_device(node_xml, interface)
with node_xml.video:
node_xml.model(type='vga', vram='9216', heads='1')
return str(node_xml)
示例3: build_node_xml
# 需要导入模块: from xmlbuilder import XMLBuilder [as 别名]
# 或者: from xmlbuilder.XMLBuilder import model [as 别名]
def build_node_xml(self, node, spec):
node_xml = XMLBuilder("domain", type=spec.hypervisor)
node_xml.name(node.id)
node_xml.vcpu(str(node.cpu))
node_xml.memory(str(node.memory * 1024), unit='KiB')
with node_xml.os:
node_xml.type(spec.os_type, arch=node.arch)
for boot_dev in node.boot:
if boot_dev == 'disk':
node_xml.boot(dev="hd")
else:
node_xml.boot(dev=boot_dev)
ide_disk_names = deque(
['hd' + c for c in list('abcdefghijklmnopqrstuvwxyz')])
serial_disk_names = deque(
['sd' + c for c in list('abcdefghijklmnopqrstuvwxyz')])
def disk_name(bus='ide'):
if str(bus) == 'ide':
return ide_disk_names.popleft()
return serial_disk_names.popleft()
with node_xml.devices:
node_xml.emulator(spec.emulator)
if len(node.disks) > 0:
node_xml.controller(type="ide")
for disk in node.disks:
with node_xml.disk(type="file", device="disk"):
node_xml.driver(
name="qemu", type=disk.format,
cache="unsafe")
node_xml.source(file=disk.path)
node_xml.target(dev=disk_name(disk.bus), bus=disk.bus)
if node.cdrom:
with node_xml.disk(type="file", device="cdrom"):
node_xml.driver(name="qemu", type="raw")
node_xml.source(file=node.cdrom.isopath)
node_xml.target(
dev=disk_name(node.cdrom.bus),
bus=node.cdrom.bus)
for interface in node.interfaces:
with node_xml.interface(type="network"):
node_xml.source(network=interface.network.id)
if not (interface.type is None):
node_xml.model(type=interface.type)
for interface in node.bridged_interfaces:
with node_xml.interface(type="bridge"):
node_xml.source(bridge=interface.bridge)
if not (interface.type is None):
node_xml.model(type=interface.type)
if node.vnc:
node_xml.graphics(type='vnc', listen='0.0.0.0', autoport='yes')
return str(node_xml)
示例4: build_node_xml
# 需要导入模块: from xmlbuilder import XMLBuilder [as 别名]
# 或者: from xmlbuilder.XMLBuilder import model [as 别名]
def build_node_xml(self, node, emulator):
"""Generate node XML
:type node: Node
:type emulator: String
:rtype : String
"""
node_xml = XMLBuilder("domain", type=node.hypervisor)
node_xml.name(
self._get_name(node.environment and node.environment.name or '',
node.name))
if self.driver.use_host_cpu:
node_xml.cpu(mode='host-passthrough')
node_xml.vcpu(str(node.vcpu))
node_xml.memory(str(node.memory * 1024), unit='KiB')
if self.driver.use_hugepages:
with node_xml.memoryBacking:
node_xml.hugepages
node_xml.clock(offset='utc')
with node_xml.clock.timer(name='rtc',
tickpolicy='catchup', track='wall'):
node_xml.catchup(
threshold='123',
slew='120',
limit='10000')
node_xml.clock.timer(
name='pit',
tickpolicy='delay')
node_xml.clock.timer(
name='hpet',
present='yes' if self.driver.hpet else 'no')
with node_xml.os:
node_xml.type(node.os_type, arch=node.architecture)
for boot_dev in json.loads(node.boot):
node_xml.boot(dev=boot_dev)
if self.driver.reboot_timeout:
node_xml.bios(rebootTimeout='{0}'.format(
self.driver.reboot_timeout))
if node.should_enable_boot_menu:
node_xml.bootmenu(enable='yes', timeout='3000')
with node_xml.devices:
node_xml.controller(type='usb', model='nec-xhci')
node_xml.emulator(emulator)
if node.has_vnc:
if node.vnc_password:
node_xml.graphics(
type='vnc',
listen='0.0.0.0',
autoport='yes',
passwd=node.vnc_password)
else:
node_xml.graphics(
type='vnc',
listen='0.0.0.0',
autoport='yes')
for disk_device in node.disk_devices:
self._build_disk_device(node_xml, disk_device)
for interface in node.interfaces:
self._build_interface_device(node_xml, interface)
with node_xml.video:
node_xml.model(type='vga', vram='9216', heads='1')
with node_xml.serial(type='pty'):
node_xml.target(port='0')
with node_xml.console(type='pty'):
node_xml.target(type='serial', port='0')
return str(node_xml)