diff options
author | Brian Coca <brian.coca+git@gmail.com> | 2014-05-28 11:46:06 -0500 |
---|---|---|
committer | James Cammarata <jimi@sngx.net> | 2014-06-09 14:10:44 -0500 |
commit | 4e4ffa669adb3e997fa713e6375b8b179231909e (patch) | |
tree | 56a2ab87f607c0faac4ae6dbadb0084e59f3f5d1 | |
parent | ce80c0b8afc058f63e65d6f2b1c4a0b48bf8500a (diff) | |
download | ansible-4e4ffa669adb3e997fa713e6375b8b179231909e.tar.gz |
Correctly examine path for relative links in file module
Fixes #7515
Fixes #7537
-rw-r--r-- | library/files/file | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/library/files/file b/library/files/file index 1306ef5f0a..d2a20dbb7a 100644 --- a/library/files/file +++ b/library/files/file @@ -182,10 +182,11 @@ def main(): elif state in ['link','hard']: - absrc = src - if not os.path.isabs(absrc): - absrc = os.path.abspath(src) - + if os.path.isdir(path): + relpath = path + else: + relpath = os.path.dirname(path) + absrc = os.path.normpath('%s/%s' % (relpath, os.path.basename(src))) if not os.path.exists(absrc) and not force: module.fail_json(path=path, src=src, msg='src file does not exist, use "force=yes" if you really want to create the link: %s' % absrc) |