summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Kupka <dkupka@redhat.com>2016-07-01 07:50:08 +0200
committerJan Cholasta <jcholast@redhat.com>2016-07-01 10:12:34 +0200
commitcea1f33606e85ac83a7bda66fbef318e47412531 (patch)
treef91b3aa5c85f3033d1a4337fc7e1c6b71fb3b3a6
parent4844eaec197690e21c6cf44743df7f456d0e185d (diff)
downloadfreeipa-cea1f33606e85ac83a7bda66fbef318e47412531.tar.gz
freeipa-cea1f33606e85ac83a7bda66fbef318e47412531.tar.xz
freeipa-cea1f33606e85ac83a7bda66fbef318e47412531.zip
schema: Perform the check for schema update when force_schema_check is True
https://fedorahosted.org/freeipa/ticket/4739 Reviewed-By: Jan Cholasta <jcholast@redhat.com>
-rw-r--r--ipaclient/remote_plugins/schema.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/ipaclient/remote_plugins/schema.py b/ipaclient/remote_plugins/schema.py
index 8ebc3a9f8..cd1d5d607 100644
--- a/ipaclient/remote_plugins/schema.py
+++ b/ipaclient/remote_plugins/schema.py
@@ -414,8 +414,13 @@ class Schema(object):
logger.warning('Failed to load server properties: {}'
''.format(e))
- if no_info or exp < time.time() or not Schema._in_cache(fp):
+ force_check = ((not getattr(self, '_schema_checked', False)) and
+ self._api.env.force_schema_check)
+
+ if (force_check or
+ no_info or exp < time.time() or not Schema._in_cache(fp)):
(fp, exp) = self._get_schema()
+ self._schema_checked = True
_ensure_dir_created(SERVERS_DIR)
try:
with self._open_server_info(self._api.env.server, 'w') as sc: