summaryrefslogtreecommitdiffstats
path: root/cobbler/item_system.py
diff options
context:
space:
mode:
authorMichael DeHaan <mdehaan@redhat.com>2008-05-08 18:20:28 -0400
committerMichael DeHaan <mdehaan@redhat.com>2008-05-08 18:20:28 -0400
commita2800a1cb6dfc7c3b4a0feeacd265c147c977110 (patch)
treedd65095d63229a6058a0df9c6d40b9b5c3b4704a /cobbler/item_system.py
parent6ae4029a0c0021cb9151cb5a22a68c4b72ecf8cc (diff)
downloadthird_party-cobbler-a2800a1cb6dfc7c3b4a0feeacd265c147c977110.tar.gz
third_party-cobbler-a2800a1cb6dfc7c3b4a0feeacd265c147c977110.tar.xz
third_party-cobbler-a2800a1cb6dfc7c3b4a0feeacd265c147c977110.zip
Adding --virt overrides for many more additional fields that were found
in the profiles objects but not in the system objects. This needs testing in both the webui and command line.
Diffstat (limited to 'cobbler/item_system.py')
-rw-r--r--cobbler/item_system.py90
1 files changed, 59 insertions, 31 deletions
diff --git a/cobbler/item_system.py b/cobbler/item_system.py
index 1bcc111..a97cdf6 100644
--- a/cobbler/item_system.py
+++ b/cobbler/item_system.py
@@ -38,9 +38,15 @@ class System(item.Item):
self.netboot_enabled = True
self.depth = 2
self.kickstart = "<<inherit>>" # use value in profile
+ self.server = "<<inherit>>" # "" (or settings)
self.virt_path = "<<inherit>>" # ""
self.virt_type = "<<inherit>>" # ""
- self.server = "<<inherit>>" # "" (or settings)
+ self.virt_cpus = "<<inherit>>" # ""
+ self.virt_file_size = "<<inherit>>" # ""
+ self.virt_ram = "<<inherit>>" # ""
+ self.virt_type = "<<inherit>>" # ""
+ self.virt_path = "<<inherit>>" # ""
+ self.virt_bridge = "<<inherit>>" # ""
def delete_interface(self,name):
"""
@@ -87,11 +93,19 @@ class System(item.Item):
self.ks_meta = self.load_item(seed_data, 'ks_meta', {})
self.depth = self.load_item(seed_data, 'depth', 2)
self.kickstart = self.load_item(seed_data, 'kickstart', '<<inherit>>')
- self.virt_path = self.load_item(seed_data, 'virt_path', '<<inherit>>')
- self.virt_type = self.load_item(seed_data, 'virt_type', '<<inherit>>')
self.netboot_enabled = self.load_item(seed_data, 'netboot_enabled', True)
self.server = self.load_item(seed_data, 'server', '<<inherit>>')
+ # virt specific
+ self.virt_path = self.load_item(seed_data, 'virt_path', '<<inherit>>')
+ self.virt_type = self.load_item(seed_data, 'virt_type', '<<inherit>>')
+ self.virt_ram = self.load_item(seed_data,'virt_ram','<<inherit>>')
+ self.virt_file_size = self.load_item(seed_data,'virt_file_size','<<inherit>>')
+ self.virt_path = self.load_item(seed_data,'virt_path','<<inherit>>')
+ self.virt_type = self.load_item(seed_data,'virt_type','<<inherit>>')
+ self.virt_bridge = self.load_item(seed_data,'virt_bridge','<<inherit>>')
+ self.virt_cpus = self.load_item(seed_data,'virt_cpus','<<inherit>>')
+
# backwards compat, these settings are now part of the interfaces data structure
# and will contain data only in upgrade scenarios.
@@ -276,21 +290,20 @@ class System(item.Item):
return True
raise CX(_("invalid profile name"))
- def set_virt_path(self,path):
- """
- Virtual storage location suggestion, can be overriden by koan.
- """
- self.virt_path = path
- return True
+ def set_virt_cpus(self,num):
+ return utils.set_virt_cpus(self,num)
+
+ def set_virt_file_size(self,num):
+ return utils.set_virt_file_size(self,num)
+
+ def set_virt_ram(self,num):
+ return utils.set_virt_ram(self,num)
def set_virt_type(self,vtype):
- """
- Virtualization preference, can be overridden by koan.
- """
- if vtype.lower() not in [ "qemu", "xenpv", "xenfv", "vmware", "auto" ]:
- raise CX(_("invalid virt type"))
- self.virt_type = vtype
- return True
+ return utils.set_virt_Type(self,vtype)
+
+ def set_virt_path(self,path):
+ return utils.set_virt_path(self,path)
def set_netboot_enabled(self,netboot_enabled):
"""
@@ -347,19 +360,24 @@ class System(item.Item):
def to_datastruct(self):
return {
- 'name' : self.name,
- 'owners' : self.owners,
- 'profile' : self.profile,
- 'kernel_options' : self.kernel_options,
- 'ks_meta' : self.ks_meta,
- 'netboot_enabled' : self.netboot_enabled,
- 'parent' : self.parent,
- 'depth' : self.depth,
- 'kickstart' : self.kickstart,
- 'virt_type' : self.virt_type,
- 'virt_path' : self.virt_path,
- 'interfaces' : self.interfaces,
- 'server' : self.server
+ 'name' : self.name,
+ 'kernel_options' : self.kernel_options,
+ 'depth' : self.depth,
+ 'interfaces' : self.interfaces,
+ 'ks_meta' : self.ks_meta,
+ 'kickstart' : self.kickstart,
+ 'netboot_enabled' : self.netboot_enabled,
+ 'owners' : self.owners,
+ 'parent' : self.parent,
+ 'profile' : self.profile,
+ 'server' : self.server,
+ 'virt_cpus' : self.virt_cpus,
+ 'virt_bridge' : self.virt_bridge,
+ 'virt_file_size' : self.virt_file_size,
+ 'virt_path' : self.virt_path,
+ 'virt_ram' : self.virt_ram,
+ 'virt_type' : self.virt_type
+
}
def printable(self):
@@ -370,8 +388,14 @@ class System(item.Item):
buf = buf + _("netboot enabled? : %s\n") % self.netboot_enabled
buf = buf + _("kickstart : %s\n") % self.kickstart
- buf = buf + _("virt type : %s\n") % self.virt_type
- buf = buf + _("virt path : %s\n") % self.virt_path
+
+ buf = buf + _("virt file size : %s\n") % self.virt_file_size
+ buf = buf + _("virt ram : %s\n") % self.virt_ram
+ buf = buf + _("virt type : %s\n") % self.virt_type
+ buf = buf + _("virt path : %s\n") % self.virt_path
+ buf = buf + _("virt bridge : %s\n") % self.virt_bridge
+ buf = buf + _("virt cpus : %s\n") % self.virt_cpus
+
buf = buf + _("server : %s\n") % self.server
buf = buf + _("owners : %s\n") % self.owners
@@ -419,6 +443,10 @@ class System(item.Item):
'virt-type' : self.set_virt_type,
'modify-interface' : self.modify_interface,
'delete-interface' : self.delete_interface,
+ 'virt-path' : self.set_virt_path,
+ 'virt-type' : self.set_virt_type,
+ 'virt-bridge' : self.set_virt_bridge,
+ 'virt-cpus' : self.set_virt_cpus,
'server' : self.set_server,
'owners' : self.set_owners
}