Snippet of the .yml file:
- hosts: arbiters
roles:
- role: roles/arbiters
vars:
machines:
arb-1:
- repset: r-11
mongoversion: 4.2
port: 27017
- repset: r-17
mongoversion: 4.2
port: 27018
I want to append sub-keys with values using Python:
- repset: my_own_value
mongoversion: 40000
port: 1
The following code works partially
data[0]['roles'][0]['vars']['machines']['arb-2'] = dict(mongoversion='40000', port='1', repset='my_own_value')
gives
'arb-2': {'mongoversion': 40000,
'port': '1',
'repset': 'my_own_value'}
This is incorrect, as I want to append, instead of replace.
When I use the +=
operator, instead of =
, it gives:
'arb-2': [{'mongoversion': 4.2,
'port': 27017,
'repset': 'r-10'},
{'mongoversion': 4.2,
'port': 27018,
'repset': 'r-16'},
'mongoversion',
'port',
'repset']
Now, the values are missing. I've followed the answer as described here, and tried to play around with several settings, but I don't seem to succeed.