Alexander
А как можно набор строк получить?
Elenhil
- debug: msg="{{item}}" loop: "{{ lookup('file', 'files/branches.txt').splitlines() }}"
Ivan
Народ, помогите пож есть структура в варсах: web: - name: contoso.com whitelist: - 192.168.0.1/32 - 172.16.0.1/32 - 10.0.0.1/32 - name: foo.bar whitelist: - 192.168.0.2/32 - 172.16.0.3/32 - 10.0.0.4/32 как мне сделать лист из всех перечисленных IP? сейчас я могу только вот так: - name: debug debug: msg: "{{ web.0.whitelist }}" получить список для первого значения, а засунуть это в цикл не могу
Grek 🇺🇦
"{{ web | json_query('[*].whitelist[*]') }}" как то так попробуй
George
а.. если не дергать jmespath?
А чем он тебе не нравится
Ivan
А чем он тебе не нравится
нраица! просто его потом в зависимости тащить
George
Можешь через filter/map, наверное, сделать
Grek 🇺🇦
а.. если не дергать jmespath?
если не дергать - то я не победил у себя выборки по всем элементам, где количество элементов не фиксировано
George
Тупо взять все топ-левел ключи, по ним пройтись, взять из них .whitelist, потом смержить
George
Но будет выглядеть страшно
Grek 🇺🇦
dafuk(
но я и не говорю что я сделал все что мог. я просто нашел то решение которое меня устраивало
Sergey
Окромя ванильного Ансибла - ничего не нужно.
Ivan
{{ web | map(attribute='whitelist') | list | flatten }}
святые пирожочки! безмерное спасибо!
Alex
- name: test set_fact: merged_list: "{{ merged_list | default([]) + item.whitelist }}" with_items: "{{ web }}" как вариант, но через map красивее будет
George
{{ web | map(attribute='whitelist') | list | flatten }}
Это примерно, что я и сказал, браво, маэстро
George
set_fact - неявный state. Оно тебе надо?
Отличный вопрос на собес
George
Разница между реджистер и сетфакт
Sergey
святые пирожочки! безмерное спасибо!
Пожалуйста. Ты уж больше не смешивай словари со списками в одном флаконе - они вечно с приседаниями. Только списки. Сложил их тупо через "+" - и отдыхаешь, глядя на то, как другие со своими свалками того и другого корячатся.
Отделение Bereke Bank
George
нука просвяти
Так я и спрашиваю
George
Лол
Отделение Bereke Bank
@tnt4brain
Отделение Bereke Bank
?
разница между регистер и сет факт
Sergey
В доке описана, я прочитал :-)
Sergey
Теперь точно на собесах можно спрашивать.
Ivan
Для вас отдельный котёл, спрашивающих про одну строчку из многостраничной документации
Sergey
Для вас отдельный котёл, спрашивающих про одну строчку из многостраничной документации
Фиг тебе. Если человек dark pattern тащит в плейбуки, то хорошо бы понимать - он вообще понимает, что делает, или просто где-то на SO прочитал.
Ivan
В доке описана, я прочитал :-)
дай ссылку, пожалуйста
Nikita
Всем привет. Можно как-то включить DOTALL для регекспа в replace?
Sergey
дай ссылку, пожалуйста
🤷‍♂️ пожалуйста: https://docs.ansible.com/ansible/latest/user_guide/playbooks_variables.html#registering-variables
Nikita
А то у меня регулярка мультилайн - объявление класса в пхп и нужно его удалить
Alex
Thank you very much for your interest in Ansible. Ansible has migrated much of the content into separate repositories to allow for more rapid, independent development. We are closing this issue/PR because this content has been moved to one or more collection repositories. lib/ansible/modules/system/pam_limits.py -> https://galaxy.ansible.com/community/general я так понимаю что в 2.10+ такого рода ответы будут в 90% тикетов
Nikita
ребят а как из плейбука сходить на дгой хост по ssh и выпронить там команду ?
Wilderone
ну собсна запустить плейбук )
lev
Ну собственно как изменить конфиг
lev
Не show version , а например configure Interface fastethernet 0/1 Ip address 1.1.1.1 x.x.x.x
lev
Как сделать так что бы после того как он провалился в конфигурационный режим ,следующая команда выполнялась именно в нем
Grek 🇺🇦
Не show version , а например configure Interface fastethernet 0/1 Ip address 1.1.1.1 x.x.x.x
Земля вызывает Льва! Прием-прием, Вы чатом не ошиблись?
lev
Я про использование ansible для конфигурироварие сетевого оборудования.
George
ты даже тип оборудования не указал и используемый плагин
George
CISCO и NAPALM, что ли ?
Grek 🇺🇦
задайте вопрос нормально
-
Я про использование ansible для конфигурироварие сетевого оборудования.
там гдето предистория о том че и на чем делашешь была?
lev
Извините ,просто я тоже столкнулся с этой проблемой .
lev
ребят а как из плейбука сходить на дгой хост по ssh и выпронить там команду ?
Grek 🇺🇦
вы задачу то сформулируйте нормально, а то ворвались посреди не пойми чего и у вас такая же проблема...
lev
Есть маршрутизатор cisco , он подключен по ssh к ansible. Т.е со стороны Ansible я могу с помощью playbook смотреть различные параметры маршрутизатора , но конфигурировать (изменять настройки) к сожалению пока не получается
George
ответа на свой вопрос я не получил
lev
lev
Эти команды позволяют только просматиивать информацию ,но не конфигурировать оборудование
George
This module does not support running commands in configuration mode. Please use ios_config to configure IOS devices.
George
В доке на ансибл. Этот абзац понятен ?
George
Просто абзац
lev
Просто спасибо)
Ivan
🤷‍♂️ пожалуйста: https://docs.ansible.com/ansible/latest/user_guide/playbooks_variables.html#registering-variables
я куда-то не туда смотрю? 19 пункт, set_fact / register один и тот же уровень. не дефолтная настройка про кеш у set_fact не в счёт. МОжно тогда цитату, чем конкретно они всё-таки отличаются?
Sergey
Кстати, мне кто-то сегодня донат прислал - благодарю, очень приятно! :-)))
Отделение Bereke Bank
У них же "время жизни" различается.
Одно и то же ведь Registered variables are only valid on the host for the rest of the current playbook run These variables will be available to subsequent plays during an ansible-playbook run
Grek 🇺🇦
так нет же, текущий плейбук - запустился - выполнил что-то и все, а ансибл-плейбук запустит выполнение цепочки плейбуков, ролей етц
Grek 🇺🇦
типа - если у тебя плейбук импортит другой плейбук, то регистеред будет жить в рамках первого плейбука, из второго к ней не обратится, а сет факт будет доступен везде
Отделение Bereke Bank
😒 тогда написали бы play а не playbook
Отделение Bereke Bank
Спасибо за разъяснение 👍
Grek 🇺🇦
Спасибо за разъяснение 👍
лучше проверить) все таки ночь, а ночью может всякое влезть в голову)
Отделение Bereke Bank
Не доводилось ни разу юзать регистрированную переменную между разными плеями А set_fact частенько
Grek 🇺🇦