Ansible
如何在逗號分隔列表中加入庫存項目?
我有 ansbile inv
# cat inv [all] vm1 vm2
我想使用 Jinja 模板將它們提取到逗號分隔的列表中
所以我添加了神社模板
# cat comb_list.j2 {{ groups['all'] | map('extract', hostvars, ['item']) | join(',') }}"
但我猜項目不是主機變數,所以會拋出錯誤
我希望最終文件看起來像這樣
# cat comb_list vm1,vm2
模板
shell> cat comb_list.j2 {{ groups.all|join(',') }}
和劇本
shell> cat playbook.yml - hosts: all gather_facts: false tasks: - template: src: comb_list.j2 dest: comb_list delegate_to: localhost run_once: true
給
shell> ansible-playbook -i inv playbook.yml ... shell> cat comb_list vm1,vm2