Oleg
shell - проверка доступных апдейтов | grep нужный пакет
Oleg
дальше проверить вхождение в подстроку - если есть, то писать сообщение
Yuri
Так в документации официальной же есть...
Yuri
- shell: echo "motd contains the word hi" when: motd_contents.stdout.find('hi') != -1
Oleg
О! Точно! Сенкс
Oleg
Несколько условия when как правильно запи сать?
Oleg
when: - first - second
Oleg
?
Elinka22
when: first is defined and second is undefined
Elinka22
Скобки по вкусу
Vegas
Всем привет, кто-то тестил модуль ios_config на cisco?
Yuri
Или or и and
Aleksey
есть какая то специальная причина почему нельзя эти вопросы задавть в гугл ?
Aleksey
верхние две ссылки гугла про ансибл почти всегда содердат праивльный ответ
Aleksey
@cadmi а ты уже запилил rude_ansible ?
Dmitry
@cadmi а ты уже запилил rude_ansible ?
нет, тут же нормальные админы, не такие истерички, как в питоне :)
Yuri
Есть линк на это? не найду что-то
http://docs.ansible.com/ansible/playbooks_conditionals.html
Anonymous
Привет. А кто-нибудь можно подсказать, вот есть у меня два списка: один [{'path':'/tmp/'}, {'path:'/tmp1/'}, {'path':'/tmp3/'}], второй ['item10', 'item20', 'item30']. Нужно создать диры виды '/tmp/item10', '/tmp1/item20', '/tmp3/item30'. Вот как с помощью цикла это задать? Как луп в таком случае задавать?
Anonymous
То есть как бы первый элемент каждого списка с первым конкатенировать, второй со вторым и т.д.
Alf 🙀
У тебя первое список дикшинари. Выглядит так
Alf 🙀
В каждом дикшинари один и тот же ключ
Alf 🙀
Почему не иметь один ключ со списком значений?
Anonymous
потому что модуль find возвращает в таком виде: [{'path': '/var/tmp/test1', 'mode': '0644', '...': '...', 'checksum': '16fac7be61a6e4591a33ef4b729c5c3302307523'},
Anonymous
то есть мне нужно с помощью find найти все диры. И в каждой дире создать по одной дире из другого списка.
Anonymous
Можно как-нибудь так придумать?
Alf 🙀
Можно. Проходишь по массиву для каждого дикта берешь вэлью по ключу добавляешь айтем из второго массива и пишешь во второй дикт. Но если я не ошибаюсь то в ансибл дикты все еще не ордеред.
Alf 🙀
Так что получится может черте что
Anonymous
а проще никак не сделать?
maniac
извините за оффтоп, но дайте ссылку на тот проект который чистяков начал пилить?
Aleksey
with_magic: - dict1 - dict2
Aleksey
https://github.com/stonicio/stonic
Anonymous
with_magic: - dict1 - dict2
походу у меня версия ansible старая. Нет такого лупа. Но спасибо!
maniac
там пусто...
а, ну тогда норм. я просто хотел посмотреть, может хоть код появился.
Aleksey
походу у меня версия ansible старая. Нет такого лупа. Но спасибо!
тогда в начеле плейбука надо добавить future_features: now
Aleksey
велкам.
Anonymous
Max
Нет)
cyber
крч у меня кент в цирке работал, жонглировал там, так вот он там научился жонглировать костылями один костыль однажды упал ему на голову, его настигло откровение свыше, открылся новый дар в общем из цирка он уволился, щас на конфигах прогает
Danila
Костылями?
cyber
Костылями?
ну да, они шарами, булавами жонглируют
cyber
а он костыли юзал, потому-что ими сложнее
J
всем привет
J
подскажите по ансиблу
J
ansible-playbook web.yml -u username -K -i production when ansible tried to create a user in postgres it fails FAILED! => { "changed": false, "failed": true, "invocation": { "module_name": "postgresql_user" }, "module_stderr": "su: must be run from a terminal\n", "module_stdout": "", "msg": "MODULE FAILURE" }
J
че ему надо?
Albert
Версия?
J
2 0 0
Alex
Погляди, Шелл у юзверя есть?
J
jr
J
ok
Vegas
Коллеги, тоже вопрос на 2.3.0 (и на 2.2.0) тоже при попытке юзать ios_config или ios_command зачем-то хочет открыть sftp сессию (если юзать paramiko) или scp (если openssh) - не сталкивались с таким? зачем это и как решить?
Vegas
Если делать paramiko - failed to open a SFTP connection (SSH session not active), если open-ssh failed to transfer file to \"` echo ~/.ansible/tmp/ansible-tmp-1482670498.86-149040577256692 `\" ) && sleep 0'\"/ios_command.py:\n\nlost connection\n
Magistr
а как ты хочешь чтобы ансибл законектился туда ?
Vegas
Ssh
Vegas
Зачем ему еще что-то?
Vegas
Ну и вообще странно, что paramiko в сетевом модуле для cisco пытается открыть sftp, при том что он заведомо в ios не поддерживается
Vegas
Это есть, и когда openssh юзается - он реально пытается по scp зайти
Vegas
С таким результатом: R2# *Dec 25 13:54:11.315: SCP: [22 -> 10.255.1.1:55718] send <OK> *Dec 25 13:54:11.316: SCP: [22 <- 10.255.1.1:55718] recv C0600 94210 tmpivudqE *Dec 25 13:54:11.316: SCP: [22 -> 10.255.1.1:55718] send <OK> *Dec 25 13:54:11.317: SCP: [22 -> 10.255.1.1:55718] send Not able to open file *Dec 25 13:54:11.317: SCP: [22 -> 10.255.1.1:55718] send Write failed
Vegas
и складывается ощущение, что он пытается линуксовую команду в cisco плюнуть, а она ее, естественно, не понимает
Vegas
Вот поэтому: debug1: Sending command: scp -v -t '\"` echo ~/.ansible/tmp/ansible-tmp-1482663078.93-159510420409123 `\" ) && sleep 0'\"'\"'\"/ios_config.py'
Alf 🙀
https://duckduckgo.com/?q=cisco%20ios%20scp
Alf 🙀
Настрой свою циску правильно
Alf 🙀
Как еще ансибл свое авно передавать то будет иначе то никак
Alf 🙀
Нужен ссх и сцп бай дефолт
Vegas
! AAA authentication and authorization must be configured properly in order for SCP to work. aaa new-model aaa authentication login default local aaa authorization exec default local username user1 privilege 15 password 0 lab ! SSH must be configured and functioning properly. ip scp server enable Это есть
Vegas
без aaa аналогично
Sergey
Привет всем! А можете подсказать, connection: local за что отвечает?
Tim
Привет всем! А можете подсказать, connection: local за что отвечает?
Тут не никого) ушли провожать старый год🍻
Sergey
спасибо) Уже нашел описание, просто все время смущает, что при конфигурировании сетевых всяких устройств всегда его ставят. Правильно ли я понимаю, что если его не ставить, то плейбук улетает на конечную станцию и там локально его питон выполняет? А если ставить connection:local, то он выполнится уже на самой инициирующей машине?
Sergey
типа как -m raw
Tim
Не смущайся, пробуй)