Commit 3fe7d076 by Karsa Zoltán István

xml

parent f9f78ee7
......@@ -12,6 +12,7 @@ class VMInstance:
vm_type = None
os_boot = None
vcpu = None
vcpu_max = None
cpu_share = None
memory_max = None
network_list = list()
......@@ -22,7 +23,8 @@ class VMInstance:
def __init__(self,
name,
vcpu,
memory_max,
vcpu_max=None,
memory_max=None,
memory=None,
emulator='/usr/bin/kvm',
cpu_share=100,
......@@ -53,6 +55,9 @@ class VMInstance:
seclabel_type - libvirt security label type
seclabel_mode - libvirt security mode (selinux, apparmor)
'''
self.vcpu_max = vcpu_max
if not vcpu_max:
self.vcpu_max = vcpu
self.name = name
self.emulator = emulator
self.vcpu = vcpu
......@@ -98,9 +103,24 @@ class VMInstance:
xml_top.append(child)
# Basic virtual machine paramaters
ET.SubElement(xml_top, 'name').text = self.name
ET.SubElement(xml_top, 'vcpu').text = str(self.vcpu)
cpu = ET.SubElement(xml_top, 'cpu')
ET.SubElement(cpu, 'topology',
ET.SubElement(xml_top, 'vcpu', attrib={'current': str(self.vcpu)}).text = str(self.vcpu_max)
if self.vcpu < self.vcpu_max:
vcpus = ET.SubElement(xml_top, 'vcpus')
for i in range(0, self.vcpu):
ET.SubElement(vcpus, 'vcpu',
attrib={
'id': str(i),
'enabled': 'yes',
'hotpluggable': 'no'})
for i in range(self.vcpu, self.vcpu_max):
ET.SubElement(vcpus, 'vcpu',
attrib={
'id': str(i),
'enabled': 'no',
'hotpluggable': 'yes'})
else:
cpu = ET.SubElement(xml_top, 'cpu')
ET.SubElement(cpu, 'topology',
attrib={
'sockets': str(1),
'cores': str(self.vcpu),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment