backport of file cache perms fix

see #13093
This commit is contained in:
Brian Coca 2017-03-08 10:28:23 -05:00
parent dae298e429
commit ac4ce95810

View file

@ -63,8 +63,11 @@ class CacheModule(BaseCacheModule):
try:
os.makedirs(self._cache_dir)
except (OSError,IOError) as e:
display.warning("error in 'jsonfile' cache plugin while trying to create cache dir %s : %s" % (self._cache_dir, to_bytes(e)))
return None
raise AnsibleError("error in 'jsonfile' cache plugin while trying to create cache dir %s : %s" % (self._cache_dir, to_bytes(e)))
else:
for x in (os.R_OK, os.W_OK, os.X_OK):
if not os.access(self._cache_dir, x):
raise AnsibleError("error in '%s' cache, configured path (%s) does not have necessary permissions (rwx), disabling plugin" % (self.plugin_name, self._cache_dir))
def get(self, key):
""" This checks the in memory cache first as the fact was not expired at 'gather time'
@ -124,7 +127,7 @@ class CacheModule(BaseCacheModule):
return False
else:
display.warning("error in 'jsonfile' cache plugin while trying to stat %s : %s" % (cachefile, to_bytes(e)))
pass
return False
if time.time() - st.st_mtime <= self._timeout:
return False