Ansible 在同一剧本中的主机之间传递事实

Bug*_*nny 5 ansible ansible-facts

我试图将一个事实从host1传递到host2,但是当ansible到达hosts2时,它返回“未定义的变量”:

- name: some playbook
  gather_facts: false
  hosts: host1
  tasks:
    - set_fact:
        fact1: "foo"

- hosts: host2
  gather_facts: false
  tasks:
    - debug:
        msg: "{{ fact1 }}"
Run Code Online (Sandbox Code Playgroud)

小智 6

set_fact模块设置主机变量,您可以使用hostvars.

- name: some playbook
  gather_facts: no
  hosts: host1
  tasks:

  - set_fact:
      fact1: "foo"

- hosts: host2
  gather_facts: no
  tasks:

  - debug:
      msg: "{{ hostvars['host1']['fact1'] }}"
Run Code Online (Sandbox Code Playgroud)