aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/plugins/module_utils/file.py
diff options
context:
space:
mode:
authorEgor Tensin <egor@tensin.name>2025-11-24 00:47:29 +0100
committerEgor Tensin <egor@tensin.name>2025-11-27 01:31:43 +0100
commitc4b418a791acf23742195709b3be777128c55ce1 (patch)
treee04967a81122048592be935647e63eeb89c0fb79 /plugins/module_utils/file.py
parentfix some ansible-lint warnings (diff)
downloadinfra-ansible-c4b418a791acf23742195709b3be777128c55ce1.tar.gz
infra-ansible-c4b418a791acf23742195709b3be777128c55ce1.zip
plugins: add safe_git
Diffstat (limited to 'plugins/module_utils/file.py')
-rw-r--r--plugins/module_utils/file.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/plugins/module_utils/file.py b/plugins/module_utils/file.py
index 86a4f27..4492f81 100644
--- a/plugins/module_utils/file.py
+++ b/plugins/module_utils/file.py
@@ -4,7 +4,7 @@ from ansible.errors import AnsibleActionFail
from ansible.module_utils.common.text.converters import to_text
-def does_file_exist(action, path, task_vars):
+def _get_stat(action, path, task_vars):
stat_result = action._execute_module(
module_name='ansible.builtin.stat',
module_args=dict(
@@ -17,7 +17,16 @@ def does_file_exist(action, path, task_vars):
)
if stat_result.get('failed'):
raise AnsibleActionFail(f"Couldn't stat file {path}", result=stat_result)
- return stat_result['stat']['exists']
+ return stat_result['stat']
+
+
+def does_file_exist(action, path, task_vars):
+ return _get_stat(action, path, task_vars)['exists']
+
+
+def does_dir_exist(action, path, task_vars):
+ stat = _get_stat(action, path, task_vars)
+ return stat['exists'] and stat.get('isdir', False)
def read_file(action, path, task_vars, default=False):