У меня есть две роли, одна из которых имеет файл group_vars
, который является сводчатым, а другой - нет. Я хотел бы выполнить роль, которая не требует каких-либо сводчатый информации, но анзибль мне подсказывает пароля хранилища в любом случае:Как я могу игнорировать ошибки при расшифровке сводчатого файла?
$ 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
Я подозреваю, что Ansible необходимо прочитать все в 'group_vars', чтобы убедиться, что он ничего не пропустил. Если это так, то почему бы не переместить ваши зашифрованные проигрыватели в отдельный «безопасный» каталог _? – Mxx
@Mxx «чтобы убедиться, что он ничего не пропустит» - я бы надеялся, что нормальное неопределенное предупреждение переменной заступится - если мы не сможем расшифровать, то эти переменные будут недоступны. – Shepmaster
@Mxx «переместите ваши зашифрованные книги» - я не уверен, что я следую. Это файлы 'group_vars', которые сводчатые, и они должны быть в структуре относительно файла hosts, как я понимаю. Я бы не захотел дублировать мой файл hosts для каждого сводчатого файла с другим паролем. – Shepmaster