如何跳过主机存储库并在Ansible中指定主机运行时

时间:2018-01-31 14:43:38

标签: ansible ansible-inventory

我不希望将任何主机文件指定为ansible-playbook命令。

ansible-playbook site.yml  -e "source_host=mymac1 source_file=myfile1"

我的site.yml看起来像这样:

更多site.yml

---

- hosts: "{{ source_host | default('my_pc')}}"
  user: weblogic

但是,我收到以下错误:

  

[警告]:无法匹配提供的主机模式,忽略:全部

     

[警告]:提供的主机列表为空,只有localhost可用

     

PLAYBOOK:site.yml   ************************************************** ************************************************** ************************************************** **************************** 2在site.yml中播放[警告]:无法匹配提供的主机模式,   忽略:mymac1

您能否建议我如何将任何主机传递到我的剧本而无需维护和托管具有所有主机信息的存储库

我在ansible版本2.3.1.0

1 个答案:

答案 0 :(得分:2)

您可以使用内联广告资源:

playbook.yml:

- hosts: all
  tasks:
    - debug: msg=hello

命令:

ansible-playbook -i 'mymac1,' -e source_file=myfile1 playbook.yml

在主机名后注释逗号。

另见:Ansible ad-hoc command with direct host specified - no hosts matched