Отделение Bereke Bank
наоборот хорошо
Ааа. Ато я прочитал как будто за это надо бить по рукам
George
George
... У меня рядом люди на chef'е пишут, и я им завидую иногда страшной завистью.
George
Я склоняюсь к мнению, что боль ОПС-человека является величиной константной во времени. Это нужно принять
George
Только представьте себе - у них в шаблонах перменные не глобальные, а явно перечисляются в вызове шаблонизатора.
Антон
George
И понять, что нужно решать проблему минимально сложными способами. И иногда переобуваться в прыжке - переходить с технологии на технологмю
George
И есть секции, где можно чуть-чуть попрограммировать.
George
George
Sergey
В этом чате, по крайней мере. Если очень нравится другой инструмент - берёшь его и пользуешься, и спрашиваешь про него в другом чате.
George
Я знаю, что не ок, ибо у них там своих тараканов килограммы.
George
George
Чтобы описать все используемые перменные в шаблоне в template. Есть предположение, что так можно уменьшить coupling между компонентами.
George
... но это предположение. В ansible невозможно уменьшить couping, можно только увеличить.
George
Вот эту самую штуку: https://en.wikipedia.org/wiki/Coupling_(computer_programming)
George
kevit
так не передавай переменные в template
George
George
George
Распиливание на независимые плейбуки работает только если между ними нет связи. Если нужно иметь связи между ними, но чуть-чуть - вот тут вот ой.
George
Здесь речь про инкапсуляцию и немного про безопасность. А ещё про сайд эффекты
kevit
ну что я понял так то что в очередной раз наступили на джинжу
George
Вообще похоже, что сделать новый template2 модуль, который будет делать то, что нужно @amarao не очень сложно
George
@amarao Вива 404!!
kevit
просто почему-то ты смотришь на ансибл как на язык программирования. а по сути это m4
George
Ага. Ненадлежащий инструмент для решения задач. А хочется надлежащий.
kevit
другой планеты у нас нет)
George
Варианты? Давайте поможем коллеге )
George
Модули писать не поможет, т.к. их версионировать надо
George
А в парадигме ансибла это невозможно
George
С модулями всё хуже - когда я последний раз писал (~1.7) то у ансибла не было никакого механизма для тестирования, кроме интеграционного.
George
George
Ничего не изменилось
Alibek
Здоровья народ!
Было
- name: apt add repository debian archive backports
when: ansible_os_family == 'Debian' and ansible_distribution_version | version_compare('9.0', '<')
В версии 2.8.3 приходится делать:
- name: apt add repository debian archive backports
when: ansible_os_family == 'Debian' and ansible_distribution_version | version_compare('9', '<')
За что?
Anonymous
Anonymous
https://github.com/ansible/ansible/tree/devel/test/units/modules
checkdiff
Никто тут не писал ансимбловый модуль для модификации TXT записей у regru?
Anonymous
George
За юнит-тесты спасибо. С ними уже можно более-менее разрабатывать .
Anonymous
Timur
Sergey
^^^ +100500
Timur
Alex
Sergey
Anonymous
Anonymous
работает?
Sergey
Anonymous
скорей всего после when еще что-то. when не обязательно должен быть последним в таске
Anonymous
Можно еще так when: ansible_os_family == 'Debian' and (ansible_distribution_version is version('9.0', '<'))
Anonymous
хотя что version_compare, что version... исполняется один и тот же код
Anonymous
который не менялся с 2016 года 👀
George
George
Уверен, что Тимур знает, что программы можно в виде блок-схем рисовать в визуальных редакторах. Это вроде в пятом классе школы делают. А что? Декларативненько
George
Мне кажется, что этот термин девальвировался и не может быть рекомендован к использованию
Timur
Anonymous
оба примера выше у меня работают на ansible-playbook 2.8.2
Anonymous
Anonymous
🤷🏼♂️
Alibek
Anonymous
нет
Anonymous
посмотри версию Jinja
Anonymous
# pip list | grep Jinja2
Jinja2 (2.10.1)
Anonymous
если ниже 2.10, то все плохо
Отделение Bereke Bank
Кстати о декларативности. Вот есть у меня таска, которая постоянно возвращает changed 😐 вроде ничего не ломается, но это changed напрягает. Сталкивался кто нибудь?
- name: Create databases and common users
mongodb_user:
database: "{{ db_name }}"
name: "{{ db_user }}"
password: "{{ db_password }}"
login_user: root
login_password: "{{ mongodb_root_password }}"
login_database: admin
roles: 'dbOwner'
Sergey
Sergey
https://docs.ansible.com/ansible/latest/modules/mongodb_user_module.html
Alibek
О спасибо, проверю
Отделение Bereke Bank
state по дефолту present
Отделение Bereke Bank
то есть если юзер создан - оно должно вернуть ok. Как например аналогичный модуль для MySQL
inqfen
Создай issue, если уверен, что все правильно делаешь