summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael DeHaan <mdehaan@redhat.com>2007-11-14 12:14:56 -0500
committerMichael DeHaan <mdehaan@redhat.com>2007-11-14 12:14:56 -0500
commit39ad540c08a2b9eadefa9862b6bab42e085dafbc (patch)
tree43d7eef0bafd98bdc79942dfdded36e81fb070c1
parentd0deea1ae3da2f37814d2ec78fb7c31de6ddbed7 (diff)
downloadthird_party-cobbler-39ad540c08a2b9eadefa9862b6bab42e085dafbc.tar.gz
third_party-cobbler-39ad540c08a2b9eadefa9862b6bab42e085dafbc.tar.xz
third_party-cobbler-39ad540c08a2b9eadefa9862b6bab42e085dafbc.zip
Disable the blender cache as it's running afoul of the sync code, mixing up profiles/systems
data incorrectly when blending objects for cobbler/sync.
-rw-r--r--CHANGELOG4
-rw-r--r--cobbler/action_reposync.py2
-rw-r--r--cobbler/item_repo.py7
-rw-r--r--cobbler/item_system.py13
-rw-r--r--cobbler/utils.py6
-rw-r--r--cobbler/webui/CobblerWeb.py34
-rw-r--r--webui_templates/repo_edit.tmpl2
-rw-r--r--webui_templates/system_edit.tmpl2
8 files changed, 22 insertions, 48 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 2f8533b..16ca825 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -5,7 +5,9 @@ Cobbler CHANGELOG
- Changed permissions of auth.conf
- Fixes for working with rhn_yum_plugin
- still allow repo configuration for distro repos that have just 1 repo (like C5.1)
-- fix baseurls used in repo setup
+- disable CGI weblogging by default (backend logging TBA)
+- fix WebUI handling of keep_updated (repo field) and netboot_enabled (system field)
+- disable the blender_cache as it's running afoul of the sync code
* Wed Nov 07 2007 - 0.6.3
- Be able to define and use Multiple NICs per system
diff --git a/cobbler/action_reposync.py b/cobbler/action_reposync.py
index 74a4d0d..1cbb6e2 100644
--- a/cobbler/action_reposync.py
+++ b/cobbler/action_reposync.py
@@ -217,7 +217,7 @@ class RepoSync:
def create_local_file(self, repo, dest_path, output=True):
"""
Two uses:
- (A) output=True, Create local files that can be used with yum on provisioned clients to make use of thisi mirror.
+ (A) output=True, Create local files that can be used with yum on provisioned clients to make use of this mirror.
(B) output=False, Create a temporary file for yum to feed into yum for mirroring
"""
diff --git a/cobbler/item_repo.py b/cobbler/item_repo.py
index 67ea2e2..0c486b0 100644
--- a/cobbler/item_repo.py
+++ b/cobbler/item_repo.py
@@ -75,11 +75,10 @@ class Repo(item.Item):
"""
if type(keep_updated) == bool:
self.keep_updated = keep_updated
- return True
- if not str(keep_updated).lower() in ["yes","y","yup","yeah","1","true"]:
- self.keep_updated = False
- else:
+ elif str(keep_updated).lower() in ["yes","y","on","1","true"]:
self.keep_updated = True
+ else:
+ self.keep_updated = False
return True
def set_rpm_list(self,rpms):
diff --git a/cobbler/item_system.py b/cobbler/item_system.py
index f2f1d68..4bfd763 100644
--- a/cobbler/item_system.py
+++ b/cobbler/item_system.py
@@ -34,7 +34,7 @@ class System(item.Item):
self.kernel_options = {}
self.ks_meta = {}
self.interfaces = {}
- self.netboot_enabled = 1
+ self.netboot_enabled = True
self.depth = 2
self.kickstart = "<<inherit>>" # use value in profile
self.virt_path = "<<inherit>>" # ""
@@ -87,7 +87,7 @@ class System(item.Item):
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', 1)
+ self.netboot_enabled = self.load_item(seed_data, 'netboot_enabled', True)
self.server = self.load_item(seed_data, 'server', '<<inherit>>')
# backwards compat, these settings are now part of the interfaces data structure
@@ -126,6 +126,9 @@ class System(item.Item):
# explicitly re-call the set_name function to possibily populate MAC/IP.
self.set_name(self.name)
+ # coerce this into a boolean
+ self.set_netboot_enabled(self.netboot_enabled)
+
return self
def get_parent(self):
@@ -291,11 +294,11 @@ class System(item.Item):
Use of this option does not affect the ability to use PXE menus. If an admin has machines
set up to PXE only after local boot fails, this option isn't even relevant.
"""
- if netboot_enabled in [ True, "True", "true", 1, "1", "on", "yes", "y", "ON", "YES", "Y" ]:
+ if str(netboot_enabled).lower() in [ "true", "1", "on", "yes", "y" ]:
# this is a bit lame, though we don't know what the user will enter YAML wise...
- self.netboot_enabled = 1
+ self.netboot_enabled = True
else:
- self.netboot_enabled = 0
+ self.netboot_enabled = False
return True
def is_valid(self):
diff --git a/cobbler/utils.py b/cobbler/utils.py
index ad72feb..f9f73b1 100644
--- a/cobbler/utils.py
+++ b/cobbler/utils.py
@@ -280,8 +280,10 @@ def blender(api_handle,remove_hashes, root_obj, blend_cache=None):
consolidated data.
"""
+ cache_enabled = False
+
blend_key = "%s/%s/%s" % (root_obj.TYPE_NAME, root_obj.name, remove_hashes)
- if blend_cache is not None:
+ if cache_enabled and blend_cache is not None:
if blend_cache.has_key(blend_key):
return blend_cache[blend_key]
@@ -323,7 +325,7 @@ def blender(api_handle,remove_hashes, root_obj, blend_cache=None):
if remove_hashes:
results = flatten(results)
- if blend_cache is not None:
+ if cache_enabled and blend_cache is not None:
blend_cache[blend_key] = results
return results
diff --git a/cobbler/webui/CobblerWeb.py b/cobbler/webui/CobblerWeb.py
index 169cd99..ac3b732 100644
--- a/cobbler/webui/CobblerWeb.py
+++ b/cobbler/webui/CobblerWeb.py
@@ -20,7 +20,7 @@ from cobbler.utils import *
import logging
import sys
-LOGGING_ENABLED = True
+LOGGING_ENABLED = False
if LOGGING_ENABLED:
# set up logging
@@ -113,31 +113,6 @@ class CobblerWeb(object):
tmpl = Template( file=filepath, searchList=[data] )
return str(tmpl)
- def __truth(self,value):
- """
- Convert 0/1, True/False, "true"/"false", etc. to Python booleans.
- """
-
- if value is None:
- return False
-
- if type(value) == type(bool()):
- return value
-
- if type(value) == type(int()):
- if value > 0:
- return True
- else:
- return False
-
- # from item_repo.py
- if not str(value).lower() in ["yes","y","yup","yeah","true"]:
- return False
- else:
- return True
-
- raise Exception("Could not determine truth of value %s" % str(value))
-
def cookies(self):
"""
Returns a Cookie.SimpleCookie object with all of CobblerWeb's cookies.
@@ -262,7 +237,6 @@ class CobblerWeb(object):
'distro': input_distro,
} )
- # FIXME: deletes and renames
def distro_save(self,name=None,oldname=None,new_or_edit=None,editmode='edit',kernel=None,
initrd=None,kopts=None,ksmeta=None,arch=None,breed=None,
delete1=None,delete2=None,**args):
@@ -374,7 +348,6 @@ class CobblerWeb(object):
else:
return self.__render('empty.tmpl',{})
- # FIXME: implement handling of delete1, delete2 + renames
def system_save(self,name=None,oldname=None,editmode="edit",profile=None,
new_or_edit=None,
kopts=None, ksmeta=None, server_override=None, netboot='n',
@@ -469,7 +442,6 @@ class CobblerWeb(object):
self.remote.save_system( system, self.token)
except Exception, e:
- # FIXME: get the exact error message and display to the user.
log_exc()
return self.error_page("Error while saving system: %s" % str(e))
@@ -492,7 +464,6 @@ class CobblerWeb(object):
input_system = None
if name is not None:
input_system = self.remote.get_system(name,True)
- input_system['netboot_enabled'] = self.__truth(input_system['netboot_enabled'])
return self.__render( 'system_edit.tmpl', {
'edit' : True,
@@ -664,7 +635,6 @@ class CobblerWeb(object):
input_repo = None
if name is not None:
input_repo = self.remote.get_repo(name, True)
- input_repo['keep_updated'] = self.__truth(input_repo['keep_updated'])
return self.__render( 'repo_edit.tmpl', {
'repo': input_repo,
@@ -708,8 +678,6 @@ class CobblerWeb(object):
try:
self.remote.modify_repo(repo, 'name', name, self.token)
self.remote.modify_repo(repo, 'mirror', mirror, self.token)
-
- keep_updated = self.__truth( keep_updated )
self.remote.modify_repo(repo, 'keep-updated', keep_updated, self.token)
if rpm_list:
diff --git a/webui_templates/repo_edit.tmpl b/webui_templates/repo_edit.tmpl
index cd236a8..b4ac2f0 100644
--- a/webui_templates/repo_edit.tmpl
+++ b/webui_templates/repo_edit.tmpl
@@ -80,7 +80,7 @@ function disablename(value)
</td>
<td>
<input type="checkbox" name="keep_updated" id="keep_updated"
- #if not $repo or $repo.keep_updated is True
+ #if (not $repo) or $repo.keep_updated
checked="true"
#end if
/>
diff --git a/webui_templates/system_edit.tmpl b/webui_templates/system_edit.tmpl
index 528e03f..4561f13 100644
--- a/webui_templates/system_edit.tmpl
+++ b/webui_templates/system_edit.tmpl
@@ -186,7 +186,7 @@ function page_onload() {
</td>
<td>
<input type="checkbox" name="netboot" id="netboot"
- #if not $system or $system.netboot_enabled is True
+ #if not $system or $system.netboot_enabled
checked="True"
#end if
>