错误报告
类似报告#9931
Ubuntu 14.04
add_host
任务仅在播放主机列表中的单个主机上执行。
剧本
---
- name: Environment group_vars
hosts: all
gather_facts: no
tasks:
- debug: var=inventory_hostname
- name: Add to group
add_host: name={{inventory_hostname}} groups={{env}}
- name: Groups
hosts: all
gather_facts: no
tasks:
- debug: var=group_names
- debug: var=groups[env]
- fail: msg="done"
库存文件try.yml
10.0.0.70
10.0.1.171
执行
ansible-playbook -i ansible/try ansible/try.yml -e 'env=acceptance'
我希望使用add_host
模块Add to group的任务执行两次:对剧中的每个主机执行一次。 在演出结束时,每个主持人都将在acceptance
。
PLAY [Environment group_vars] *************************************************
TASK: [debug var=inventory_hostname] ******************************************
ok: [10.0.0.70] => {
"var": {
"inventory_hostname": "10.0.0.70"
}
}
ok: [10.0.1.171] => {
"var": {
"inventory_hostname": "10.0.1.171"
}
}
TASK: [Add to group] **********************************************************
ok: [10.0.0.70]
PLAY [Groups] ***************************************************************** [30/1905]
TASK: [debug var=group_names] *************************************************
ok: [10.0.0.70] => {
"var": {
"group_names": [
"acceptance",
"ungrouped"
]
}
}
ok: [10.0.1.171] => {
"var": {
"group_names": [
"ungrouped"
]
}
}
TASK: [debug var=groups[env]] *************************************************
ok: [10.0.0.70] => {
"var": {
"groups[env]": [
"10.0.0.70"
]
}
}
TASK: [debug var=groups[env]] *************************************************
ok: [10.0.0.70] => {
"var": {
"groups[env]": [
"10.0.0.70"
]
}
}
ok: [10.0.1.171] => {
"var": {
"groups[env]": [
"10.0.0.70"
]
}
}
TASK: [fail msg="done"] *******************************************************
failed: [10.0.0.70] => {"failed": true}
msg: done
failed: [10.0.1.171] => {"failed": true}
msg: done
FATAL: all hosts have already failed -- aborting
你好!
非常感谢您提交给 Ansible。 它真诚地对我们意义重大。
我们认为您提交的罚单有点被误解了,因为有一件事与陈述的有点不同。
特别是,这是预期的行为,记录在本页(注释)中:
http://docs.ansible.com/add_host_module.html#id3
将来,这可能是更适合用户列表的主题,如果您需要有关上述内容的更多帮助,也可以在此处发布。
再次感谢您对此以及您对 Ansible 的兴趣!
在任何情况下,您都不会将新主机添加到清单中,您可能希望改用 group_by 指令。
@bcoca ,如果我想为另一个组的每个主机添加新主机到库存怎么办?
最有用的评论
@bcoca ,如果我想为另一个组的每个主机添加新主机到库存怎么办?