Я использую ansible для управления конфигурацией как для производства, так и для бродячей коробки. У меня есть файл со значениями по умолчанию: group_vars / all.
---
env: prod
wwwuser: www-data
db:
root_pwd: root_pwd
pdo_driver: pdo_mysql
host: localhost
name: test
user: test
pwd: test
charset: utf8
domain: somedomain
projectdir: /var/www/application
webrootdir: "{{ projectdir }}/web"
В host_vars / vagrantbox я хочу иметь что-то вроде:
db:
root_pwd: super_easy_password
Но этот полностью переопределяет db dictrionary, а я хочу переопределить одиночный ключ. Как этого добиться?
ОБНОВЛЕНИЕ 1 Только что проверил с помощью ansible.cfg:
[defaults]
host_key_checking=false
hash_behaviour=merge
группы_вари / все
db:
root_pwd: some_strong_pwd
pdo_driver: pdo_mysql
host: localhost
name: dbname
user: dbuser
pwd: some password
charset: utf8
host_vars / vagrantbox
db:
root_pwd: root
Я получаю следующую ошибку:
One or more undefined variables: 'dict object' has no attribute 'name'
Что я делаю не так?