diff options
author | Michael DeHaan <mdehaan@redhat.com> | 2007-11-14 12:14:56 -0500 |
---|---|---|
committer | Michael DeHaan <mdehaan@redhat.com> | 2007-11-14 12:14:56 -0500 |
commit | 39ad540c08a2b9eadefa9862b6bab42e085dafbc (patch) | |
tree | 43d7eef0bafd98bdc79942dfdded36e81fb070c1 /cobbler | |
parent | d0deea1ae3da2f37814d2ec78fb7c31de6ddbed7 (diff) | |
download | third_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.
Diffstat (limited to 'cobbler')
-rw-r--r-- | cobbler/action_reposync.py | 2 | ||||
-rw-r--r-- | cobbler/item_repo.py | 7 | ||||
-rw-r--r-- | cobbler/item_system.py | 13 | ||||
-rw-r--r-- | cobbler/utils.py | 6 | ||||
-rw-r--r-- | cobbler/webui/CobblerWeb.py | 34 |
5 files changed, 17 insertions, 45 deletions
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: |