Timur
В режиме map syntax все гораздо нагляднее и читаемее
Timur
И можно легко добавлять или комментировать отдельные параметры, не трогая остальной код
Dok
Но код получается километровый
Timur
Зачем?
Часто бывает нужно для отладки какие-то параметры отключать и подключать
Timur
Сможете это легко сделать в таком синтаксисе?
Dok
Если есть массив, где необходимо что-то комментить я делаю в столбик, но не сами св-ва, а переменные. Так как, если дело в свойствах, то стоит зайти лично на машинку и проверить
Timur
И их можно подключать/отключать независимо
Timur
Но в строчном синтаксисе это гибко сделать не получится
Timur
И читаемость никакая
Dok
Уже у всех модулей?
Timur
Это core ansible фича
Timur
Так что - да, у всех модулей
Timur
Нужно переходить на loop
Dok
sed /'with items/loop/ ?
Dok
ок
Timur
И не только with_items, но и все прочие with_
Timur
Always use the map syntax, regardless of how many pairs exist in the map
Egor
ДЕЛАЕМ ПАПКИ!
Dok
Ну, нотифаев пока не выходит
Egor
🔥
Dok
Выходили у apt, там поправил
Timur
Выходили у apt, там поправил
У apt циклы вообще не нужны
Timur
Начиная с версии 2.5 пакетные модули понимают аргументы в виде списка пакетов напрямую
Dok
У apt циклы вообще не нужны
да, в купе с update_cache=yes получается жесть
Timur
Ну, и со строчным синтаксисом крайне сложно будет укладываться в норму линта по длине строки
Timur
Длинные строки в коде - зло
Timur
Так что переходите на нормальный map syntax
Timur
Строчный код нужен лишь для запуска через командную строку
Dok
120 символов в строке - это не много
Dok
Ну правда
Dok
Вот, больше уже перебор
Timur
120 символов в строке - это не много
Со строчным синтаксисом вы и в 120 легко не уложитесь
Timur
Особенно с модулями, где много параметров
Timur
Вроде ec2, к примеру
Dok
Хорошо, что у меня собственные серваки)
Timur
В стандартных модулях тоже встречается много параметров
Timur
В openssl например
Timur
unarchive
Eduard
Товарищи, запилите ревью плиз: https://github.com/egeneralov/gitlab накатка gitlab-a, с интеграцией LDAP-а, omniauth-а и бекапа в do s3 из коробки.
Timur
У вас там при установке пакетов become отсутствует
Timur
become: yes?
Типа того, да. Или вы ее только из-под рута ставите?
Eduard
Типа того, да. Или вы ее только из-под рута ставите?
Я всё из под рута ставлю. Просто весь run.yaml в become: yes
Eduard
(это плохо?)
Timur
Грубо говоря, да :)
Eduard
why?
Eduard
Если 50+% роли требует рута
Eduard
Вай бы от него и не накатить?
Timur
Это открывает дополнительные дырки для всяких инжектов
Eduard
Я же могу на любой угодный мне шаг повесить become, или вы про доп. команды, которые уже прогоняет сам ансибл?
Timur
Это best practices
Eduard
Хорошо, перепишу
Eduard
А ещё что-нибудь интересное нашли?
Timur
Смотрю
Timur
Вот это что за треш? - name: Apply PAT shell: | cat /opt/pat.sql | sudo -u gitlab-psql /opt/gitlab/embedded/bin/psql -h /var/opt/gitlab/postgresql -d gitlabhq_production failed_when: false
Eduard
Есть идеи, как сконфигурить гитлаб в полном автомате, включая токен рута?
Eduard
Блин, я забыл это в опции вынести
Timur
Что с ssl у вас?
Timur
Он никак не настраивается?
Eduard
Он никак не настраивается?
он в принудительном, https://github.com/egeneralov/gitlab/blob/master/templates/gitlab.rb.j2#L11
Timur
А сертификаты?
Timur
Идемпотентность проверяли?
Eduard
А сертификаты?
let's encrypt, стоит кастомизировать?
Eduard
Идемпотентность проверяли?
За исключением костыля с failed_when - имподентна
Timur
let's encrypt, стоит кастомизировать?
Да, если только не роль чисто под себя делаете
Eduard
В todo
Timur
Ну, и прочая обвязка в виде юзеров, интеграции, вебхуков
Timur
Это все вы в роль не включали, как я понял
Timur
За исключением костыля с failed_when - имподентна
У вас нет хендлеров и отслеживания изменения стейта