可解释变量可以用于在剧本中声明主机吗



我有一个剧本,格式如下:

---
- hosts: myIP
tasks:
- name: Install a yum package in Ansible example
yum:
name: ThePackageIWantToInstall
state: present

其中CCD_ 1和CCD_。

当作业模板运行时,我希望额外变量弹出窗口中的用户能够使用:

myIP = 192.168.1.1
ThePackageIWantToInstall = nano

由于文档中没有提供通过作业模板提供变量的示例,这可能吗?

是。

- name: Do The Thing
hosts: "{{ foo }}"
roles:
- "{{ role }}"

需要胡子和引号。


从弹出窗口运行

(我不使用这个,但它被建议作为编辑,谢谢…(

foo:值

我已经用add_hosts实现了类似的功能。我不是在安装软件包,而是用命令行传递的名称创建文件。任意数量的主机(可以从命令行传递以逗号分隔的主机(。

# cat addhost2.yml
- hosts: localhost
gather_facts: no
tasks:
- add_host:
name: "{{ item }}"
groups: hosts_from_commandline
with_items: "{{ new_hosts_passed.split(',') }}"

- hosts: hosts_from_commandline
tasks:
- name: Ansible create file with name passed from commandline
file:
path: "/tmp/{{ filename_from_commandline }}"
state: touch
# ansible-playbook -i hosts addhost2.yml --extra-vars='new_hosts_passed=192.168.3.104,192.168.3.113 filename_from_commandline=lathamdkv'

希望这能帮助

相关内容

  • 没有找到相关文章

最新更新