不重复: 这与访问其他主机的yaml数据不同,如here所述。这是在执行期间设置我自己的变量,并希望以后访问它
我正在使用ansible-playbook
在2个vm池上执行某项任务。
假设我在vms1
池中只有一个主机。
我尝试动态地从该系统获取主机名,并且我希望在同一文件中的另一个hosts
块中重用相同的变量。
我收到的错误是,
失败! => {“msg”:“任务包含一个未定义的选项 变量。 错误是:'myHostname'未定义
我的playbook yml文件看起来有点像这样,
- hosts: vms1
tasks:
- name: Getting hostname
shell: hostname
register: shellOutput
- set_fact:
myHostname: "{{ shellOutput.stdout }}"
- hosts: vms2
tasks:
- name: Pinging
shell: "ping {{ myHostname }} -n 2 >> /tmp/otherHosts.txt"