One of my Ansible roles允许用户针对目标主机执行一组测试,留下最小的影响,删除所有测试痕迹 .

令人惊讶的难以确定的事情之一是运行剧本的主机上的绝对路径 . 解决 copy 的文件似乎非常复杂,Ansible有一个用于尝试解析文件的优先级列表 .

作为测试失败时发出的调试信息的一部分,我想指定本地主机上文件的绝对路径以及远程主机上文件的绝对路径 . 远程主机很容易查询,但我似乎找不到确定源文件来自本地主机的位置的方法 .

这是我的任务:

- copy: src={{ goss_file }} dest=/tmp/goss/ mode=0644

goss_file 由用户指定为角色变量 . 我想要做的是确定在远程主机上运行Ansible的本地计算机上的 goss_file 的完整绝对路径 .

有没有办法做到这一点?它会对我一直在做的调试有很大帮助 .