George
... При этом внутри роли я не хочу писать delegate_to, потому что она не всегда делегируется.
George
Я нашёл это, и мне грустно: https://github.com/ansible/ansible/issues/26336
Vadim
handler'ы запускаются в конце плейбука
Vadim
поэтому никак - для кастомной логики уж лучше import_playbook
Aleksey
самое печальное в этой теме что в ней ни одного комментария от мемберов.
Aleksey
и отсутствие этого довольно сильно портит "reusable roles"
George
Я закончил исследования. Ща допишу статью.
George
https://medium.com/@george.shuklin/include-role-import-role-and-handlers-in-ansible-b32a5386a555
George
Tl; dr;: import_role: All handlers in the same scope, inner handlers always win. (I’ve done one more small research, if there are more that one inner role, handlers from the first inner role win). include_role: Handlers in inner role are invisible for outer role. Outer role handlers supersede inner role’s handlers for inner role tasks.
Egor
Может кто сталкивался, подскажите пожалуйста. Есть Template в ней есть переменная, но эта же переменная должна быть в своих фигурных скобках. Пробовал воспользоватся данной ссылкой: https://github.com/audreyr/cookiecutter/issues/11 Мне необходимо как то заэкранировать фигурные скобки. Пробелы или другие символы немогу использовать так как на выходе должно получится к примеру: {1}
Egor
Если использовать {{{Var}}} то получаю данную ошибку: {"changed": false, "msg": "AnsibleError: template error while templating string: expected token ':', got '}'.
George
просто создай переменную cb: '{{ "{" + "{" }}' в секции var перед template и используй её.
Aleksey
не
George
или просто cb: '{{ "{" }}'
Aleksey
для модля темплйет с недавних пор есть возможность указать альтернативный синтассис
Aleksey
variable_start_string variable_end_string
Aleksey
я в таких случаях меняю на [[ и ]]
Egor
я в таких случаях меняю на [[ и ]]
Добавил строку в начале template: #jinja2:variable_start_string:'[[', variable_end_string:']]' Изменил знаки везде Все заработало как надо, Спасибо огромное.
Aleksey
ага. я тоже умею шаблонизировать джинжей шаблоны для гошного шаблонизатора.
Egor
ага. я тоже умею шаблонизировать джинжей шаблоны для гошного шаблонизатора.
Спасибо за подсказку, я бы не догадался посмотреть туда. Искал все способы экранирования.
GithubReleases
https://github.com/ansible/ansible/releases/v2.5.0rc1 was tagged
simplemice.eth
simplemice.eth
#Book Security Automation with Ansible 2 Использование Ansible 2 для автоматизации сложных задач безопасности, таких как безопасность приложений, сетевая безопасность и анализ вредоносных программ
Womchik
нужно три индуса?
simplemice.eth
что бы было доверие - надо пять индусов
hackru
и хотя бы один белый человек
Nklya
Это ж про безопасники, их чем больше, тем хуже
Vladimir
всем привет. подскажите плз, нужно скачать файлы с инета по исписку, использую with_items, но ругается he task includes an option with an undefined variable. The error was: 'item' is undefined. в чем может быть проблема?
Nazar
таск что ли покажи
Vladimir
- name: asterisk get_url: url: http://downloads.asterisk.org/pub/telephony/asterisk/{{ item }} dest: /usr/src/{{ item }} with_items: - asterisk-13.19.2.tar.gz
Vladimir
ща на пастебин залью чтоб понятней было
Nazar
убери из dest {{ items }}
Vladimir
https://pastebin.com/tD1m72gJ
Nazar
ну и с синтаксисом беда
Vladimir
не помогло. почему беда?
Nazar
перед get_url отступ лишний
Vlad
и with_items уехал вправо
Vladimir
блин, в mc все ровно по оступам. наверное на этом и обманулся
Vladimir
просто с языком не знаком
Vladimir
https://c2n.me/3SaMSpu в sublime открыл. тут надо чтото кудато двигать?
Vladimir
между линиями вертикальными по 2 пробела получается
Nazar
with_items должен быть на одном уровне с get_url
Vladimir
ух, спасибо! теперь пошло
Vladimir
а еще вопрос - как проходить whiptail меню? в установочном скрипте есть такой момент и простой запуск скрипта через shell в ansible подвешивает процесс на ноде я имею ввиду вот такие окна: https://c2n.me/3SaUdDw
Alexander
https://serversforhackers.com/c/installing-mysql-with-debconf
John
как ансиблу сказать python3 -mpy_compile ./file.py ? не пойму, файл в гите, ансибл запускает gitlab-ci в плейбуке shell: python3 -mpy_compile ./file.py
Stepan
intruder если это меню debconf, то debconf-у можно передавать соотв. директивы: https://pastebin.com/UubGExMB
Vladimir
intruder если это меню debconf, то debconf-у можно передавать соотв. директивы: https://pastebin.com/UubGExMB
спасибо, нашел уже решение. это menuconfig при сборке asterisk, но там можно консольно через ключ —enable добавлять аргументы (модули для установки)
Stepan
👍
RE
камрады, как ансиблу в плейбуке указать, чтобы он скопировал содержимое директории из source в нужный destination только при условии, что destination пустой, а если там чтото уже есть - то копировать поверх не надо
Vadim
делай таск с result, там проверка пустой ли destination и потом when?
RE
а как копировать?
Vadim
copy
RE
модуль file вроде не годится.. он только может создать пустую директорию
RE
то есть просто команду ранать
Vadim
просто команду я думаю норм
Aleksey
довольно странно. отец системд в рхеле. ансибл в рхеле. но модуль ансибла для системд ничего не знает про override.conf
Nklya
Какой отец, такой и модуль))
Aleksey
ну драфт то писсал bcoca
Womchik
что странного? как обычно, правая рука не знает, что делает левая
Aleksey
в результате сотни такого вот
Aleksey
https://github.com/Logan2211/ansible-etcd/blob/master/tasks/etcd_init_systemd.yml
Womchik
tuned же вот тоже от рхела?
Aleksey
очень
Womchik
и вот он как бы тоже ансиблом не того
Vadim
правая рука одного человека не знает что делает левая рука десятитысячного
Womchik
и даже не пытается. а ведь она у него в кармане шарится
Vadim
ну мы стараемся override.conf не юзать - проще создать отдельный сервис с кастомизацией, чтобы можно было подтюнить и остальное уже
Vladimir
tuned же вот тоже от рхела?
RHEL - это продукт, Red Hat - это компания
Womchik
буду знать
Aleksey
ибо для сервисов типа pgbouncer тюнить LimitNOFILE= ну очевидно требуется.
Vadim
на самом деле было бы норм реализация в стиле sysctl
Для специфических задач вообще идея хорошая, но так у тебя будет два конфига - из пакета и override.conf. Если такой ситуации можно избежать темплейтингом, то лучше генерить конфиги \ сервисфайл самому
Aleksey
делать это без оверрайда ну низя. тюнить пакет == ну нафиг
Tadeusz
вот бля, нахера systemd срет на limits.conf и впиливает свою поебень в виде LimitNOFILE
Tadeusz
нахрена тогда ваще limits.conf