No Ansible 2.2,
Eu tenho um arquivo de hosts Ansible:
[webserver]
aegir.dev
[hostmaster]
aegir.dev
Eu tenho dois arquivos group_vars/
:
# group_vars/webserver.yml
my_var:
- vagrant
e
# group_vars/hostmaster.yml
my_var:
- vagrant
- aegir
e o manual:
- hosts: webserver
tasks:
- debug: var=my_var
- hosts: hostmaster
tasks:
- debug: var=my_var
Saída:
PLAY [webserver] ***************************************************************
TASK [setup] *******************************************************************
ok: [aegir.dev]
TASK [debug] *******************************************************************
ok: [aegir.dev] => {
"my_var": [
"vagrant",
"aegir"
]
}
PLAY [hostmaster] **************************************************************
TASK [setup] *******************************************************************
ok: [aegir.dev]
TASK [debug] *******************************************************************
ok: [aegir.dev] => {
"my_var": [
"vagrant",
"aegir"
]
}
Por que webserver
e hostmaster
usam as variáveis de hostmaster.yml
?
Provavelmente não estou usando o group_vars
corretamente, mas como posso consertar isso?
EDITAR
O cenário real é que eu tenho a mesma função em dois grupos, um é webserver
que na verdade contém 4 servidores genéricos e o grupo hostmaster
que é um servidor da Web + configuração extra na mesma função (o usuário aegir existe apenas no aegir.dev e não nos outros 3 servidores web)