У меня есть словарь k: v имени хоста: IP, который я хочу использовать при поиске в другом словаре, чтобы заменить записи, соответствующие ключу из 1-го словаря, и заменить его соответствующим значением во 2-м словаре;
1-й :
"nb_console_ip": {
"office-con01": "10.20.30.100",
2nd:
"nb_console_port": [
{
"console": "office-con01",
"hostname": "office-core01",
"port": "con1"
},
{
"console": "office-con01",
"hostname": "office-core02",
"port": "con2"
},
{
"console": "office-con01",
"hostname": "office-fw01",
"port": "con5"
},
{
"console": "office-con01",
"hostname": "office-fw02",
"port": "con6"
},
{
"console": "office-con01",
"hostname": "office-vpn01",
"port": "con3"
},
{
"console": "office-con01",
"hostname": "office-vpn02",
"port": "con4"
}
]
По сути, я пытаюсь установить set_fact для второго dict с поиском и заменой office-con01
на 10.20.30.100
, но для списка из 30+ хостов , Поэтому у меня есть шаблон jinja, который будет использовать 3 значения console_ip, hostname & port. Я подумал, может быть, внутри есть более подходящие фильтры для поиска, поиска, замены и т. Д. c. Оба набора данных являются результатами json_query по возвращении из вызова API.