Сообщение об ошибке
Аналогичен отчету №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
, Добавить в группу , будет выполняться дважды: один раз для каждого хоста в игре. В конце игры каждый хост будет в группе 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 , а что, если я хочу добавить новый хост в инвентарь для каждого хоста из другой группы?