Aleksandr
Ansible-lint вроде в brew нет
эту хурму из гита лучше собрать. после сегодняшнего апдейта я теперь буду думать прежде чем что-то из пипа ставить
Александр
А чего с ним не так?
Aleksandr
ансибль оттуда сегодня прилетел веселый
Александр
Я пропип
Александр
М?
Александр
Сломаль?
Aleksandr
ога
Aleksandr
удалил - поставил из брю - все работает
Александр
))
Alesha
чейта вас с утра и похоливарить поперло
Anonymous
С утра ахах
Alesha
хз, у меня выходной и у меня утро)
Anonymous
Да они вчера ночью холиварили
Alesha
аа
Alesha
ок)
Aleksandr
😂😂😂😂
Max
Коллеги
Max
поясните вот за эту йобу
Max
when: bar is not defined
Max
The error was: error while evaluating conditional (var): 'var' is undefined\n\nThe error appears to have been in
Max
а, кажись понял
Maxim
а почему ансибл берет хендлер от другой роли? Например у меня есть роль для php-fpm. Есть роль для деплоя сайта, там лежит отдельный хендлер для рестарта php-fpm. При выполнении общего плейбука (по тегу задействуется только роль деплоя) он пытается дернуть хендлер от php-fpm
Maxim
а еще в 2.1.2.0 у меня начал писать такой вывод: $ ansible-playbook -i inventory/testing site.yaml --tags=feedback --check --diff statically included: /usr/src/deploy/roles/common/tasks/configure-common.yaml statically included: /usr/src/deploy/roles/common/tasks/configure-users.yaml так по всем плейбукам, не подскажите как поправить такое поведение?
Max
у самого такая же штука, но не вижу проблем с раскаткой
Max
алсо у меня починились retry
Maxim
я так понимаю, что он просто оповещает о том, что плейбук инклюдит что-то
Да, проблем нет. Просто лишний вывод. Судя по коду он никак не отключается
Anonymous
деньдобрый
Anonymous
fatal: [172.16.0.136]: FAILED! => {"changed": false, "failed": true, "msg": "src and content are mutually exclusive"} to retry, use: —limit @install_mysql_inl.retry
Anonymous
- copy: src="zabbix_scripts" dest="/var/lib/zabbix/percona/scripts" owner="zabbix" mode="754" content="yes" sudo: yes
Anonymous
вот на эту строку ргаются
Anonymous
не могу понять, что ему надо
Magistr
контент убери
Anonymous
тогда немного не тот эффект получается
Anonymous
мне папка туда копируется
Anonymous
а надо файлы в ней
Dmitrii
content это не булево поле
Dmitrii
А то, что "поместить" внутрь фала. Написано же что опции взаимоисключающие друг друга
Max
И sudo юзать не кошерно
Anonymous
да, поменяю
Maxim
апну тему, никто не натолкнет на путь истинный?
Maxim
а почему ансибл берет хендлер от другой роли? Например у меня есть роль для php-fpm. Есть роль для деплоя сайта, там лежит отдельный хендлер для рестарта php-fpm. При выполнении общего плейбука (по тегу задействуется только роль деплоя) он пытается дернуть хендлер от php-fpm
Lev
прям в логах видны пути к другой роли?
Navern
да для хэндлеров в ансибле это норм=)
Navern
правда во второй версии должны быть динамические инклуды и это странно
Lev
У тебя роль deploy/tasks/main.yml вызывает хэндлер, но инклудится не deploy/handlers/main.yml, а php-fpm/handlers/main.yml?) я такого не встречал
Lev
может у тебя в зависимостях есть связи
Lev
или хэндлеры оно собирает независимо от тегов и у тебя пересекаются имена
Maxim
Не, там явно другой хендлер тянет. У него немного другие переменные и поэтому он падает
Anonymous
Задам опять глупый вопрос
Anonymous
А можно по итогам выполнения плейбука генерить плейбук в котором собраны все шаги?
Anonymous
Ну или вообще бинарь или что-то в этом роде
Anonymous
Например у меня есть ансибл, но надо выполнить плейбук на удаленной машине
Anonymous
Недоступной
Lev
@mbaran0v ну так проверь, что я перечислил, вроде, несложно. А так ты пока повторяешь, что вызывается другой хэндлер без логов и чего бы то ни было.
Maxim
хендлеры называются одинаково, в обоих ролях
Maxim
RUNNING HANDLER [nginx : reload nginx] ***************************************** changed: [192.168.20.189] RUNNING HANDLER [php-fpm : restart php-fpm] ************************************ fatal: [192.168.20.189]: FAILED! => {"failed": true, "msg": "the field 'args' has an invalid value, which appears to include a variable that is undefined. The error was: 'php_fpm_daemon' is undefined\n\nThe error appears to have been in '/home/bmy/Projects/20160805_hosting/config/roles/php-fpm/handlers/main.yaml': line 3, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: restart php-fpm\n ^ here\n"}
Maxim
кажется я догадался почему так - в обоих ролях используется notify: restart php-fpm. Так как ансибл запускает хендлеры в конце выполнения всего плейбука, то поэтому и дергает первый попавшийся хендлер с таким названием
Lev
Это первое, что приходит в голову, странно, что за два дня ты не решился проверить)
Lev
то есть хэндлеры собираются вне зависимости от того, нужно их запускать или нет?
Lev
@mbaran0v
Maxim
Это первое, что приходит в голову, странно, что за два дня ты не решился проверить)
сразу в голову не пришло, смутили строчки в конфиге https://github.com/ansible/ansible/blob/v2.1.2.0-1/examples/ansible.cfg#L64
Maxim
то есть хэндлеры собираются вне зависимости от того, нужно их запускать или нет?
получается что так, видимо он берет первый совпадающий хендлер
Lev
надо вообще выкасить) какой-то артефакт для любителей milf
Navern
ансибл с хэндлерами вообще мутит лютую жесть
Navern
мы хэндлеры в отдельную роль вынесли, чтобы так удобнее было это делать
Anonymous
расскажите мне, вообще они зачем
Anonymous
я так и не понял?
Anonymous
рестарт сервиса же можно в лпейбуке делать
Navern
ну чтобы не делать 5 раз рестарт сервиса
Navern
на длинном выполнении
Navern
с каждого экшна, который требует рестарт
Navern
а делать один раз в конце
Max
Хендлер, это йоба, которая выполняется после всех тасков, в случае, если таск, к которому она привязана прошёл со статусом changed
Max
Далее полёт фантазии
Max
Рестарт сервиса самый частый вариант, именно так