无法使用ini插件读取此文件。
$ cat hosts
[webservers]
www[01:50].example.com
表演
- hosts: localhost
tasks:
- debug:
msg: "{{ item }}"
with_ini:
- '.* section=webservers file=hosts re=True'
给
ok: [localhost] => (item=11].example.com) => {
"msg": "11].example.com"
}
是否可以生成这样的主机列表?
[webservers]
www01.example.com
www02.example.com
www03.example.com
www04.example.com
www05.example.com
www06.example.com
问:“是否可以生成类似于……的主机列表?”
答:是的。使用模板。例如
$ cat hosts
[webservers]
www[01:50].example.com
$ cat play.yml
- hosts: localhost
vars:
my_group: webservers
tasks:
- template:
src: hosts-template.j2
dest: /etc/ansible/hosts-webservers
$ cat hosts-template.j2
[{{ my_group }}]
{% for my_host in groups[my_group] %}
{{ my_host }}
{% endfor %}
笔记
hosts
清单文件位于非标准位置(即不在 中/etc/ansible/hosts
),则必须在启动剧本时加载它:ansible-playbook -i /path/to/inventory/hosts play.yml
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句