[注意]:这与访问其他主机的yaml数据不同,如https://docs.microsoft.com/en-us/azure/sql-database/sql-database-develop-error-messages所述。这是在执行期间设置我自己的变量,并希望以后访问它
我正在使用ansible-playbook
在2个vm池上执行某项任务。
假设我在vms1
池中只有一个主机。
我尝试动态地从该系统获取主机名,并且我希望在同一文件中的另一个hosts
块中重用相同的变量。
我收到的错误是,
失败! => {“msg”:“任务包含一个未定义的选项 变量。 错误是:'myHostname'未定义
我的playbook yml文件看起来有点像这样,
- hosts: vms1
tasks:
- name: Getting file list
shell: ls /my/path/
register: shellOutput
- set_fact:
fileList: "{{ shellOutput.stdout }}"
- hosts: vms2
tasks:
- name: Get file list
shell: "echo {{ fileList }} >> /tmp/hostFileList.txt"