Aleksey
зачем оно от него зависит?
Dmitrii
Н увот такая логика в плейбуке
Dmitrii
Хотя, надо подумать - может можно от этого избавиться
Aleksey
ребятки апните таску кто юзает молекулу https://github.com/metacloud/molecule/issues/324
Vlad
Оно то оно. Только у меня имя группы динамическое
в модуле add_host есть параметр groups, в котором можно задавать какие угодно имена групп
Dmitrii
Да, но как их потом подцепить следующей секцией hosts?
Dmitrii
Но на самом деле я решил проблему - оказалось там же можно указывать и доп опции типа ssh key, который мне и нужно было указывать
Dmitrii
Просто у меня ключ налету генерится во время исполнения плейбука, а потом это все сносится.
Dmitrii
Оно так не работает, если группа была динамически сгенерирована как set_fact
Dmitrii
Оно говорит что эта переменная там undefined
Dmitrii
Но в самих тасках - работает, и имеет корректное значение
Vlad
задавай при запуске ansible-playbook -e "group_name=$(date)" :)
Dmitrii
Не совсем понятно зачем такое ограничение
Dmitrii
Странная тема. Агент продалбывается на каком то этапе: https://gist.github.com/anonymous/ead3e980017aec8e16e9c33eb8a396d3 Как видно из опций, там есть форвардинг агента, а ssh-add -L у меня показывает ключ. На удаленном сервере сначала логинился под ubuntu и делал фетч репо- работает, потом делал sudo -i и тоже самое и тоже все работает... 😕
Dmitrii
В sudoers.d добавил Defaults env_keep += "SSH_AUTH_SOCK"
Oleksandr
а можно хендлер ПЕРЕД таской запустить?
Dima
- hosts: webservers pre_tasks: - shell: echo 'hello' http://docs.ansible.com/ansible/playbooks_roles.html
Oleksandr
интересно.. правда, как-то не много в документации. если я правильно понимаю, pre_tasks только с ролями работает?
Dima
а где нужно чтобы работал? если внутри роли что-то выполнять (первое действие) и потом по условию выполнять что-то ещё (второе действие), то тогда в этой роли можно описать первое действие + register result, потом второе действие + when: условие из первого.
Dmitry
Нужно больше программирования на конфигах
Dmitry
Ещё больше
Oleksandr
ну я пытаюсь придумать, как фаерволом в докере рулить. идея такая. есть таск, которы добавляет в конфиг строку через lineinfile, но если на хосте есть докер, то текущий конфиг iptables не всегда соответствует тому что в /etc/sysconfig/iptables. поэтому хочется сделать как-то так: 1. добавляеть правило iptables через lineinfile 2. если этот таск changed то перед ним, сделать iptables save в файл
Oleksandr
вероятно, я как-то неправильно это делаю и можно без "программирования на конфигах" обойтись :)
Dmitry
Да вообще уже написано, как правильно. См @lastsky Отдельный вопрос: чего все так любят эти lineinfile
Dima
а если пользоваться https://docs.ansible.com/ansible/iptables_module.html - то не пропадает.
Oleksandr
Да вообще уже написано, как правильно. См @lastsky Отдельный вопрос: чего все так любят эти lineinfile
хороший вопрос, до модуля iptables всё руки не доходят, кажется через него лугику описать сложнее будет, чем через lineinfile
Dmitry
Сам себя повторю: Отдельный вопрос: чего все так любят эти lineinfile
Dmitry
Суют их в туда, для чего они не предназначены
Oleksandr
уговорили
Oleksandr
попробую iptables_module прикрутить
Dima
Да вообще уже написано, как правильно. См @lastsky Отдельный вопрос: чего все так любят эти lineinfile
«все есть файл, все есть текст» - unix-way всё есть модуль - ansible-way
Dmitry
Тем более для iptables и кроме стандартного модуля уже наколотили всяких ролей, включая даже такие упорото навернутые, как https://github.com/mikegleasonjr/ansible-role-firewall/blob/master/README.md
Dima
в более общем случае речь о понятности пути реализации. когда ты понимаешь, что тебе модуль вставит строчку в текстовый файл - вопросов не возникает. когда ты понимаешь, что модуль тебе волшебным образом поменяет конфиг - возникает вопрос: на каком основании я обязан доверять этому модулю, а если он мне всё сломает?
Aleksey
Сам себя повторю: Отдельный вопрос: чего все так любят эти lineinfile
потому что lineinfile это мостик между kettle обратно в уютный pet
Oleksandr
есть такое
Dmitry
Строчки в файле надо подменять, когда надо подменить строчку в файле (в конфиге монги порт подправить, и то недоказано - правильнее весь конфиг из шаблона залить). Когда iptables штатно настраивается другими средствами (и это не файл вообще) - нужно использовать эти средства
Dima
сурово как-то выглядит
для ufw и firewalld свои модули есть
Dmitry
сурово как-то выглядит
Я специально самый наворот показал
Oleksandr
для ufw и firewalld свои модули есть
наверно рано или поздно действительно придётся на firewalld переходить :)
Dmitry
Ты в принципе вообще неправильно делаешь. Если у тебя конфиг файрвола хранится в файле, значит подсовывай в нужное для iptables-save место готовый файл целиком.
Dima
ну вот да.
Dmitry
Если не в файле, то настраивай штатными средствами iptables -A
Oleksandr
Ты в принципе вообще неправильно делаешь. Если у тебя конфиг файрвола хранится в файле, значит подсовывай в нужное для iptables-save место готовый файл целиком.
так вот в том-то и дело, что он не совсем в файле. основной конфиг в файле + строки, которые докер вкорячивает
Dmitry
А lineinfile - это все хуета и люди ансибла не поняли. У людей в голове все ещё фабрик
Dmitry
Докер вкорячивает, омг Ну так вкорячивай их туда сам, а не докер.
Oleksandr
--iptables=false в докере не всегда вариант, сам понимаешь
Dmitry
Нет, боюсь, что я принципов вашего рукожопия не понимаю совсем.
Oleksandr
докер, который рулит iptables-ом - рукожопие? всякие свормы и сервисы нахуй?
Dmitry
Нет, рукожопие - как вы пытаетесь рулить
Oleksandr
Ты про lineinfile?
Dmitry
Я про вообще уже. Оказалось, lineinfile был цветочками
Dmitry
Отдельно доставляет, что при этом идут рассуждения про "модуль это странно, а вдруг он там сломает что-то" и про идемпотентность. Какая в этой куче из говна и палок идемпотентность?
Oleksandr
не пойму я, что не так? ладно, забей
Denis 災 nobody
http://lazy-tester.blogspot.ru/2013/04/1.html?m=1
Denis 災 nobody
http://lazy-tester.blogspot.ru/2013/04/2.html?m=1
Anonymous
Хм печалька.
Anonymous
Стоял стоял хост на убунту и резко перестал отвечать
Anonymous
через vagrant ssh не отвечает ((
Yar 🇺🇦
причем здесь вагрнат к хосту ?
Yar 🇺🇦
виртуалка загнулась?
Dmitry
14.04 внутри или 16.04 ?
Aleksandr
http://lazy-tester.blogspot.ru/2013/04/1.html?m=1
прочитал все 6 частей. спасибо
Denis 災 nobody
тогда еще http://modernlib.ru/books/gusev_maksim/hroniki_laboratorii/read_1/ http://modernlib.ru/books/artamonov_vadim/hroniki_diversionnogo_podrazdeleniya_1/read_1/
One
Хроники лаборатории переделанные.
One
Еще НашBOFH надо читать
Dmitry
ох нафталином пахнуло
Dmitry
вы еще винни притащите
Dmitry
хотя там уже наверное половину и не понять
Aleksandr
ну негони. 6 часть тестеров недавно выпустилась)
Dmitry
я про http://www.lib.ru/ANEKDOTY/9600.txt
Aleksandr
http://lazy-tester.blogspot.ru/2013/04/1.html?m=1
Aleksandr
я про эти)
One
ох нафталином пахнуло
Ну они-то не читали =) Баян уже прошел реинкарнацию
nvkv
А вы часто "рефакторите" плейбуки и роли?