我有一个剧本,格式如下:
---
- 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'
希望这能帮助