diff options
author | David Kupka <dkupka@redhat.com> | 2016-07-01 07:50:08 +0200 |
---|---|---|
committer | Jan Cholasta <jcholast@redhat.com> | 2016-07-01 10:12:34 +0200 |
commit | cea1f33606e85ac83a7bda66fbef318e47412531 (patch) | |
tree | f91b3aa5c85f3033d1a4337fc7e1c6b71fb3b3a6 | |
parent | 4844eaec197690e21c6cf44743df7f456d0e185d (diff) | |
download | freeipa-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.py | 7 |
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: |