使用Ansible在目标服务器上创建文件
我正在尝试使用Ansible在目标服务器上创建一个文件 我想从目标服务器上的env变量获取路径 代码是:使用Ansible在目标服务器上创建文件,ansible,Ansible,我正在尝试使用Ansible在目标服务器上创建一个文件 我想从目标服务器上的env变量获取路径 代码是: - name: Create a file win_file: path: ansible_env.CONFIG_HOME\conf\xyz.txt state: file 我收到的错误是: “更改”:错误 “msg”:“不会创建路径ansible_env.CONFIG_HOME\conf\xyz.txt” 这里有两个问题 首先,由于您试图使用环境变量,因此需要大括
- name: Create a file
win_file:
path: ansible_env.CONFIG_HOME\conf\xyz.txt
state: file
我收到的错误是:
“更改”:错误
“msg”:“不会创建路径ansible_env.CONFIG_HOME\conf\xyz.txt”
这里有两个问题 首先,由于您试图使用环境变量,因此需要大括号
{{}}
来插值该值
其次,仔细阅读forwin_文件
,其中讨论了状态
的行为方式:
如果文件
,如果文件不存在,则不会创建该文件
如果触摸,如果路径不存在,将创建一个空文件
考虑到上述情况,以下内容应适用于您:
- name: Create a file
win_file:
path: "{{ ansible_env.CONFIG_HOME }}\conf\xyz.txt"
state: touch