mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-04-14 04:41:27 +00:00
Check for link in path in utils.path_dwim_relative()
This allows an included path to be relative to a directory, if the basedir of the original path is a symlink. In that case, the path is normalized and the file is searched for in the normalized path. Fixes #3312
This commit is contained in:
@@ -254,7 +254,11 @@ def path_dwim_relative(original, dirname, source, playbook_base, check=True):
|
||||
# (used by roles code)
|
||||
|
||||
basedir = os.path.dirname(original)
|
||||
template2 = os.path.join(basedir, '..', dirname, source)
|
||||
if os.path.islink(basedir):
|
||||
basedir = unfrackpath(basedir)
|
||||
template2 = os.path.join(basedir, dirname, source)
|
||||
else:
|
||||
template2 = os.path.join(basedir, '..', dirname, source)
|
||||
source2 = path_dwim(basedir, template2)
|
||||
if os.path.exists(source2):
|
||||
return source2
|
||||
|
||||
Reference in New Issue
Block a user