首先要确认模板文件的路径是否正确,确认完路径无误后,可以使用相对路径或者绝对路径来引用模板文件。例如,模板文件template.j2位于roles/test/templates目录下,则可以使用以下代码:
- name: Copy template file
template:
src: roles/test/templates/template.j2
dest: /path/to/destination/file
另外,还可以在ansible.cfg文件中设置默认的模板目录,如下:
[defaults]
...
template_dir = /path/to/templates/dir
这样在playbook中就可以直接使用模板文件的名称来引用,无需再写完整的路径。
同时,还需要注意模板文件的文件名后缀,必须是.j2。如果是其他后缀名,则也会导致模板无法访问。