Комментарии 8
спасибо
Статья очень во время. Я понимаю, что это не типично работать из Windows с такими инструментами (сам так делаю). В качестве приемлимой альтернативы остановился на использовании Ubuntu on Windows. И хотя Docker полноценно не может работать в WSL, он отлично подключается к Docker on Windows (нужно только разрешить TCP соединения на 127.0.0.1 в настройках).
Полезно и однозначно в планах на внедрение.
Но в районе «превосходная система» меня несколько покорёжило.
Но в районе «превосходная система» меня несколько покорёжило.
Ну дело вкуса, мне Ansible нравится)
Как вы выживаете в условиях текущего поведения include_role и глобальных переменных?
У нас пока нигде не возникало нужды использовать include_role. Мы просто имеем много ролей, а плейбуки являются комбинацией ролей. В каком случае include_role может быть необходим?
Касательно переменных — Вы имеете в виду, что в момент выполнения трудно понять, какие значения будут у переменных? Ну да, есть такое, обратная сторона гибкости. Возможно, имело смысл реализовать параметры ролей с дефолтными значениями. С другой стороны, иметь переменные на разных уровнях (групп хостов, хостов, плейбуков) довольно удобно.
Касательно переменных — Вы имеете в виду, что в момент выполнения трудно понять, какие значения будут у переменных? Ну да, есть такое, обратная сторона гибкости. Возможно, имело смысл реализовать параметры ролей с дефолтными значениями. С другой стороны, иметь переменные на разных уровнях (групп хостов, хостов, плейбуков) довольно удобно.
Задумка include_role была проста: переиспользование кода. Например, logrotate используется большим числом приложений, и конфигурирование logrotate логично делать через include_role (так же как и, например, nginx для приложений).
К сожалению, переиспользование кода натыкается на утверждение разработчиков, что ансибл — не язык программирования. Что вызывает редкостную боль в связи с тем, что все известные средства контроля сложности подразумевают подход к «этому» как к коду.
К сожалению, переиспользование кода натыкается на утверждение разработчиков, что ансибл — не язык программирования. Что вызывает редкостную боль в связи с тем, что все известные средства контроля сложности подразумевают подход к «этому» как к коду.
Но в районе «превосходная система» меня несколько покорёжило.
А есть что-то лучше?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Тестирование и непрерывная интеграция для Ansible-ролей при помощи Molecule и Jenkins