У меня есть две роли, одна из которых имеет файл group_vars
в хранилище, а другая — нет. Я хотел бы запустить роль, которая не требует никакой информации о хранилище, но ansible все равно запрашивает пароль хранилища:
$ tree
├── deploy-home-secure.yml
├── deploy-home.yml
├── group_vars
│ ├── home
│ │ └── unvaulted
│ └── home-secure
│ ├── unvaulted
│ └── vaulted
├── hosts
└── roles
├── home
│ └── tasks
│ └── main.yaml
└── home-secure
└── tasks
└── main.yaml
$ ansible-playbook --version
ansible-playbook 1.8.2
configured module search path = None
$ ansible-playbook -i hosts deploy-home.yml
ERROR: A vault password must be specified to decrypt vaulttest/group_vars/home-secure/vaulted
$ ansible-playbook --vault-password-file=/dev/null -i hosts deploy-home.yml
ERROR: Decryption failed
group_vars
, чтобы ничего не пропустить. Если это так, то почему бы не переместить зашифрованные книги в отдельный каталог secure? - person Mxx   schedule 20.12.2014group_vars
, которые хранятся в хранилище, и они должны быть в структуре относительно файлаhosts
, насколько я понимаю. Я бы не хотел дублировать файл hosts для каждого файла в хранилище с другим паролем. - person Shepmaster   schedule 20.12.2014group_vars/home_secure/vaulted
— это файл, который был помещен в хранилище. Я понимаю, что групповые переменные обычно размещаются рядом с вашим файлом инвентаря. Я ожидаю, что потребуется пароль для запуска ролиhome_secure
, но не для ролиhome
. Я не понимаю, как перемещение моего playbook (deploy-home.yml
) может привести к тому, что Ansible не загрузит файлgroup_vars
из хранилища. - person Shepmaster   schedule 20.12.2014